Ajiya sets up a task manager in your repo, so project context carries across agent sessions. Agents use CLI commands to update phases, tickets and dependencies, then resume from the same recorded state next time. You review the work in a local dashboard with a queue, board, plan and launch status.
$ ajiya next LP-0007 api Add course catalog endpoint launch · unblocks 2 $ ajiya ticket start LP-0007 ■ LP-0007 in progress $ git commit -m "Add course catalog endpoint" \ -m "Ajiya: LP-0007" ✓ 1 ticket referenced $ ajiya ticket done LP-0007 --test ✓ Done · 4f2a91c · tests passed
# Course catalog · phase Goal: learners can find and enroll in a course | ID | App | Ticket | Depends | Status | |---------|-----|----------------------|---------|-----------| | LP-0007 | api | Course catalog API | none | ■ Done | | LP-0008 | api | Learner enrollment | LP-0007 | ■ Started | | LP-0009 | web | Course player | LP-0008 | ■ Pending |
Ajiya links completed tickets to commits. You can also require tests to pass before a ticket closes.
Chat context can disappear when a session ends. Ajiya keeps the plan, task status and dependencies in the repo, ready for the next session.
A ticket list does not show what blocks launch. Ajiya maps dependencies and highlights work that needs a person.
The CLI sets up the manager in your repo and installs the agent instructions and commit hooks.
Agents add phases and tickets, record dependencies, start work and close tickets with CLI commands. The manager stores that state in the repo, so another session can continue from it.
The local dashboard shows the same work as an overview, ready queue, board, dependency map, plan and ticket list.
Each commit names one to three tickets. A ticket closes against a commit. You can also require tests to pass.
A project is a repo and its apps. Phases group features. Tickets give agents a defined task, its dependencies and a done condition. The CLI and dashboard use the same repo data, so work continues across sessions.
learning-platform/ ├── ajiya.toml config · apps · launch ├── ajiya/ │ ├── accounts.md phase │ ├── course-catalog.md phase │ ├── production.md phase · launch target │ └── PROGRESS.md generated ├── apps/api/ app └── apps/web/ app
ajiya initSets up the manager, finds apps and plans, installs hooks and the agent kitajiya app addAdds an app or shared library from its folderajiya phase addCreates a phase and records its goalajiya ticket addAssigns an ID, app, dependencies and a done conditionajiya ticket doneCloses a ticket with commit evidence; can run tests firstajiya nextLists work that can start, with launch work firstajiya launch setMarks a target and its dependencies as launch workajiya checkChecks dependency loops, evidence, files and commitsajiya serveServes the task manager dashboard on 127.0.0.1ajiya importImports work from TODO files, GitHub issues or an older WBSA ticket closes only against a commit that names it. Add --test to require passing tests.
A Git hook checks each commit. CI checks again if the hook did not run. Merges, reverts and chores are exempt.
The CLI writes the task files in one format. ajiya check reports manual edits that do not match it.
Set one launch target. Its dependencies also count as launch work. For example, if Go-live depends on Bookings, and Bookings depends on Accounts, all three are in scope.
Ajiya needs no account or model calls. Your existing agent does the planning, and the dashboard runs locally.
Ajiya works with Claude Code and Codex, and with Python, PHP, Go or JavaScript projects.
$ ajiya init Project name? Learning Platform Ticket prefix? LP ✓ ajiya.toml, hooks, agent kit
$ ajiya init Apps: api (composer.json) web (package.json) Plans: TODO.md · GitHub issues ✓ imported as draft tickets
The dashboard has views for Overview, Next up, Board, Dependencies, Plan, Tickets, Areas and Checks. Search the plan, filter launch work and find tasks that need a person. This mock LMS project shows how Ajiya can organize a real build.
A short checklist helped us build the core commands. We turned it into Ajiya tickets, then deleted it. Now we plan, commit and close every change through Ajiya. Version 0.1 is ready when its dashboard shows all launch tickets as done. If Ajiya cannot track its own build, it is not ready for your project.