Skip to content

About

One memory file, synced to every AI coding tool's context file — CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules.

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Mythicator

License Node Version Version

One memory file, synced to every AI coding tool's context file — CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules.

Mythicator is a per-repo memory system for AI coding agents. Its CLI command is agentmem. It stores decisions, rejected approaches, bugs, and conventions in a single canonical JSON file, then syncs that memory into the native context file each tool already reads — so Claude Code, Codex, Gemini CLI, and Cursor stay on the same page about a codebase without you repeating yourself to each one.

Why

Every AI coding tool has its own context file convention. Explain a decision to Claude Code and it lives in CLAUDE.md. Explain the same decision to Codex and you're repeating it, or it's simply not there. agentmem keeps one source of truth and pushes it out to all of them.

Install

Clone and link locally:

git clone https://github.com/Jeffrin-dev/Mythicator.git
cd Mythicator
npm install
npm run build
npm link

npm link makes the agentmem command available globally on your machine. If you'd rather not link globally, run it directly with node dist/cli.js <command> from inside the repo.

Usage

Initialize

agentmem init

Creates .agent-memory/memory.json in the current directory. Commit this file — memory travels with the repo.

Add a memory entry

agentmem add "Chose Postgres over SQLite" --type decision --reason "needs concurrent writes from multiple workers" --tags db,architecture

--type is one of: decision, rejected, bug, convention, note. --reason is optional. --tags is a comma-separated list, optional.

List entries

agentmem list
agentmem list --type decision
agentmem list --tag architecture

Remove an entry

agentmem rm m0001

Sync to AI tool context files

agentmem sync

Writes/updates CLAUDE.md, AGENTS.md, GEMINI.md, and .cursorrules. Generated content is wrapped in markers:

<!-- AGENT-MEMORY:START (auto-generated by agentmem, do not edit) -->
...
<!-- AGENT-MEMORY:END -->

Anything you've written outside these markers in those files is left untouched. Running sync repeatedly is safe — it only replaces what's between the markers.

Print context without writing files

agentmem context

Prints the same generated block to stdout, for piping into an ad-hoc prompt.

How memory is stored

.agent-memory/memory.json:

{
  "version": 1,
  "repo": "mythicator",
  "nextId": 3,
  "entries": [
    {
      "id": "m0001",
      "date": "2026-08-04T10:00:00.000Z",
      "type": "decision",
      "text": "Chose Postgres over SQLite",
      "reason": "needs concurrent writes from multiple workers",
      "tags": ["db", "architecture"]
    }
  ]
}

Ids are assigned from a persistent counter and are never reused, even after an entry is removed.

Requirements

  • Node.js 18 or later
  • No runtime dependencies beyond commander

Contributing

See CONTRIBUTING.md.

License

MIT — see LICENSE.

Build For DEVS

About

One memory file, synced to every AI coding tool's context file — CLAUDE.md, AGENTS.md, GEMINI.md, .cursorrules.

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages