Init codex config
Scaffold or migrate a project to use agent-harness from Codex. Use when applying agent-harness in Codex, converting Claude Code setup to AGENTS.md/.codex/.agents, or making a project ready for Codex skills and hooks without changing the original Claude setup.From its SKILL.md
npx -y skills add jajupmochi/agent-harness --skill init-codex-configAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- skips confirmationTells the agent to proceed without asking first, 1 time: "When the user says `autorun`, choose conservative defaults and continue".
- 1 stars1 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.
- runs commandsInstructs the agent to run 4 commands, including `jq empty on every JSON file created or changed` and 3 more.
SKILL.md
4.3 KB, ~1.0k tokens by cl100k_base, as published. Nobody here has run it
init-codex-config
Apply agent-harness to a project for Codex. This is the Codex counterpart to
setup/init-agent-config/SKILL.md; read that source skill before adapting a
project, then translate only the selected pieces into Codex surfaces.
Preflight
- Locate this repository. Prefer the current plugin root; otherwise check
~/.claude/agent-harness. - Read:
../../docs/CODEX_ADAPTATION_PLAN.md../../INVENTORY.md../../rules/README.md../../setup/init-agent-config/SKILL.md
- Inspect the target project for existing
AGENTS.md,.codex/,.agents/skills,.claude/,CLAUDE.md, package manifests, and Git status. - Do not edit
.claude/orCLAUDE.mdunless the user explicitly asks for Claude Code changes too.
Decide the Codex surfaces
- Durable project guidance goes in
AGENTS.md, notCLAUDE.md. - Codex project hooks go in
.codex/hooks.json. - Repo-scoped Codex skills go in
.agents/skills/<skill-name>/SKILL.md. - User-wide Codex skills go in
~/.agents/skills. - Reusable distribution goes through
.codex-plugin/plugin.jsonand a marketplace entry. - MCP or app integrations belong in Codex MCP/app config, not in AGENTS.md.
Questions
If the user has not already provided answers, gather these decisions. In plan mode, use the available user-input tool. Outside plan mode, ask only the questions that affect file writes.
- Project type: Python research, static site, frontend app, or custom.
- Language policy: English, Chinese, bilingual, or leave unchanged.
- Context tags:
always,research-pkg,ui-project,static-site,ml-research,web-perf,image-or-video-work,docs-site,electron-or-desktop. - Which personal rules to include: output brevity, tool proactivity, no reread, writing style, human-readable output, autorun mode.
- Skill scope: repo
.agents/skillsor user~/.agents/skills. - Hook scope: project
.codex/hooks.json, user~/.codex/hooks.json, or no hooks. The tested local activation uses user hooks; do not also declare plugin hooks or the same command can run twice.
When the user says autorun, choose conservative defaults and continue unless
a file overwrite, dependency install, network call, or destructive operation
needs approval.
Compose for Codex
- Preserve any existing
AGENTS.md; merge additively or createAGENTS.md.bak.<date>before replacing. - Generate
AGENTS.mdwith concise instructions. Do not paste the full rule library. Include references to selected source rule files, for example:Rules source: ~/.claude/agent-harness/rules/phased-planning/RULE.md. - If project hooks are selected, create
.codex/hooks.jsonfrom this repository's roothooks.json, then rewrite every command to a stable absolute or git-root-based path. The root file is a source template, not an automatically discovered plugin hook. - If repo skills are selected, copy the relevant top-level Codex wrapper
skill directories from this repository into
.agents/skills/. - If a template is selected, use the corresponding template directory as a
source, but translate Claude-specific files:
CLAUDE.template.md-> summarizedAGENTS.md.claude/settings.template.json->.codex/hooks.json.claude/skills->.agents/skills
- Add a short README note only when the project already has a README and the user wants provenance recorded.
Verification
Run checks proportional to the files written:
jq emptyon every JSON file created or changed.python3 -c 'import tomllib; ...'for TOML files if present.rg -n "CLAUDE|\\.claude" AGENTS.md .codex .agentsto ensure Codex files do not accidentally claim to be Claude configuration, except in provenance text.git status --shortto report changed files.
Do not claim that hooks or skills are active in the current Codex task until they have been installed in a discovered location and a real lifecycle event or explicit invocation proves that task picked them up. Trusting a hook definition does not prove an already-running task rebuilt its lifecycle registry.
What ships with it
Read from the repository
Just SKILL.md. No reference files, no scripts.
Gives 0 of the 12 instructions most project setup skills give in ~1.0k tokens
Counted across 1,553 of the 3,091 authors here whose files we hold, read 2026-09-06
- Write the configuration filein 36 of 1553
- Create the directory structurein 35 of 1553, across 33 files
- Verify the setupin 31 of 1553, across 28 files
- Run the setup scriptin 30 of 1553, across 29 files
- Pre-determine the required sample sizein 29 of 1553, across 12 files
- Check if the configuration already existsin 29 of 1553
- Document every testin 26 of 1553, across 10 files
- Start with a hypothesisin 26 of 1553, across 11 files
- Ask one question at a timein 22 of 1553
- Test a single variable per testin 21 of 1553, across 9 files
- Read product marketing context before asking questionsin 19 of 1553, across 8 files
- Do not peek and stop earlyin 18 of 1553, across 7 files
Said here and by no other author read
- Read the adaptation plan and inventory
- Preserve any existing AGENTS.md
- Run checks proportional to the files written
Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.