This product was not featured by Product Hunt yet. It will not be visible on their landing page and won't be ranked (cannot win product of the day regardless of upvotes).
projectmem
Memory + judgment for AI coding agents (local, MIT)
Lightweight memory + judgment layer for AI coding agents. No daemon, no ports — just stdio MCP + plain-text JSONL in your repo. Captures bugs, failed attempts, and fixes inside your project, then warns at git commit before you repeat a known dead-end. 14 tools, ~600 LOC, open source, MIT, 100% local — your AI finally remembers what it tried last week.
For anyone curious how it actually works — I just posted a full video walkthrough. Real project, real bugs, and the pre-commit warning firing live. Happy to answer anything 🙏
A few weeks ago I watched my AI coding agent confidently suggest the same broken CSS fix I'd rejected the previous Friday. Same contain: layout solution. No memory I'd already tried it. Every new chat was Groundhog Day.
I'd been hacking on a fix for months — that incident pushed me to finally ship.
projectmem is a local-first memory + judgment layer for AI coding agents. It captures development events — bugs, failed attempts, fixes, decisions, gotchas — into plain-text files inside your repo. Your AI agent (Claude / Cursor / Antigravity / Codex) reads it through 14 MCP tools. Same agent, same model — but now it actually remembers what worked, what didn't, and why.
Five killer features, all wired by one pjm init:
1. Pre-commit warning — the git hook checks your staged file against memory and warns BEFORE the commit if there's a logged failed approach on that file. The killer feature. Memory + judgment at the moment of action.
2. Cross-project memory — lessons learned in one repo automatically surface in other repos with the same stack (~/.projectmem/global/). A React gotcha you fix in proj-a appears in proj-b. Stack-aware filtering, so a vite project's "next" mention doesn't pollute Next.js gotchas in your actual Next.js repos. 100% local, no cloud sync.
3. Provable ROI (pjm score) — an A+ → F grade backed by concrete numbers: debugging hours saved, tokens prevented, dollars protected. Output as terminal, JSON for CI, or a shields.io badge for your README. The first AI memory tool with metrics a CTO can actually verify.
4. Smart context injection (pjm wrap) — launches your agent with a token-budgeted context block already loaded. Your AI starts experienced, not blank. Works with Claude Code, Cursor, Aider, and clipboard-paste for the rest.
5. Real-time file watcher (pjm watch) — auto-starts on pjm init in interactive terminals. Catches rapid edits to the same file (debugging sessions). Battery-aware, gitignore-aware, opt-out with --no-watch.
Plus an interactive D3 dashboard (pjm visualize) with four views, all auto-generated from your memory — zero extra AI tokens:
• Story Map — every decision, milestone, and failure as an interactive graph. Failed files glow red in the heatmap. • ROI Dashboard — animated counters for tokens prevented and USD protected, capture-source donut, cumulative savings chart. • Architecture Map — toggle between a horizontal dendrogram (hierarchical) and a force-directed graph (relationships, churn). • Event Timeline — chronological events with AUTO / Manual badges and a project-activity bar chart.
The framing I keep landing on: most "AI memory" tools are retrieval engines — they store conversations and surface them when asked. projectmem is a judgment layer — it captures events with explicit outcomes (worked / failed / partial) and uses git context to interrupt you before you waste another afternoon.
What it isn't:
→ Not a chat memory — captures development events, not conversations → Not a retrieval engine — search is exact substring; semantic search is opt-in for v0.2 → Not a daemon — stdio MCP, no port, no process to babysit → Not networked — no cloud, no telemetry, no accounts
100% local. MIT. ~600 LOC Python. 58 unit tests. End-to-end verified across Claude Desktop, Claude Code, Cursor, Antigravity, Codex.
Install:
pip install projectmem
Try it on a real project — the pre-commit hook usually catches its first real failure within the first week. If it doesn't, you've lost 60 seconds of pjm init. If it does, you've recovered an afternoon.
Honest about rough edges — search is substring not semantic, API may shift before 1.0, the precheck heuristics are simple right now. v0.2 roadmap: stale-memory detection (flag, never delete), explicit --supersedes on add_decision, semantic search as opt-in.
Genuinely curious what would make this useful for your stack. What's the worst "I already told you this last week" moment you've had with your AI agent? That's exactly the pattern I optimized this for.
Memory for coding agents makes sense, but the interesting engineering challenge is relevance filtering .A codebase with months of history has way more context than any session can use. The 'judgment' part of the name suggests projectmem has an opinion on what to surface and what to leave out. Would love to understand the mechanism behind that, is it semantic similarity, recency, or something more task-aware?
About projectmem on Product Hunt
“Memory + judgment for AI coding agents (local, MIT)”
projectmem was submitted on Product Hunt and earned 8 upvotes and 7 comments, placing #52 on the daily leaderboard. Lightweight memory + judgment layer for AI coding agents. No daemon, no ports — just stdio MCP + plain-text JSONL in your repo. Captures bugs, failed attempts, and fixes inside your project, then warns at git commit before you repeat a known dead-end. 14 tools, ~600 LOC, open source, MIT, 100% local — your AI finally remembers what it tried last week.
projectmem was featured in Open Source (68.4k followers), Developer Tools (512.8k followers), Artificial Intelligence (469.1k followers) and GitHub (41.2k followers) on Product Hunt. Together, these topics include over 196.7k products, making this a competitive space to launch in.
Who hunted projectmem?
projectmem was hunted by Ripon Chandra Malo. A “hunter” on Product Hunt is the community member who submits a product to the platform — uploading the images, the link, and tagging the makers behind it. Hunters typically write the first comment explaining why a product is worth attention, and their followers are notified the moment they post. Around 79% of featured launches on Product Hunt are self-hunted by their makers, but a well-known hunter still acts as a signal of quality to the rest of the community. See the full all-time top hunters leaderboard to discover who is shaping the Product Hunt ecosystem.
Want to see how projectmem stacked up against nearby launches in real time? Check out the live launch dashboard for upvote speed charts, proximity comparisons, and more analytics.
For anyone curious how it actually works — I just posted a full video walkthrough. Real project, real bugs, and the pre-commit warning firing live. Happy to answer anything 🙏
Watch: https://youtu.be/pELGdXHj_Ls?si=9o0yZ3WL0jP2hyTE
Hi PH 👋
A few weeks ago I watched my AI coding agent confidently suggest the same broken CSS fix I'd rejected the previous Friday. Same contain: layout solution. No memory I'd already tried it. Every new chat was Groundhog Day.
I'd been hacking on a fix for months — that incident pushed me to finally ship.
projectmem is a local-first memory + judgment layer for AI coding agents. It captures development events — bugs, failed attempts, fixes, decisions, gotchas — into plain-text files inside your repo. Your AI agent (Claude / Cursor / Antigravity / Codex) reads it through 14 MCP tools. Same agent, same model — but now it actually remembers what worked, what didn't, and why.
Five killer features, all wired by one pjm init:
1. Pre-commit warning — the git hook checks your staged file against memory and warns BEFORE the commit if there's a logged failed approach on that file. The killer feature. Memory + judgment at the moment of action.
2. Cross-project memory — lessons learned in one repo automatically surface in other repos with the same stack (~/.projectmem/global/). A React gotcha you fix in proj-a appears in proj-b. Stack-aware filtering, so a vite project's "next" mention doesn't pollute Next.js gotchas in your actual Next.js repos. 100% local, no cloud sync.
3. Provable ROI (pjm score) — an A+ → F grade backed by concrete numbers: debugging hours saved, tokens prevented, dollars protected. Output as terminal, JSON for CI, or a shields.io badge for your README. The first AI memory tool with metrics a CTO can actually verify.
4. Smart context injection (pjm wrap) — launches your agent with a token-budgeted context block already loaded. Your AI starts experienced, not blank. Works with Claude Code, Cursor, Aider, and clipboard-paste for the rest.
5. Real-time file watcher (pjm watch) — auto-starts on pjm init in interactive terminals. Catches rapid edits to the same file (debugging sessions). Battery-aware, gitignore-aware, opt-out with --no-watch.
Plus an interactive D3 dashboard (pjm visualize) with four views, all auto-generated from your memory — zero extra AI tokens:
• Story Map — every decision, milestone, and failure as an interactive graph. Failed files glow red in the heatmap.
• ROI Dashboard — animated counters for tokens prevented and USD protected, capture-source donut, cumulative savings chart.
• Architecture Map — toggle between a horizontal dendrogram (hierarchical) and a force-directed graph (relationships, churn).
• Event Timeline — chronological events with AUTO / Manual badges and a project-activity bar chart.
The framing I keep landing on: most "AI memory" tools are retrieval engines — they store conversations and surface them when asked. projectmem is a judgment layer — it captures events with explicit outcomes (worked / failed / partial) and uses git context to interrupt you before you waste another afternoon.
What it isn't:
→ Not a chat memory — captures development events, not conversations
→ Not a retrieval engine — search is exact substring; semantic search is opt-in for v0.2
→ Not a daemon — stdio MCP, no port, no process to babysit
→ Not networked — no cloud, no telemetry, no accounts
100% local. MIT. ~600 LOC Python. 58 unit tests. End-to-end verified across Claude Desktop, Claude Code, Cursor, Antigravity, Codex.
Install:
pip install projectmem
Try it on a real project — the pre-commit hook usually catches its first real failure within the first week. If it doesn't, you've lost 60 seconds of pjm init. If it does, you've recovered an afternoon.
Honest about rough edges — search is substring not semantic, API may shift before 1.0, the precheck heuristics are simple right now. v0.2 roadmap: stale-memory detection (flag, never delete), explicit --supersedes on add_decision, semantic search as opt-in.
Genuinely curious what would make this useful for your stack. What's the worst "I already told you this last week" moment you've had with your AI agent? That's exactly the pattern I optimized this for.
Thanks for taking a look 🙏
— Ripon