<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Avinash Jetwani</title>
    <description>The latest articles on DEV Community by Avinash Jetwani (@avinash_jetwani_e9c5b4eda).</description>
    <link>https://dev.to/avinash_jetwani_e9c5b4eda</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4143029%2F1e04235f-83b8-4ffe-a168-f42e4a3403ce.jpg</url>
      <title>DEV Community: Avinash Jetwani</title>
      <link>https://dev.to/avinash_jetwani_e9c5b4eda</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/avinash_jetwani_e9c5b4eda"/>
    <language>en</language>
    <item>
      <title>I tested whether Claude Code follows decisions from earlier chats</title>
      <dc:creator>Avinash Jetwani</dc:creator>
      <pubDate>Mon, 05 Oct 2026 14:02:38 +0000</pubDate>
      <link>https://dev.to/avinash_jetwani_e9c5b4eda/i-tested-whether-claude-code-follows-decisions-from-earlier-chats-23b3</link>
      <guid>https://dev.to/avinash_jetwani_e9c5b4eda/i-tested-whether-claude-code-follows-decisions-from-earlier-chats-23b3</guid>
      <description>&lt;p&gt;I got tired of re-explaining my project to Claude Code every session.&lt;/p&gt;

&lt;p&gt;We'd decide something in one chat. "We use Postgres." "Don't touch the public API." "That migration approach failed, and here's why." A few sessions later, I'd be typing it again.&lt;/p&gt;

&lt;p&gt;CLAUDE.md fixes this if you keep it updated. I didn't.&lt;/p&gt;

