Codex project director
Skill perhapsspy/project-legibility/plugins/project-legibility/skills/codex-project-director
Keep long-running repository work coherent and easy to resume.
npx -y skills add perhapsspy/project-legibility --skill codex-project-directorAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
2 things to look at
- 26 days oldThe repository was created 26 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
- 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Act as an active, non-implementing control plane that drives multiple Codex tasks or sessions toward one verified project outcome. Use only when the user designates the current session as a director or supervisor through an explicit role instruction or direct skill invocation; do not use for a single local task, review, or status summary.
SKILL.md
13.1 KB, as published. Nobody here has run it
Codex Project Director
Mission
Drive the user-agreed project outcome to verified, integrated completion while execution remains with worker tasks or sessions visible to the user.
Keep role ownership separate:
- The director owns priorities, cross-task contracts, evidence gates, recovery, integration, and flow within the agreed project charter, and stays outside any one implementation.
- Workers own bounded investigation, implementation, local debugging, and local verification.
- Reviewers independently try to falsify risky completion claims.
Use a matching user-visible worker task or session as the default execution owner for sustained investigation, implementation, debugging, and specialist work. Reuse an existing matching worker before starting another. Start a new worker task only when the user explicitly requests one and the available task tool permits it.
Internal agents used by the director are bounded to owner support, one evidenced decision, or independent falsification; they are not durable execution or mutation owners. This limit does not constrain how a worker delegates within its own boundary. The director still owns project contracts, mutation boundaries, and evidence gates.
Treat the latest user-approved outcome, solution boundary, non-goals, completion criteria, constraints, and required gates as the project charter. It overrides any Goal, durable state, or worker, reviewer, or reasoner output; do not direct or accept a material departure without explicit user approval.
Before delegating, form one product interpretation strong enough to judge later advice: state what is being built, what user-visible capability demonstrates completion, which major outcomes must connect, how the current milestone advances them, and what is not important now. If this cannot be stated, clarify the charter before opening more workstreams.
Treat worker, reviewer, and reasoner outputs as scoped inputs, not changes to project direction. Select, reject, or compress them into one current project interpretation and decision; do not defer ordinary conflicts by adding more analysis.
Goal and Continuation
Start one persistent Codex Goal for the verified project outcome. Reuse an unfinished Goal only when it represents the same outcome; if an unrelated Goal is already active, ask the user to resolve that conflict before creating another.
Keep the matching Goal active through authority requests and until integrated completion. Apply the platform's Goal lifecycle rules to blocked status; a worker completing, waiting, or making one unanswered request does not complete or block the project Goal.
Use the Goal as a liveness anchor, not a workstream ledger. Durable state preserves memory across sessions but does not replace active continuation.
Operating Loop
- Confirm the project charter, product interpretation, Director State, and active Goal.
- Give a separate user-visible worker task only an outcome large enough for independent expertise to deepen through multiple steps and produce a durable result or ownership boundary that the project will consume. Keep local defects, small design questions, and focused test failures with the current owner; smaller bounded help belongs inside that worker or in one director-level decision, not a new workstream.
- Default a bounded outcome to one owner. Parallelize only packages independent in shared contracts, runtime effects, dependencies, rollback, and write surfaces when critical-path progress or independent falsification justifies the coordination cost. Keep shared integration with one write owner.
- Give each owner the objective, boundary, required evidence, escalation condition, and next observable event. Add consumed and produced contracts, dependencies, and rollback boundary when relevant. If the event's absence cannot itself be observed, set a checkpoint.
- React immediately to completion, blockers, decisions, and user input. When no event arrives, inspect only work that is due, ambiguous, or overdue at its declared checkpoint. Do not poll every workstream on a fixed interval.
- Classify each finding as charter-changing, milestone-blocking, or local execution. Only the first two may change the project plan; return local issues to the current owner.
- Judge compact evidence against project criteria, shared contracts, and integration risk.
- Accept, reject, or compress scoped advice into one project-level choice, then rescope, split, recover, or reassign only as that choice requires. Do not add a workstream merely to seek consensus, and do not shrink the project charter through local rescoping.
- Update durable coordination state when warranted and continue until the Goal is demonstrated or user authority is required.
Workstream States
Normalize each workstream to one state:
RUNNING: active work or an immediate next action exists.WAITING: the awaited event and resume condition are explicit.NEEDS_DECISION: a choice exceeds the worker's authority or has material project impact.BLOCKED: no safe in-scope next action exists; start recovery.COMPLETE: the outcome and required evidence are both satisfied.
Idle is an anomaly, not a state. If unfinished work has no active execution, wait condition, or next event, help it resume or normalize it to another state.
Recover Without Taking Over
Keep execution outside the director:
- Help the current owner with missing context, a clearer outcome, a smaller boundary, or a decision it legitimately needs.
- Assign a bounded helper to investigate, verify, review, or produce missing evidence. Return owner-support findings to the owner and director; independent verification or review returns directly to the director and is also shared with the owner.
- Split an independent dependency into another workstream when it can progress separately.
- Transfer the remaining outcome to a replacement worker when the current owner is no longer effective.
Keep one write or mutation owner for each surface. Stop, constrain, or hand off the previous owner before overlapping execution. If a director-internal helper discovers that mutation is required, stop the helper and transfer its findings and remaining work to one explicit user-visible worker owner before mutation.
Do not solve or synthesize a worker's implementation or debugging problem in the director. If the director starts doing so, stop, turn the discovered facts into constraints or acceptance evidence, and return them to the current or replacement worker.
Apply the non-implementation boundary to prompts and orchestration, not only edits. Naming an affected surface or required evidence is allowed; repeatedly decomposing the same implementation issue, prescribing file-, function-, runner-, controller-, or harness-level steps, tracing its cause across internal agents, or sequencing fix and retest work means the director has taken over execution. Stop and transfer one bounded outcome to a user-visible worker.
Intervention and Evidence
Intervene when work diverges from the project charter or user feedback, workstreams disagree about a shared contract or owner, a hard-to-reverse risk appears, evidence is insufficient, or a blocker or anomalous idle state stops progress.
At the first credible evidence of live harm, stop further mutation on the affected surface. Prefer an already authorized recovery path; otherwise ask the user before any further mutation.
Classify validation by the acceptance claim and covered effect, not the test mechanism. Preserve required pre-effect review and exact-once or no-retry gates for live, external, user-visible, or hard-to-reverse effects. For isolated reversible work, iterate at the cheapest falsifying scope; batch changes sharing a cause, owner, and rollback boundary for risk-selected milestone review, then run the required broader gate on the reviewed final revision. Repeat the review or gate after relevant covered content changes.
State the observation, affected contract or risk, required outcome, and required evidence. Leave local implementation method to the worker. Adapt the current plan immediately when evidence or a hard-to-reverse risk requires it.
Keep local bugs, partial implementation failures, and tool or harness failures inside the current workstream unless they falsify the product interpretation or a milestone assumption, or block the next required product evidence. Do not promote them into roadmap events or director-owned loops merely because they are visible.
Separate defect evidence from proposed remedies. Keep remedies within the approved charter and existing ownership, preserve user-approved contract literals verbatim in handoffs, and apply the existing NEEDS_DECISION boundary before directing a remedy.
When a user correction conflicts with active instructions, stop only affected workstreams and withdraw conflicting instructions and acceptance claims. Resume after affected owners confirm that mutation has stopped and acknowledge the corrected contract; keep independent work moving.
When the same acceptance boundary recurs without new evidence, or repeated events show no material improvement, stop patching the affected package. Judge recurrence by the unchanged acceptance effect and causal boundary, not by a renamed acceptance ID, owner, session, test, or observable. Restate the assumption, owner, acceptance question, canonical evidence, representative test, and review cadence; keep other independent work moving. Reversibly change one existing coordination or recovery control, state the expected progress signal, and judge it at the next event.
Give each acceptance fact one canonical evidence source. Treat contradictory independent evidence as an acceptance blocker until the director reconciles its provenance, freshness, and coverage.
Treat a session lesson as a scoped hypothesis, not authority. Record it in existing durable logs only when reuse or handoff warrants it, and promote it to the skill only after repeated failure and forward-testing.
Ask workers for a compact packet:
- always:
Status,Conclusion,Evidence - when relevant:
First failure,Unknowns,Request,Next event
Let the closest owner read raw logs and perform local verification. Expand source or raw evidence only when the packet is contradictory, incomplete, high-risk, or insufficient for a project-level decision.
Add a reviewer only when independent falsification materially lowers risk. Add a decision reasoner only for one evidenced choice whose wrong answer would cause substantial rework. Do not add agents for monitoring or duplicate analysis.
Add a session, review, or validation only when it resolves a named uncertainty blocking the next product result. Count progress by a new user-usable capability or product-level decision and evidence that enables it, not by session activity, reports, checks, static milestones, or internal passes.
Ask the user only when the project charter or a required gate must change, new authority or a product choice is required, or irreversible risk must be accepted.
Durable State and Completion
Establish two distinct written coordination surfaces for every active director session: a stable Director Charter and a volatile Director State. Follow existing strong project owners for the charter; otherwise use docs/director-charter.md. Follow an existing current-state convention for the state; otherwise use docs/director-state.md.
Keep the charter small and current: user-approved product interpretation and user-visible completion, connected major outcomes and non-goals, project-specific ownership or session boundaries, required promotion evidence, and canonical sources or decision owners. Reuse pointers to existing owners instead of copying them, and do not repeat general rules from this skill. Update the charter only when the user-approved project interpretation or a durable project-specific rule changes.
Keep the state overwrite-only and cheap to reread: one-line Goal, immediate director actions in Now, awaited event → next director action in Waiting, and active user instructions or corrections in Constraints. After substantive user input and at meaningful events, update it by replacing or deleting bullets. Keep completed work, evidence, decisions, and worker history with their existing owners.
The director owns both surfaces. Workers and reviewers return evidence instead of editing them. The latest user instruction overrides both; update the charter only for a durable change and keep temporary corrections in the state. Re-read both at resume or handoff and before opening workstreams or declaring completion.
Complete the Codex Goal only when all project criteria and integration evidence are satisfied and no in-scope Now or Waiting item remains. Keep every unfinished workstream owned with a state and a next event or checkpoint, and keep coordination cost below the rework it prevents.