Skip to content

Codex plugin ​

Manually pasting the writetighter commands into Codex works, but it leaves the agent to work out the workflow on its own. The WriteTighter plugin packages a tighten skill that knows the two-command model, the verification rules, and how to handle an unconfigured revise without blocking.

This is not a separate implementation. The skill invokes the same writetighter lint / revise / prompt CLI documented in the CLI reference. WriteTighter never edits files — the skill instructs your agent to apply the findings it can verify.

Prerequisites ​

  • Install WriteTighter and make sure writetighter is on your PATH.

    bash
    curl -fsSL https://writetighter.douggo.com/install.sh | bash
  • For native contextual revision, run the setup wizard once so revise has an endpoint:

    bash
    writetighter config

    Without a configured endpoint, the skill falls back to self-revision — see below.

  • Install a Codex CLI version that supports plugins.

Confirm the binary is reachable before installing the plugin:

bash
writetighter --help

Setup ​

  1. Register WriteTighter's marketplace from GitHub:

    bash
    codex plugin marketplace add sdougbrown/writetighter
  2. Install WriteTighter from the registered marketplace:

    bash
    codex plugin add writetighter@writetighter
  3. Start a new Codex task. Plugin skills load when a task starts, so an already-open task will not pick up the integration.

For GitHub and repository-root installs, Codex and Claude Code both consume .claude-plugin/marketplace.json. That manifest points to marketplace/plugins/writetighter, where Codex loads .codex-plugin/plugin.json.

Installing from a local checkout or branch ​

The GitHub source above is the normal installation path. To test local plugin changes, register the repository root instead:

bash
codex plugin marketplace add /absolute/path/to/writetighter

To test a Git branch without cloning it, pin that ref when registering the GitHub source:

bash
codex plugin marketplace add sdougbrown/writetighter --ref feature/my-plugin-change

What the skill does ​

The bundled tighten skill runs your drafted prose through both commands before you ship:

  • writetighter lint --kind <kind> --format json — deterministic rule findings.
  • writetighter revise --kind <kind> — contextual rewrites and clarification questions.

It then applies only the changes it can verify (a replacement must preserve every command, path, identifier, and number), re-lints, and surfaces any clarification question it cannot answer instead of guessing.

When revise is not configured ​

If you skip model setup, revise exits with code 3. Codex does not expose a nested subagent with a separate model, so the skill does not block — it falls back to self-revision: it runs writetighter prompt --kind <kind> --format json to get the revision rubric, then Codex produces the revisions[] JSON shape itself and hands it to the same verification step. If you would rather use a dedicated model, run writetighter config and use revise directly. Full details ship inside the plugin at skills/tighten/references/host-codex.md.

Verification ​

bash
codex plugin list

In a new Codex task, asking Codex to "tighten this" or "run writetighter on this doc" should trigger the skill.

Troubleshooting ​

Codex cannot find the binary ​

The skill runs writetighter by command name. Make sure the directory containing the binary is on the PATH inherited by Codex, then start a new task.

Codex cannot find the marketplace ​

Check whether the marketplace was registered:

bash
codex plugin marketplace list

If writetighter is missing, retry with the exact owner and repository name:

bash
codex plugin marketplace add sdougbrown/writetighter

This step needs network access to GitHub. If GitHub registration still fails and you have a local checkout, register its absolute repository-root path instead.

The skill is installed but does not trigger ​

Start a new Codex task after installation. Skills are not added retroactively to an existing task.

See also ​