Integrations · Sheet 04
hyperfixer is agent-agnostic by construction: the interface is a CLI with strict exit codes, a JSON verdict on disk, and git hooks. Claude Code, Codex, Cursor, Kimi, Grok, or a plain shell script all consume it the same way.
Put this in your agent's instructions file, AGENTS.md or CLAUDE.md:
hyperfixer fix --quiet || hyperfixer hint # => [typecheck] src/service.ts:42, Type 'string' is not assignable… (+3 more) # autofix runs first, then: exit 1 fix code, exit 2 fix setup, exit 3 do not touch code
hyperfixer install-hooks # pre-commit: gates with cost <= 50 (fast) # pre-push: full pipeline
The hooks are plain sh, refuse to overwrite hooks they did not write, and print the hint on failure so the blocked agent knows what to fix. This is the enforcement layer no agent can forget or skip.
hyperfixer install-claude
Writes (or merges into) .claude/settings.json a PreToolUse hook that intercepts plain git commit and git push from the agent, runs the pipeline, and on failure blocks the call with the hint fed back to the agent, which fixes and retries. Non-git commands are never touched; garbage input never blocks. Best effort: aliases and wrappers are not intercepted, pair it with the git hooks for hard enforcement.
- uses: actions/checkout@v4
- uses: egeominotti/hyperfixer@main
with:
max-cost: "50" # optional
config: "hyperfixer.config.json" # optional
working-directory: "." # optional
The composite action installs Bun and runs the CLI directly from the action checkout, zero install steps.
| Layer | Mechanism | Strength |
|---|---|---|
| Agent instructions | AGENTS.md / CLAUDE.md loop | Soft, agent can forget |
| Agent runtime | install-claude PreToolUse hook | Blocking, best effort on command matching |
| Repository | install-hooks git hooks | Hard, blocks everyone locally |
| CI | GitHub Action | Hard, blocks merges |
Use all four: the cheap layers give the agent fast feedback, the hard layers guarantee nothing unverified lands.