Show HN: CodeYam Memory – comprehensive memory management for Claude Code
We built CodeYam Memory because Claude Code kept making the same mistakes on our codebase. Our claude.md files quickly got stale and maintaining by hand or with Claude wasn’t sufficient.
While digging into this we found that Claude has a native rules system that allowed us to target specific parts of our repo with path matching. This was ideal for our use case but trying to manage these rules by hand was already not working and would be even harder with more granular, targeted rules.
CodeYam Memory uses a background agent to review your coding session transcripts, identifies confusion patterns, and generates targeted rules with proper scoping. You review and approve everything. Dashboard for auditing, a background-agent review process so nothing goes stale as code changes, tracking of everything lives in a simple file in git.
How to Get Started:
Install: npm install -g @codeyam/codeyam-cli@latest
Then from your project root run: codeyam
This will launch a dashboard with further instructions for initializing CodeYam Memory.
Free, runs locally, no login required, and language agnostic. Would love feedback.
More context:
Background blog post: https://open.substack.com/pub/codeyam/p/introducing-the-code...
90 sec demo on our own repo: https://youtu.be/oJ2gTb-lxbE
Demo teaching Claude a real OSS repo (Plane): https://youtu.be/CjOKBwBCcOs
Website:
https://codeyam.com/ Hey HN! I’m Nadia, one of the builders. Happy to answer anything. Some context on what “rules” are for people who haven’t seen them: Claude Code has a built-in system for structured context beyond claude.md files. Rules support path matching (apply context only to specific files/directories), scoped organization, and structured formatting. We have been running CodeYam Memory on our own repo for the past few weeks. The main difference we see is fewer repeated mistakes and less manual context maintenance. It’s still early, but it has meaningfully improved how we work with Claude Code. If discussion gets too long for HN threads, we also have a Discord for questions and feedback: https://discord.gg/eFPUs7CeFw Nadia sounds like an Iranian name. Would you happen to be one? Congratulations on shipping! Thanks! I'm first-generation American (born and grew up here) but parents are originally from Egypt and Germany. They wanted to pick a name that would work globally - or so they've told me. I struggle a lot with Claude's non-existing short term memory. This should help a lot I hope so! Feedback welcome. Awesome! An Alzheimer's remedy for my Claude. Look forward to taking this for a spin. Thanks and hope it helps! Feel free to share any feedback or questions. Cool concept! How exactly does this integrate with Claude Code? Good question! It integrates with Claude Code via hooks and skills. These show up in git so can be deleted or removed easily. In terms of what it changes, it runs some background agents. These can easily be turned on and off via the Dashboard settings as well excited to try this out - our team is building agentic outreach workflows and remembering context from past outreach is key to what we do eager to see if this can help us Thanks! What you're building sounds quite cool as well. If you end up giving it a try, would love to hear any feedback. congratulations on shipping. Do you feel like Claude will ever roll this into their own roadmap? Thanks! I don't have insight into what the Claude team has on their roadmap, but given their recent "memory" release I would hope that we see more from them soon. That said, I think this is still quite valuable and helpful to some extent regardless of what they've built and/or build. Regarding Claude Memory as it exists now (which we use also), from our experience and what we've seen from Claude, it's a much more casual and black box experience. We needed something more aggressive at extracting out anything complex or confusing to ensure that future sessions had better information and we wanted complete visibility into what memories were being created so we could fix them if they weren't great and ensure that they weren't impacting the context window too much so we built out a rather robust dashboard experience to handle that.