Git-Native Issues as Agent Working Memory

repotoolaicligomarkdowngraphqltuiagent-loopsmemoryproject-management

Beans' git-backed Markdown issues and agent priming pattern map to joelclaw's need for repo-local task state that coding agents can query without leaving the worktree.

Beans puts an issue tracker in the repo instead of off in some separate project-management tab nobody wants to babysit. Tasks, bugs, features, archived work, and roadmap data live as plain Markdown files in a .beans directory, with a Go CLI and a built-in terminal UI on top.

The clever bit is that Beans is explicitly designed for coding agents, not just humans. beans prime emits instructions for the agent, and the built-in GraphQL query engine lets the agent ask for narrow slices of project task context instead of shoveling the whole tracker into the prompt like a dumb context buffet.

That maps cleanly to joelclaw and the whole repo-local memory problem. We already care about work that can be resumed, reviewed, archived, and queried by agents. Beans is a nice example of project memory as versioned files plus an agent-readable interface, which is a much better shape than “please remember this Jira board exists” bullshit.

It’s early, and the README is blunt about schema churn. That’s fine. The pattern is the thing: put coordination state where the code lives, make it human-editable, then give agents a tight query surface and a startup ritual.

Key Ideas

  • Beans stores issues, tasks, bugs, features, archived work, and roadmap data inside the repository as plain Markdown files under .beans.
  • The beans CLI supports creating, listing, viewing, updating, archiving, browsing in a built-in TUI, and generating a Markdown roadmap.
  • beans prime is the important agent hook: it emits project-specific instructions that can be wired into AGENTS.md, Claude Code, or OpenCode.
  • The built-in GraphQL query engine gives coding agents scoped access to task context, which helps avoid token-wasting full-dump prompts.
  • Archived beans act as project memory, giving agents a queryable record of completed work and past decisions inside the same Git history as the code.
  • The stability warning matters: Beans is under heavy development, and schema changes may require migration.