ijfw-agents-md
Maintain canonical AGENTS.md (open spec). Trigger: 'agents.md', 'update AGENTS.md', or auto-fired by ijfw-team after agent generation.
Reply to code review without blind agreement or performative pushback. Use when you have received feedback, need to address review, respond to review, handle review comments, or PR comments came back. Trigger: received feedback, address review, respond to review, review comments
$ npx -y skills add FerroxLabs/ijfw --skill ijfw-receiving-review --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/ijfw-receiving-reviewContext preview
The summary Claude sees to decide when to auto-load this skill.
Reply to code review without blind agreement or performative pushback. Use when you have received feedback, need to address review, respond to review, handle review comments, or PR comments came back. Trigger: received feedback, address review, respond to review, review comments
name: ijfw-receiving-review description: "Reply to code review without blind agreement or performative pushback. Use when you have received feedback, need to address review, respond to review, handle review comments, or PR comments came back. Trigger: received feedback, address review, respond to review, review comments to handle, PR comments came back, /ijfw-receiving-review" since: "1.5.0"
Paired with `ijfw-review` (reviewer side). This is the implementer side: how to react to findings from `ijfw-review`, `ijfw-cross-audit`, a human PR reviewer, a book editor, a design critic, or any other source -- without two failure modes.
**Failure mode A: blind agreement.** "You're absolutely right!" then implement. The finding was never verified. Half the time the reviewer was wrong, the cited line moved, or the suggested fix breaks an invariant they did not know about. You now own a regression.
**Failure mode B: performative pushback.** "I disagree, this is fine." No technical specifics, no citation, no evidence. Reviewer pushes back harder. You either cave (back to A) or dig in (the regression ships anyway).
The rule: every finding gets ONE of three legitimate replies, and each reply has an evidence bar.
---
Pick ONE per finding. Never "I'll think about it" -- that is silent deferral and rots the review thread.
If you cannot pick one within 60 seconds of reading the finding, you have not understood it yet. Re-read it twice before replying.
---
Reproduce it. Open the cited file at the cited line. Run the failing command, the failing test, the failing query. If the bug does not reproduce, that is a Disagree-with-reason -- and a memory entry about the reviewer's hit rate.
A finding you cannot reproduce is a finding you cannot fix. "Agreeing" without reproduction means you will guess at a fix, the guess will be wrong, and the next reviewer round will flag it again.
---
Reviewers cite domain knowledge, codebase invariants, security contracts, or framework rules you may not have loaded. Before pushing back:
"I disagree" alone is performative. "I disagree because L88 already handles this branch -- see test_null_email at L201" is technical.
---
These reply patterns are the ones that ship regressions. When you catch yourself writing one, stop and verify before sending.
---
From `ijfw-review` severity vocabulary (BLOCK / FLAG / NIT, or in `ijfw-review` shorthand bug / warn / suggest / nice):
Mis-calibration in either direction is the bug. Treating a BLOCK as a NIT ships regressions; treating a NIT as a BLOCK burns trust and slows the cycle.
---
Reviewers are wrong sometimes. Cross-audit lenses are wrong sometimes. Even careful human reviewers miss invariants. Pushing back is legitimate -- when you have evidence.
A specific pushback contains: the file, the line, the cited behavior or contract, and the test or invocation that proves it. Example: "L42 is not a null deref -- `validateInput` at L38 throws before L42 can run. See test_null_input_throws at tests/input.test.ts:14."
A non-specific pushback contains: "I disagree." "This is intentional." "That's how it works." These are vibes. Vibes lose review threads.
---
When you Disagree-with-reason on a finding from the same reviewer for the third time on the same kind of issue (same false-positive pattern), record a memory entry:
IJFW — It Just F*cking Works. Ferrox Labs' local-first infrastructure for AI coding agents: shared memory, smart routing, multi-AI cross-audits, disciplined workflow.
Repo: FerroxLabs/ijfw
Maintain canonical AGENTS.md (open spec). Trigger: 'agents.md', 'update AGENTS.md', or auto-fired by ijfw-team after agent generation.
Session-end auto-extraction of lessons, errors, fixes, and user feedback into structured memory. Fires at session end. Requires consent on first run.
Terse conventional commits. Trigger: commit, git commit, /ijfw-commit
Use when a milestone is shipping and you need to archive its artifacts, generate a summary, and seed the next milestone. Trigger: 'milestone complete', 'ship…
Compress memory/context files into terse form. Trigger: /compress, compress file
Use when the user says: 'compute', 'crunch this', 'analyze logs', 'aggregate the data', 'run a script', 'dedupe', 'count by', 'top N', or any data-shaping ask.…