Your product backlog, versioned like your code.
Joy keeps epics, stories, tasks, milestones, and dependencies as plain text inside your project. Run it in your terminal, version it with your code, bring AI agents in on your terms.
Built for the terminal.
Ten commands cover 95% of the day
Simple by default, powerful when needed. Complexity lives in flags, not in a deep command tree.
Plain text you own
Every item is a plain text file in your repo, versioned with your code. Readable, portable, yours. No database, no server required to start.
No sense of time, by design
Joy has no built-in clock pressure. Your backlog is institutional memory in your repo, not a burndown chart. Time lives in milestones when you want it, nowhere when you do not.
Confidential where it matters
Put sensitive items in a Crypt zone and they are encrypted inside your repo. Only the members you grant can read them, people or AI.
AI your way.
Control down to the item
You grant each member the capabilities they need, implement, review, test, and each item demands exactly the ones required to move it forward. An AI works only within what you granted. Add a gate, and closing stays with a human.
Jobs with a budget
Hand AI a job with a scope, a cost limit and a time window. A human approves it, the Joyint app or platform runs it, and the job keeps its tokens, cost and duration.
Chat with your team and AI
Project chats live in your repo, encrypted if you choose. Read and send from the terminal, and mention an AI member in the app to have it answer under your delegation.
What no other PM tool does.
AI in product management is not new. AI you can trust, with cost control and data you own, is.
Linear / Jira Cloud
- ✕Cloud-only data storage
- ✕No AI cost tracking
- ✕No budget enforcement
- ✕No configurable AI gates
- ✕No self-hosting
GitHub / GitLab
- ✕Data in a platform database
- ✕No Trust Model for AI
- ✕No status gate enforcement
- ✕No cost tracking
- ✕No offline PM
Joy
- ✓Plain text in your git repo
- ✓AI members with capabilities
- ✓Cryptographic identity
- ✓Append-only event log
- ✓CLI-first, fully offline
- ✓Open source (MIT)
Start in 30 seconds.
Joy lives in your repo. No account, no server, no configuration. Open source, MIT licensed, free forever.
What ships, what comes next.
Joy 0.20.0 is the current release. Everything it contains, by minor version, newest first.
Older
Done, not yet released
- ✓Forge plugins for GitHub, GitLab, Gitea
- ✓Always-encrypted chats
- ✓Chat IDs you can type
- ✓Unread and recent chat filters
Planned Soon
- ○Chat images and attachments
- ○Crypt in the web app
- ○A branch per job
- ○MCP server
- ○Zone key rotation
- ○Markdown and JSON export
Your team, when you are ready.
Joy runs free and local for as long as you like. When a teammate joins, you share one repo and coordinate through Git itself, the same plain-text backlog, the same workflow, no server in between. When you want sync with a web app, AI jobs with budgets, and costs in one place, Joyint adds them on top.