by Optim-Agent
Human-in-the-loop planning plugin for Claude and Codex: turn ideas into reviewed Markdown plans, record decisions, enforce explicit execution gates, and provide tested controller primitives for safer agent workflows.
# Add to your Claude Code skills
git clone https://github.com/Optim-Agent/optim-plansLast scanned: 7/28/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-07-28T06:26:07.321Z",
"npmAuditRan": true,
"pipAuditRan": true,
"promptInjectionRan": true
}optim-plans is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by Optim-Agent. Human-in-the-loop planning plugin for Claude and Codex: turn ideas into reviewed Markdown plans, record decisions, enforce explicit execution gates, and provide tested controller primitives for safer agent workflows. It has 589 GitHub stars.
Yes. optim-plans passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/Optim-Agent/optim-plans" and add it to your Claude Code skills directory (see the Installation section above).
optim-plans is primarily written in Python. It is open-source under Optim-Agent on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh optim-plans against similar tools.
No comments yet. Be the first to share your thoughts!
optim-plans turns a rough repository-change request into a traceable Markdown plan, refines that plan with reviewer or criticizer passes, and then hands an accepted plan back to the current agent session for implementation. Version 0.3.0 is intentionally smaller: it removes the separate controller execution engine and keeps the product focused on planning quality.
Repository: https://github.com/Optim-Agent/optim-plans
The public plugin surface is exactly five skills:
| Skill | Use it when |
|---|---|
create-a-small-plan |
A small scoped repo change needs 1 to 3 planning questions and one refinement pass. |
create-a-plan |
A broad or risky change needs 5 to 10 planning questions, research, and bounded refinement. |
create-a-big-plan |
A high-risk or open-ended effort needs at least 10 planning questions and refinement until convergence. |
diagnose-before-plan |
A bug, CI failure, regression, incident, RCA, or broken behavior needs diagnosis before planning. |
reference-before-plan |
Downloaded projects, articles, papers, or docs must be analyzed before planning choices are safe. |
The old aggregate and alias skills were removed. Invoke the skill that matches the depth of the planning job.
Other second-last, Auto-complete last.PLAN_v1.md.PLAN_vN.md artifacts with stable IDs and a ## Verifier Checklist.Reviewer or Criticizer.Auto-complete:
Execute this plan now with normal Prime Agent tools, Stop after planning, or Other.There is no separate manifest, run worktree, delegated implementation role, verification role, retry loop, checkpoint lifecycle, or terminal finish gate in 0.3.0.
Machine state stays outside the monitored worktree in the Git common directory:
.git/optim-plans/
config.json
worktrees/<worktree-id>/active.json
runs/<run-id>/
run.json
events.jsonl
refs.jsonl
controller.lock
Public artifacts stay in the repository:
docs/optim-plans/YYYY-MM-DD-topic/
DECISIONS.md
PROBLEM_ANALYSIS.md
REF_ANALYSIS.md
PLAN_v1.md
PLAN_v1_reviewer_comments.md
PLAN_v2.md
Only the files that apply to the selected workflow are created.
The controller CLI is intentionally small:
python3 scripts/optim_plans.py init --repo <repo> --topic "<topic>" --plan-level create-a-plan --request-text "<original request>"
python3 scripts/optim_plans.py ask --repo <repo> --prompt "Choose refinement"
python3 scripts/optim_plans.py answer --repo <repo> --nonce <nonce> --choice <option-id>
python3 scripts/optim_plans.py status --repo <repo>
python3 scripts/optim_plans.py worker-config --repo <repo> --role reviewer --cwd <repo>
python3 scripts/optim_plans.py worker-config --repo <repo> --role criticizer --cwd <repo>
python3 scripts/optim_plans.py register-plan --repo <repo> --path docs/optim-plans/<run>/PLAN_v1.md --version 1
python3 scripts/optim_plans.py record-reference --repo <repo> --ref-id r1 --title "Reference" --url "https://example.invalid" --kind project --local-path refs/r1 --retrieval-method clone
python3 scripts/optim_plans.py record-reference-analysis --repo <repo> --ref-id r1 --analysis-artifact docs/optim-plans/<run>/REF_ANALYSIS.md --coverage manual
python3 scripts/optim_plans.py record-reference-waiver --repo <repo> --ref-id r1 --waiver-type parser-unavailable --reason "manual read is sufficient" --answer-nonce <nonce>
worker-config is restricted to reviewer and criticizer roles. Same-platform CLI adapter support is retained for those read-only roles, including Codex provider/profile handling.
reference-before-plan records reference metadata separately from planning decisions. A reference idea is not eligible for PLAN_v1.md until the source metadata, analysis artifact, and adoption-question answers are recorded.
The reference flow expects at least three credible references. If fewer exist, the planner must block, narrow scope with the user, or record an explicit user waiver. Auto-complete cannot grant that waiver.
From this repository root:
claude plugin validate --strict .
claude plugin marketplace add ./ --scope user
claude plugin install optim-plans@optim-plans-dev --scope user
If an installed local development plugin looks stale, refresh it and restart Claude Code:
claude plugin marketplace update optim-plans-dev
claude plugin update optim-plans@optim-plans-dev --scope user
claude plugin list
claude plugin details optim-plans@optim-plans-dev
Restart is required for updated plugin code to apply. .git/optim-plans/config.json is not an install artifact; it is created per target repo when language, reviewer, or criticizer settings need persisted config.
From this repository root:
codex plugin marketplace add .
codex plugin add optim-plans@optim-plans-dev
Then invoke one of the public skills, for example:
$create-a-plan Turn this idea into a reviewed plan before implementation.
run.json is immutable after initialization. events.jsonl is append-only, strictly sequenced, and replayed to derive state. active.json is a rebuildable index for the current worktree.
The supported boundary is planning discipline, durable state, and explicit handoff. Hooks are defense in depth for scoped read-only refinement sessions; they inject context and deny out-of-scope writes or reserved Git state changes, but they are not a sandbox and they do not continue a run.
Auto-complete may answer planning and refinement questions. It must not approve the native handoff, destructive cleanup, tool installation waivers, deployment, merge, push, credential use, or any external state change.
.codex-plugin/plugin.json Codex plugin manifest
.claude-plugin/plugin.json Claude plugin manifest
.agents/plugins/marketplace.json Local Codex marketplace entry
skills/create-a-small-plan/ Small planning skill
skills/create-a-plan/ Standard planning skill
skills/create-a-big-plan/ Large planning skill
skills/diagnose-before-plan/ Diagnosis before planning
skills/reference-before-plan/ Reference research before planning
skills/_shared/references/ Shared planning contracts and templates
scripts/optim_plans.py Controller CLI
scripts/optim_plans_core.py State, questions, references, artifacts
scripts/agent_adapters.py Claude/Codex read-only refinement adapters
hooks/ Hook configs and dispatcher
tests/ Standard-library unittest suite
evals/ Skill pressure cases
Run the repo-native proof:
python3 -m py_compile scripts/*.py hooks/*.py
python3 scripts/validate_structure.py
python3 -m unittest discover -s tests -p 'test_*.py' -v
git diff --check
CI runs Python compilation, structure validation, and the unittest suite on Linux and macOS.
Small fixes can go straight to PR. For larger behavior changes, create or update a docs/optim-plans/ plan artifact first so the intent is reviewable before code changes.
Development rules:
.git/optim-plans and docs/optim-plans runtime paths;Auto-complete across native handoff or external state changes;CHANGELOG.md for user-visible behavior changes.Thanks to chaseai-yt/grill-me-codex, mattpocock/skills, and leo-lilinxiao/codex-autoresearch for related ideas and prior art.
MIT. See LICENSE.