Skip to main content

exocortex-project

A personal project-management layer on a self-hosted fork of Plane Community Edition, for a solo developer who works with Claude Code and with OpenAI Codex run by Symphony. The loop:

capture ──► clarify ──► dispatch ──► Human Review
 note        capture     next         review

You say "note: ..." and the agent records your words verbatim. A clarify pass turns notes and ideas into well-specified work items with parent and blocked-by links. The ready queue picks what can start now, and the item is worked in your session or handed to Codex through Symphony. Finished work waits in Human Review with its patch until you approve it or send it back with a comment. The agent does all of this through MCP tools. You use the Plane web app and talk to the agent.

Status (0.1.0): setup --bare and the full loop with a stand-in Codex have been tested. plane up --docker / setup --docker and Symphony runs with real Codex are not yet verified.

What the wheel contains

  • Client core (exocortex_project.core): a client for Plane's /api/v1/, the ready rule over blocked_by, context packs for one item, capture with parent and blocker links, and the Human Review queue with per-file patch stats.
  • MCP server exocortex-project-mcp (stdio): every everyday operation as a tool, the procedures as prompts, the state vocabulary and the working rules as server instructions.
  • One-time commands exocortex-project: guide, version, setup, init, doctor, plane up|down|status|bootstrap|backup|restore, symphony workflow|check.
  • The Plane fork server: the Django API with Celery worker and beat, its migrations, a bootstrap_exocortex management command, and the prebuilt web app, served by the API on the same port (no Node, no proxy). The public boards, God Mode admin and realtime servers are not included.
  • Offline docs: SETUP.md, USAGE.md and ARCHITECTURE.md.

Not bundled: PostgreSQL, Redis or Valkey, and MinIO or S3 (for --bare), or Docker (for --docker); Symphony with a Plane tracker adapter, and the Codex CLI (optional); Claude Code or another MCP client.

Install and first run

Python 3.11 or newer.

pip install exocortex-project        # or: pipx install exocortex-project

Then, in the repository the work is about, tell your agent:

exocortex-project is installed, set it up

The agent reads the setup checklist with exocortex-project guide and runs it. To do it yourself:

exocortex-project guide                                    # the full SETUP.md
exocortex-project setup --bare --workspace <slug> --project <IDENT>
# or: exocortex-project setup --docker --workspace <slug> --project <IDENT>

setup runs guide, plane up, plane bootstrap, init and doctor in order and stops at the first failure, saying how to fix it. Every step is safe to repeat. Afterwards, log in to the web app with the admin account that plane bootstrap printed, change its password, and approve the exocortex-project MCP server when your client asks.

MCP tools and prompts

17 tools:

tool does
note record the user's words verbatim as one item in 待整理 (the inbox for quick notes)
capture create or update well-specified items with parent and blocked-by links, in one call
ready the ready queue: unstarted, no open blocker, best first
prompt the context pack for one item (north star, brief, parent, blockers, progress)
show one item in full
list a project's items, filtered by state or name
blocked open items still waiting on an open blocker
start move an item to In Progress and name its branch
set change state, priority, title, dates, parent or assignee, with a dry run
link add blocked-by, blocks, parent or duplicate links
comment add a Markdown comment
history an item's activity, oldest first
review what waits in Human Review, longest wait first, with patch stats
approve move a reviewed item to Merging or Done
rework comment what to change, then move the item to Rework
states_init give a project the nine states, adding only the missing ones
plane_api one call to any other Plane /api/v1/ endpoint

4 prompts: note, capture (also the clarify pass over 待整理), next and review. In Claude Code they appear as /mcp__exocortex-project__<name>. For clients without MCP prompts, init writes the same procedures as the skills pm-note, pm-capture, pm-next and pm-review.

Configuration

what where
Plane URL, workspace, assignee, review state, notify states .exocortex-project.toml in the repository, else ~/.config/exocortex-project/config.toml; PLANE_* environment variables override both
API key PLANE_API_KEY, else ~/.config/exocortex-project/token (mode 600, written by plane bootstrap)
MCP registration .mcp.json in the repository and ~/.codex/config.toml (written by init)
default project the exocortex-project section of the repository's AGENTS.md (written by init)
Plane runtime (.env, logs) ~/.local/share/exocortex-project/plane/ (--runtime-dir to change)
Symphony workflow WORKFLOW.md, written by exocortex-project symphony workflow --project <IDENT>

The package stores no data of its own. Work items live in Plane's Postgres and storage bucket, and plane backup / plane restore cover both.

More

exocortex-project guide prints the full SETUP.md: prerequisites, every step with its expected output, all doctor checks, the optional Symphony setup, and upgrades, backups and rollback. USAGE.md and ARCHITECTURE.md are next to it in the installed package.

License

AGPL-3.0-only, like the Plane code it includes. This project is not affiliated with or endorsed by Plane Software, Inc.

Metadata

Release files for exocortex-project 0.1.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 exocortex-project 0.1.0
File Size Uploaded
exocortex_project-0.1.0.tar.gz 19.7 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for exocortex-project 0.1.0
File Interpreter ABI Platform
exocortex_project-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 40.3 MB

Release files / exocortex_project-0.1.0.tar.gz

Download URL exocortex_project-0.1.0.tar.gz
Size 19.7 MB
Tags Source
SHA-256 checksum
How to use checksums
92e5a8c7ab86215542f09d4c35c3b7d62f7e5d528c50d042914c37f9802b0bdc
BLAKE2b-256 checksum
How to use checksums
459410427030c4e4782f38e7be07444c73eae40ea15fd3b4d0fc134b3ca121e5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / exocortex_project-0.1.0-py3-none-any.whl

Download URL exocortex_project-0.1.0-py3-none-any.whl
Size 20.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
79a8908d176346b55951341667569713f21dfcf946005709cc719562bea94f4b
BLAKE2b-256 checksum
How to use checksums
ed9dbed93829e4efecce2a4ed569e6c905ad7f22cd46cc2f660c627eb258c657
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.22 {"installer":{"name":"uv","version":"0.9.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.3.0

2 release files

0.2.0

2 release files

0.1.1

2 release files

This release

0.1.0 This release

2 release files

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