&lt;p&gt;So I built jevmem.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it does&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You decide something in a Claude Code chat.&lt;/li&gt;
&lt;li&gt;After each message, Jev (TypeSafe AI's decision model) checks if it's worth keeping: a decision, a rule, a bug, an approach that failed.&lt;/li&gt;
&lt;li&gt;If it is, jevmem writes one line to JEVMEM.md in your repo.&lt;/li&gt;
&lt;li&gt;Next session, the lines that matter for your prompt go back to Claude.&lt;/li&gt;
&lt;li&gt;Change your mind, and the old line is crossed out.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Your team gets the same file through git.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Does it work? I measured it.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;24 tasks in 3 small projects, 3 runs each. Real Claude Code sessions with claude-sonnet-5. Each task has a right answer that depends on a project decision saved earlier.&lt;/p&gt;

&lt;p&gt;Three setups: no project memory, jevmem, and the same lines written by hand into CLAUDE.md.&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;&lt;/th&gt;
&lt;th&gt;No memory&lt;/th&gt;
&lt;th&gt;jevmem&lt;/th&gt;
&lt;th&gt;CLAUDE.md&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Followed the project's decision&lt;/td&gt;
&lt;td&gt;28/72&lt;/td&gt;
&lt;td&gt;66/72&lt;/td&gt;
&lt;td&gt;67/72&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Tried a change the project forbids&lt;/td&gt;
&lt;td&gt;10/18&lt;/td&gt;
&lt;td&gt;0/18&lt;/td&gt;
&lt;td&gt;not run&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Repeated an approach that had already failed&lt;/td&gt;
&lt;td&gt;3/15&lt;/td&gt;
&lt;td&gt;0/15&lt;/td&gt;
&lt;td&gt;0/15&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffunbgtzymzxbb9bs6hfi.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Ffunbgtzymzxbb9bs6hfi.png" alt=" " width="800" height="450"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;So jevmem is about as good as a hand-written CLAUDE.md. The difference is that you don't write it.&lt;/p&gt;

&lt;p&gt;Where CLAUDE.md won: a convention nothing in the prompt points to, a rule for every user-facing string. CLAUDE.md got it 3 of 3 times, jevmem 0 of 3. Rules every task must follow still belong in CLAUDE.md.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What to know&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;It needs a TypeSafe API key.&lt;/li&gt;
&lt;li&gt;Message text goes to TypeSafe to be scored. Common secrets are scrubbed first. No telemetry.&lt;/li&gt;
&lt;li&gt;Automatic in Claude Code. Codex and Cursor use the same file over MCP.&lt;/li&gt;
&lt;li&gt;These are my tasks and my projects. The scripts and results are in the repo, so you can check them.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Try it&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Claude app → Plugins → Discover → jevmem → Add&lt;/li&gt;
&lt;li&gt;&lt;code&gt;npm i -g jevmem&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;jevmem key&lt;/code&gt;, then &lt;code&gt;jevmem enable&lt;/code&gt; in your project&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Open source, MIT. Built on TypeSafe AI's Jev.&lt;/p&gt;

&lt;p&gt;Repo: &lt;a href="https://github.com/Avinash-jetwani/jevmem" rel="noopener noreferrer"&gt;https://github.com/Avinash-jetwani/jevmem&lt;/a&gt; · Full results: &lt;a href="https://avinash-jetwani.github.io/jevmem/results/" rel="noopener noreferrer"&gt;https://avinash-jetwani.github.io/jevmem/results/&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I'd love to hear where it saves the wrong thing.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Written with help from Claude. The numbers are from my own test runs, and the results files are in the repo.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>claudecode</category>
      <category>ai</category>
      <category>opensource</category>
      <category>productivity</category>
    </item>
    <item>
      <title>I built a Polymarket idea tester that will kill your strategy (paper-only, no wallet)</title>
      <dc:creator>Avinash Jetwani</dc:creator>
      <pubDate>Fri, 25 Sep 2026 13:51:41 +0000</pubDate>
      <link>https://dev.to/avinash_jetwani_e9c5b4eda/i-built-a-polymarket-idea-tester-that-will-kill-your-strategy-paper-only-no-wallet-3e02</link>
      <guid>https://dev.to/avinash_jetwani_e9c5b4eda/i-built-a-polymarket-idea-tester-that-will-kill-your-strategy-paper-only-no-wallet-3e02</guid>
      <description>&lt;p&gt;I keep seeing the same ask: how do I test a Polymarket idea before I put money on it?&lt;/p&gt;

&lt;p&gt;Most answers point at one of three things. A live simulator with fake cash on live odds. A Python backtest notebook. Or a dashboard that never quite says stop.&lt;/p&gt;

&lt;p&gt;I wanted a fourth option: type the idea in English, run it on resolved history, and get a verdict I could read without translating a log. Keep. Kill. No edge. Inconclusive.&lt;/p&gt;

&lt;p&gt;That product is OddSage — &lt;a href="https://oddsage.com" rel="noopener noreferrer"&gt;https://oddsage.com&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it is&lt;/strong&gt;&lt;br&gt;
OddSage is paper-only Polymarket research. No live trading. No wallet. No copy-trade execution.&lt;/p&gt;

&lt;p&gt;Two ways in:&lt;/p&gt;

&lt;p&gt;Paste a Polymarket URL. You get a Market Dossier — a research page for that market, not an order ticket.&lt;br&gt;
Type the idea in English. The builder drafts a strategy. You read the draft. Save and run.&lt;br&gt;
The loop is: English idea → draft → Save &amp;amp; run → verdict.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What the verdicts mean&lt;/strong&gt;&lt;br&gt;
Keep: the paper test left something worth holding. Still paper. Not a live order.&lt;/p&gt;

&lt;p&gt;Kill: it did not survive.&lt;/p&gt;

&lt;p&gt;No edge: it ran and still looked like noise.&lt;/p&gt;

&lt;p&gt;Inconclusive: not enough evidence. That is a stop, not a soft keep.&lt;/p&gt;

&lt;p&gt;A tool that only ever says “interesting” is a mood board. I wanted one that would kill an idea.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What it is not&lt;/strong&gt;&lt;br&gt;
It is not a live virtual wallet. If you want to practice clicking on live odds with play money, use a simulator. That is a different job.&lt;/p&gt;

&lt;p&gt;It is not a Python SDK. If your edge already lives in a notebook with L2 replay, keep that workflow. OddSage is for people who have a sentence and want a keep/kill without opening a repo.&lt;/p&gt;

&lt;p&gt;It will not copy another trader onto your book. It will not place the trade if the verdict is keep.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;A public kill&lt;/strong&gt;&lt;br&gt;
I am not going to invent a win rate for a launch post. Here is a finished public paper-test that did not get a pass:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://oddsage.com/strategy/259bc179-04dc-4e6d-816d-59d8f3cb52cc" rel="noopener noreferrer"&gt;https://oddsage.com/strategy/259bc179-04dc-4e6d-816d-59d8f3cb52cc&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;If a tester never shows a kill, it is selling hope.&lt;/p&gt;

&lt;p&gt;Why I am posting this on DEV.to&lt;br&gt;
Because the SERP for “polymarket strategy tester” and “test polymarket strategy” is full of Python tutorials and sim waitlists, and the category still needs a clear paper-only option that admits failure.&lt;/p&gt;

&lt;p&gt;Tagline I keep using: Test your Polymarket idea before you risk real money.&lt;/p&gt;

&lt;p&gt;Product pages if you want the job by name:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://oddsage.com/polymarket-strategy-tester" rel="noopener noreferrer"&gt;https://oddsage.com/polymarket-strategy-tester&lt;/a&gt;&lt;br&gt;
&lt;a href="https://oddsage.com/test-polymarket-strategy" rel="noopener noreferrer"&gt;https://oddsage.com/test-polymarket-strategy&lt;/a&gt;&lt;br&gt;
&lt;a href="https://oddsage.com/polymarket-paper-trading" rel="noopener noreferrer"&gt;https://oddsage.com/polymarket-paper-trading&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I’m Avinash Jetwani. On X: @jetwaniavinash&lt;/p&gt;

&lt;p&gt;If it dies, it dies on paper.&lt;/p&gt;

</description>
      <category>polymarket</category>
      <category>predictionmarkets</category>
      <category>indiehackers</category>
      <category>webdev</category>
    </item>
  </channel>
</rss>
