What it adds to Claude Code or Codex.
Claude Code and Codex are the agents. They work with what your project gives them. Cordeau gives them a frame, then checks that it holds.
Fitted to your stack
You don't name the tools. Cordeau reads your stack and the official docs of each tool, then picks the linter, type checker, tests, secret scan and dependency audit that fit: Ruff and pip-audit on Python, gosec and govulncheck on Go. The plan shows each one with its version, for you to approve.
Rules with their reason
Short AGENTS.md files that every session reads, written from an interview and from your code.
Checks the machine enforces
What can be checked becomes a check: at commit, in CI, in the sandbox, in the git hook. A rule the agent forgets still holds.
Proof before it hands back
It stages a throwaway file with a fake secret and a lint defect, and the commit must be refused. It tries the git hook on forbidden commands and the sandbox on a fictional secret file. A check that never runs protects nothing.
Security from the start
The interview asks whether the project is exposed and what data it handles. Then come secret detection at each commit, a dependency audit in CI, and a security pass on sensitive cards.
A roadmap every session reads
Phases and cards, with what is out of scope, so a new session knows where the project stands.
It asks. You approve. It proves.
- 1
You ask
In your project, say "set up the harness". It never starts on its own.
- 2
It reads and asks
It reads the project and the documentation of its tools, then asks about a dozen questions. Nothing is written yet.
- 3
You approve the plan
Each file, the exact content of each setting, hook and check, and what is left out, with the reason.
- 4
It writes, then proves
It tries the checks on a fake secret and a lint defect, and the sandbox on a fictional secret file.
On an existing project, it changes no existing code.
Then it keeps the line.
The checks run at each commit and in CI. At the end of a card, the passes review its uncommitted diff, with a fresh, read-only agent on Claude Code.
Git hook
Refuses force-push, reset --hard, checkout --, restore, clean -f and skipped checks when the agent tries them. On Claude Code and Grok Build through the plugin, on Codex through the copy the setup writes.
Simplification pass
Reads the diff for reuse, needless complexity, wasted work and fixes at the wrong level.
Security pass
On a card that touches authentication, permissions, data, user input or dependencies, reads the diff for access, input, secrets, dependencies, configuration and weakened guardrails.
What has been tested, and what hasn't.
Tried with Claude Code
On macOS, on fictional projects: an empty folder, an old Django application without tests, and a small Go API. The sandbox, the hook and the checks were made to refuse. The generated CI ran on GitHub for the Django and Go projects, and refused planted defects.
Also tried on macOS
Codex wrote a harness and ran both passes, and its sandbox and hook refused what they must. Grok Build loaded the plugin, its hook refused the forbidden commands, and the security pass found the planted flaws. Setting up a harness was not tried on Grok Build.
Not tried yet
Cursor, Linux and Windows, Node as the main stack.
Cordeau has no telemetry, and its scripts use the Python standard library only. npx skills is a third-party tool with its own anonymous telemetry: DISABLE_TELEMETRY=1 turns it off. The hook stops accidents, not an attacker: to really protect a branch, use the protection rules of your git host.
Stretch the line on your project.
claude plugin marketplace add gabigab117/cordeauclaude plugin install cordeau@gabigab117grok plugin install 'gabigab117/cordeau#plugins/cordeau' --trustnpx skills add gabigab117/cordeauThen tell your agent, in any language: "Set up the harness for this project". On Codex, name the skill: $harness-setup. You need Python 3. The plugin needs Claude Code 2.1.277 or later, and npx skills needs Node 22.20 or later.
A cordeau is the line a mason stretches so that every row stays straight.