Skip to content

Build project-local harness on explicit skill invocation - #4

Merged
revfactory merged 1 commit into
mainfrom
fix/explicit-harness-project-bootstrap
Sep 24, 2026
Merged

revfactory merged 1 commit into
mainfrom
fix/explicit-harness-project-bootstrap

Conversation

@revfactory

Copy link
Copy Markdown
Owner

Change

Explicit $harness / $codex-harness:harness invocation now directs Codex to build or update a durable harness in the target project before an accompanying ordinary content task. An explicit read-only or audit request still limits writes.

The skill requires every generated agent definition under <target>/.codex/agents/ and keeps skills, AGENTS.md pointers, run state, and communication records in the target. It checks the parent session's cwd before native project-work spawning, since spawn_agent cannot select a child cwd. If protected project paths reject writes, it reports the exact error and leaves bootstrap incomplete instead of relocating definitions or changing permissions. The bootstrap flow also handles plugin-only installation without assuming the checkout's root installer exists.

Updated English, Korean, and Japanese usage guides, quickstart, compatibility notes, trigger examples, and changelog.

Verification

  • python3 scripts/validate.py --project . — fails on five pre-existing ignored .harness/runs/* records whose project_root points to /Users/robin/Downloads/codex-harness. A clean copy of the 88 tracked files passes structural validation: 5 agents, 1 skill, 0 errors.
  • python3 -m unittest discover -s tests -v — 94 tests passed.
  • git diff --check — passed.
  • Live Codex smoke test — CLI 0.155.0 with gpt-6-sol, started in a fresh temporary target with inherited model/permission preferences. An ordinary writing request invoking $harness created article.md, AGENTS.md, two project-local agent TOMLs, an orchestrator skill, and completed write/review run records. Target structural and run completion validation passed; codex exec exited 0. Parent and both child session metadata had the target cwd and gpt-6-sol model. Newly written custom roles were not loaded into that active session, so the actual children used built-in worker/explorer roles with the project-local instructions. A plugin-only fresh-target bundle copy was not separately exercised in this smoke test.

Compatibility

  • User-visible changes documented in CHANGELOG.md and usage guides.

The optional installer still supplies the predefined five-agent scaffold. Existing project content, inherited model, and permission settings remain under the user's control. Agent definition location and native child execution are tracked separately.

@revfactory
revfactory merged commit 80f8217 into main Sep 24, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant