skills/fixit/SKILL.md
Usage `rdc:fixit <description>` — Quick fix under 5 files / 30 min that does not warrant a full plan→build cycle. Creates a minimal work item, makes the change, commits, runs a mandatory code-review pass (pr-review-toolkit:code-reviewer), closes. The only sanctioned bypass of rdc:build.
npx skillsauth add LIFEAI/rdc-skills rdc:fixitInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
⚠️ OUTPUT CONTRACT (READ FIRST):
guides/output-contract.mdChecklist-only output. No tool-call narration. No raw MCP/JSON/log dumps. One checklist upfront, updated in place, shown again at end with a 1-line verdict.
If dispatching subagents or running as a subagent: read
{PROJECT_ROOT}/.rdc/guides/agent-bootstrap.mdfirst (fallback:{PROJECT_ROOT}/.rdc/guides/agent-bootstrap.md), then{PROJECT_ROOT}/.rdc/guides/engineering-behavior.md(fallback:{PROJECT_ROOT}/.rdc/guides/engineering-behavior.md).
Sandbox contract: This skill honors
RDC_TEST=1perguides/agent-bootstrap.md§ RDC_TEST Sandbox Contract. Destructive external calls short-circuit under the flag.
rdc:fixit <description> — fix the described issueWill this fix touch more than 5 files or take more than 30 minutes?
/rdc:build instead. Explain to the user why.SELECT insert_work_item(
p_title := 'fixit: <description>',
p_item_type := 'bug',
p_priority := 'urgent',
p_status := 'in_progress',
p_source := 'fixit'
);
Note the returned id.
Write to {USER_HOME}/.claude/fixit.marker:
<work_item_id>
<ISO timestamp>
<description>
This signals the Stop hook that fixit is handling its own documentation.
Do the minimal work. Scope creep rule: if you discover the fix requires more than originally scoped, stop immediately:
update_work_item_status('<id>', 'blocked', '["Escalated — scope exceeded fixit threshold"]')/rdc:build insteadApply guides/engineering-behavior.md: state material assumptions in the
implementation report, avoid speculative abstractions, touch only required
files, and verify behavior before moving the work item to review.
git add <specific files only — never git add -A for a fixit>
git commit -m "fix(<scope>): <description>"
if [ "$RDC_TEST" != "1" ]; then
git push origin {development-branch}
else
echo "[RDC_TEST] skipping git push origin {development-branch}"
fi
⛔ No fixit closes without a code-review pass. Even single-file changes go through review.
Dispatch ONE pr-review-toolkit:code-reviewer agent on the fixit commit:
Agent({
subagent_type: "pr-review-toolkit:code-reviewer",
description: "fixit code review",
prompt: "Review `git show HEAD` on the development branch. Focus on:
bugs, logic errors, security, project-convention adherence (.claude/rules/*).
Confidence-based filtering — high-confidence findings only.
Return CODE_REVIEW_COMPLETE with: { critical_count, high_count, medium_count,
low_count, findings: [{severity, file:line, issue, suggested_fix}] }."
})
Severity gate:
critical or high findings → fix in this same fixit session (do not escalate to rdc:build for the fix itself; the original fixit owns the cleanup), re-commit, re-run review until cleanmedium or low findings → record in implementation_report.flags; proceed to closeUnder RDC_TEST=1: echo [RDC_TEST] skipping code-review dispatch and proceed.
Submit implementation report first, move to review, then close as validator:
SELECT submit_implementation_report('<id>'::uuid,
'{"tldr":"<one sentence>","assumptions":[],"deviations":[],"uncertainty":[],"detail":"<what was fixed>","flags":[],"transactional":false,"memory_records":[],"codeflow_post":{"agent_session_id":"<agent-session-id>","summary":"<what changed and why>","files_changed":["<path>"],"verification":["<command/evidence>"],"commit":"<hash optional>"}}'::jsonb
);
SELECT update_work_item_status('<id>'::uuid, 'review',
'["Fixed via rdc:fixit; ready for validation"]'::jsonb,
'<agent-session-id>',
'agent'
);
SELECT update_work_item_status('<id>'::uuid, 'done',
'["Validator verified rdc:fixit report, CodeFlow post, and checklist evidence"]'::jsonb,
'<validator-session-id>',
'validator'
);
If the fix touched a transactional flow, API boundary, or package contract, set "transactional": true and populate memory_records (see agent-bootstrap.md), then run:
node scripts/work-item-memory.mjs <work-item-id>
# Note: verify script exists first: ls {PROJECT_ROOT}/scripts/work-item-memory.mjs
# If the script is absent, skip this step and note it in the implementation report.
rm {USER_HOME}/.claude/fixit.marker
Report: what was fixed, file(s) changed, commit hash. One sentence.
git add specific files only — never -A or . for a fixitpnpm build — not needed for a fixitBefore the final verdict line, follow .rdc/guides/lessons-learned-spec.md § Capture procedure. If this run taught something non-obvious — a first root-cause theory that turned out wrong, the documented/standard path not working, a missing gate or check that cost a round, or a surprising tool/infra behavior — write one .rdc/lessons/<YYYY-MM-DD>-fixit-<short-slug>.md per lesson using the schema in that spec. Set scope (simple | architectural) and status (open, or applied if you shipped the fix in this same run, with the commit linked). Commit the lesson file(s) on develop alongside the run's other commits, and note "N lessons captured" in your verdict/summary. A run that taught nothing writes nothing — absence is the default.
development
Read recent enhancement-log entries, cluster failures by pattern, generate candidate verifier rules, test them against the known-good corpus and the failure corpus, and propose pull requests adding the highest-confidence rules to forbidden-patterns.json. Use this skill on a nightly cadence (3 AM PT), or manually when the user says "extract verifier rules", "promote enhancement log", "what new rules should we add", or after a significant brochure run produced many failures.
testing
Orchestrate a Brochurify job from source ingest through delivered PDF, using six parallel-dispatched typed sub-agents and the convergence loop. Use this skill EVERY TIME the user invokes Brochurify directly via "brochurify this", "make a brochure from", "convert this to a brochure PDF", or "rdc:brochurify". Also runs automatically when a job arrives from the broker via monkey_dispatch. The skill enforces D-001 through D-016 from the brochurify DECISIONS-LOG.
devops
The mandatory contract for authoring brochure JSX using @lifeai/brochure-kit. Use this skill EVERY TIME any AI engine (Claude, Cursor, Copilot, /design, Cowork, v0) generates JSX intended for the Brochurify pipeline — whether the user says "write a brochure," "make a one-pager," "draft a PDF report," or any equivalent. Also trigger when a file imports from @lifeai/brochure-kit. Failing to read this skill before authoring is a defect.
testing
Usage `rdc:housekeeping [--fix]` — Weekly maintenance audit: directory structure verification, PUBLISH.md URL validation, CLAUDE.md freshness, orphan detection, places compliance, and stale version scan. Produces `.rdc/reports/YYYY-MM-DD-housekeeping.md`. With `--fix`, auto-remediate safe issues.