Skip to main content

Planner AI

Multi-agent terminal UI: several independent proposer agents inspect the workspace in parallel (each on a model you pick), then a separate consensus agent reconciles their outputs into one plan or answer. Plan mode archives plan.md under .planner-ai/; Ask mode archives a Q&A answer. It plans and answers; it does not execute.

It is both multi-model (Claude, Grok, GPT, Gemini, etc) and multi-agent (one agent per proposer, plus a consensus agent—not a single agent that fans out to several models).

Requirements

  • Python ≥ 3.14
  • uv

Install and run

From this directory (development)

cd planner-ai
uv sync
uv run planner

Or:

uv run python -m planner_ai

Install as a tool (any project)

From PyPI:

uv tool install planner-ai
# or: pip install planner-ai

From this package directory (development):

uv tool install .

Then from any project you want to plan:

cd ~/code/my-app
planner

Both the Bun and Python CLIs expose the same console name planner. If both are on your PATH, whichever comes first wins. Prefer one install at a time, or call the Python app explicitly with uv run --directory /path/to/planner-ai planner.

Auth / tokens

On first run the TUI opens Auth when no real credential is set (set at least one real provider; empty Enter cancels a token editor):

Tokens are saved under the OS user config directory (same path and JSON shape as the TypeScript app):

  • macOS: ~/Library/Application Support/planner-ai/config.json
  • Linux: ~/.config/planner-ai/config.json (or $XDG_CONFIG_HOME/planner-ai)
  • Windows: %APPDATA%\planner-ai\config.json

Never commit tokens or put them in .env. The app does not log credential values.

Providers without a key are omitted; if none are set, mock providers are used. With real keys present, mocks appear only when includeMocks is enabled (press m on Proposers/Consensus).

If a stored key fails auth during a run, the error screen offers r to remove that key from config and re-enter it (or q to quit). To clear all credentials without launching the TUI:

uv run planner --reset-auth
# or, if installed as a tool:
planner --reset-auth

What it does

  • Plans/asks against the folder you launched the CLI in (cwd)
  • Runs several proposer agents in parallel, each on a different model (one failure does not cancel the others)
  • Runs a separate consensus agent (on its own model) to reconcile those proposals
  • Plan mode: archives the consensus plan under .planner-ai/plan-…/ (does not write cwd plan.md)
  • Ask mode: same multi-agent proposer + consensus flow with Q&A prompts; archives under .planner-ai/ask-…/

TUI

Fullscreen alternate-screen UI with tabs:

Tab Shortcut What it does
Plan Ctrl+1 Plan/Ask toggle, enter a goal or question, watch proposals / consensus, browse the result
Proposers Ctrl+2 Pick proposer models (multi) — Claude / Cursor / Codex / Mock
Consensus Ctrl+3 Pick the consensus model (single)
Auth Ctrl+4 Set or clear Claude OAuth / Cursor / Codex API keys
History Ctrl+5 Browse past successful runs archived under .planner-ai/

You can also click the tab labels. On Models: click a row or use ↑↓ / PgUp/PgDn, Space toggle/choose, / filter, m toggle mocks, c continues to Plan.

Startup opens Auth if no real credential is set, else Proposers if there is no saved selection, else Plan.

How it works

  1. You provide a goal (Plan) or question (Ask) on the Plan tab.
  2. Each proposer agent inspects the current working directory (read-only) with its own tools and proposes independently.
  3. A consensus agent inspects the workspace and reconciles those proposals into one plan or answer.
  4. Both modes archive under .planner-ai/ (plan.md or answer.md).
flowchart LR
  Goal[Goal or question] --> Proposers[Proposer agents in parallel]
  Proposers --> Consensus[Consensus agent]
  Consensus --> Plan[plan.md or answer.md archive]

Output

.planner-ai/plan-…/plan.md (Plan mode) is the artifact meant for a later execution step. This tool produces the plan; it does not run it.

Each successful run is archived under .planner-ai/:

.planner-ai/
  plan-2026-08-13T16-48-00/
    anthropic-claude-sonnet-4-5-output.md
    plan.md
  ask-2026-08-13T16-49-00/
    cursor-composer-2.5-output.md
    answer.md
  • Plan runs: plan-{YYYY-MM-DDTHH-MM-SS}/ with per-model *-output.md and consensus plan.md
  • Ask runs: ask-{YYYY-MM-DDTHH-MM-SS}/ with per-model *-output.md and consensus answer.md
  • Collision dirs: plan-{ts}-2, plan-{ts}-3, …
  • History lists both kinds newest-first (by timestamp, not full dirname)

Archives written by the TypeScript app remain readable.

Development

cd planner-ai
uv sync
uv run planner              # TUI (plans cwd)
uv run planner --reset-auth
uv run pytest
uv run ruff check src tests

Plan another folder without installing:

cd ~/code/my-app
uv run --directory /path/to/planner-ai/planner-ai planner

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

planner_ai-0.4.1.tar.gz (36.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

planner_ai-0.4.1-py3-none-any.whl (52.6 kB view details)

Uploaded Python 3

File details

Details for the file planner_ai-0.4.1.tar.gz.

File metadata

  • Download URL: planner_ai-0.4.1.tar.gz
  • Upload date:
  • Size: 36.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for planner_ai-0.4.1.tar.gz
Algorithm Hash digest
SHA256 32d1227e80482b53c6524b3f6c25f2cc5303f6dea56fba4616b526cc9a259ea3
MD5 0ff7178edafa8a1dc456e2f0f2080e3b
BLAKE2b-256 b5e4bc53347d1e5fd68b267ecb8bc5e7d3613cb4e3a39b36e3adfb6aeefd73be

See more details on using hashes here.

File details

Details for the file planner_ai-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: planner_ai-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 52.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for planner_ai-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 903d0abf92f0ff2c04a847efafc04445257e895fa4509784e6d2af1113c7d3e2
MD5 143047a51390bbd30423cd628ebe10ab
BLAKE2b-256 2168268ab0f4fce02c9e0fb34364445ed89716bc8d8cf95cda75f05580c394cc

See more details on using hashes here.

Release history Release notifications | RSS feed

0.6.0

2 files

0.5.0

2 files

This release

0.4.1 This release

2 files

0.4.0

2 files

0.3.0

2 files

0.2.0

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page