Skip to main content

agentplan

Asana for AI agents — a task board that any AI tool can drive.

PyPI version License: MIT PyPI downloads Python versions OpenSSF Scorecard Tests

agentplan is Asana for AI agents — a shared task board that AI tools can use as the source of truth for work.

  • Persistent project + ticket queue
  • Dependency tracking with automatic unblocking
  • Atomic ticket claiming (safe for concurrent agents)
  • Web dashboard for visibility
  • Local-first SQLite storage
  • Built-in plugins for Claude Code and Codex

What AgentPlan Is

AgentPlan is the coordination layer for AI work.

Use it to:

  • create a project for a repo
  • break work into small tickets
  • track dependencies and progress
  • let agents claim the next unblocked task
  • watch the work move in the dashboard

AgentPlan is not the main execution engine. Claude Code, Codex, and other tools do the planning and implementation work. AgentPlan keeps the shared backlog, ticket state, and history in one place.

Start in 3 steps

# 1) Install
pip install agentplan

# On macOS (Homebrew Python):
pipx install agentplan

# 2) Connect your AI tool
agentplan setup claude    # Claude Code
agentplan setup codex     # Codex CLI

# 3) Tell your AI to plan
# In Claude Code: /agentplan:plan
# Or just say: "plan a new project for this repo"

Typical workflow

  1. Open Claude Code, Codex, or another supported AI tool.
  2. Ask it to create an AgentPlan project for the current repo.
  3. Let it break the work into tickets with dependencies.
  4. Have the AI tool work ticket-by-ticket using agentplan next and agentplan claim.
  5. Use the dashboard to monitor progress and inspect ticket state.

Short version: plan in the AI tool, track in AgentPlan, execute through the AI tool's own loop or scheduled workflow.

Quickstart

# Create a project linked to the current repo
agentplan create "Ship v1" --dir .

# Add a few tickets (with model tiers for AI routing)
agentplan ticket add ship-v1 "Set up database" --priority high --model standard
agentplan ticket add ship-v1 "Implement API" --priority high --model standard
agentplan ticket add ship-v1 "Write tests" --priority medium --model light

# Add dependencies where needed
agentplan depend ship-v1 2 --on 1
agentplan depend ship-v1 3 --on 2

# See what's ready to work on
agentplan next ship-v1

# Claim the next unblocked ticket
agentplan claim ship-v1

# Mark it done
agentplan ticket done ship-v1 1

# Check progress
agentplan status ship-v1

Model tiers

Every ticket can carry a --model tier that tells the executing agent how much capability the task needs:

Tier Use when
light Mechanical work — rename files, update configs, fix typos
standard Clear implementation — build from a spec, write tests, refactor
reasoning Architectural judgment — system design, subtle debugging, tradeoff evaluation
auto Unknown complexity — the executing agent decides at runtime (default)
agentplan ticket add my-project "Fix typo in README" --model light
agentplan ticket add my-project "Build auth module" --model standard
agentplan ticket add my-project "Design plugin architecture" --model reasoning

When an agent claims a ticket, the tier is shown in the output. Agents use this to route to the appropriate model or adjust execution depth. The tier is also visible on kanban cards and ticket detail in the dashboard.

AI tool setup

The setup command installs plugins from the pip package, so the AI tool can understand the AgentPlan workflow without cloning anything extra:

# Claude Code — registers as a local marketplace plugin
agentplan setup claude

# Codex CLI — copies the skill into ~/.codex/skills/
agentplan setup codex

After setup, restart the AI tool.

Claude Code flow

  • /agentplan:plan creates a project and tickets from the conversation
  • /agentplan:status shows project progress
  • /agentplan:loop generates the prompt/instructions for Claude's own loop or cron-driven workflow

Codex flow

  • use the installed agentplan skill
  • create a project, add tickets, and work from agentplan next / agentplan claim
  • keep AgentPlan as the shared backlog if Claude and Codex are both working on the same repo

Core CLI commands

Project lifecycle

Command Description
agentplan create Create a project (with optional --ticket flags)
agentplan list List all projects
agentplan status <project> Show project progress and ticket states
agentplan close <project> Close a completed project
agentplan archive <project> Archive a project
agentplan remove <project> Permanently remove a project

Ticket workflow

Command Description
agentplan ticket add <project> "title" Add a ticket (--model light|standard|reasoning|auto)
agentplan ticket list <project> List tickets
agentplan ticket done <project> <num> Mark ticket done
agentplan ticket skip <project> <num> Skip a ticket
agentplan ticket block <project> <num> Block a ticket
agentplan ticket fail <project> <num> Mark ticket failed
agentplan ticket edit <project> <num> Edit ticket details (title, desc, priority, model)
agentplan next <project> Show next unblocked tickets
agentplan claim <project> Atomically claim the next unblocked ticket
agentplan search <query> Search tickets across all projects

Dependencies, logs, and notes

Command Description
agentplan depend <project> <ticket> --on <dep> Add dependency
agentplan undepend <project> <ticket> --on <dep> Remove dependency
agentplan log <project> Add a log entry
agentplan note <project> Set a note on project or ticket
agentplan attach <project> Attach a file or URL
agentplan history <project> <ticket> Show ticket state transitions

Utilities

Command Description
agentplan setup [claude|codex] Install AI tool plugin
agentplan dashboard Launch web dashboard
agentplan completion Print shell completion script

Dashboard

# install with dashboard extras (requires Flask)
pip install "agentplan[dashboard]"

agentplan dashboard
# or run in background:
agentplan dashboard --background

Open http://127.0.0.1:5001 to view projects, ticket board, and activity. Create and edit tickets directly from the UI.

Advanced workflows

AgentPlan also includes advanced and power-user surfaces for orchestration, CI, and other automation-heavy workflows. Those are intentionally de-emphasized in the main UX.

If you are evaluating AgentPlan for the first time, start with:

  • project creation
  • tickets and dependencies
  • next and claim
  • dashboard visibility
  • Claude/Codex plugin flow

Security + docs

  • Security policy: docs/security/security.md
  • Privacy: docs/security/privacy.md
  • Canonical docs alignment baseline: docs/docs-alignment-canonical-story.md

License

MIT

Metadata

Release files for agentplan 0.9.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for agentplan 0.9.0
File Size Uploaded
agentplan-0.9.0.tar.gz 107.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for agentplan 0.9.0
File Interpreter ABI Platform
agentplan-0.9.0-py3-none-any.whl Python 3 none any Details

Total release size: 222.9 kB

Release files / agentplan-0.9.0.tar.gz

Download URL agentplan-0.9.0.tar.gz
Size 107.5 kB
Tags Source
SHA-256 checksum
How to use checksums
577318cca4e0d0c7ea86cd1751e5294e837148416bf34f0b20a22350155da0e0
BLAKE2b-256 checksum
How to use checksums
28f34f33dbed7498815946c6af207c1351a147e2aff0676de4c4a215ef06502f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 12, 2026.

Transparency log

Release files / agentplan-0.9.0-py3-none-any.whl

Download URL agentplan-0.9.0-py3-none-any.whl
Size 115.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
06c1f24e5d5d8722cab5d6e9c959b6bc5fbf8488253ba8166a4b7c7a3b0251b8
BLAKE2b-256 checksum
How to use checksums
25cc25e268a06d407f2e3319cda8c46c4b58993853a9908019a0ceb54d4d2df0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 12, 2026.

Transparency log
Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page