autocorrect
Review corrections, triage proposed patches, and audit the agent self-improvement loop.
Skill by bllshttng
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/bllshttng-autocorrect
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: security, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/autocorrect
What's inside
- Skill name
autocorrect- Description
- Review corrections, triage proposed patches, and audit the agent self-improvement loop.
- License
- Apache-2.0
- Instructions
- 93 lines in SKILL.md · view on GitHub
Agent Skills spec issues
- files: referenced but missing: scripts/corrections-verifier-log.sh, scripts/corrections-insights-tag.sh
Files (5)
- LIMITATIONS.md
- SKILL.md
- autocorrect-prompts.md · references/
- corrections-log-format.md · references/
- wiring-existing-verifiers.md · references/
SKILL.md (first lines)
# Autocorrect
The meta-improvement layer: passive capture, fresh-API review, human triage in 20 minutes per month.
**Harness boundary:** the capture wiring is Claude-specific. The git post-commit hook, verifier wrapper paths, and watermarks live under `~/.claude/`, and the cron registers launchd jobs on this machine. On another harness only the manual `/autocorrect review` command runs. The passive writers are absent, and the skill says so rather than pretending the loop is armed.
## Three writers, one log, one consumer
Capture surfaces (write to `~/.fno/logs/corrections.log`, never invoked by the agent):
1. **git post-commit hook on `~/.claude/`** records every edit to rule/skill/CLAUDE.md files. Severity S1 by default; S0 if the commit subject starts with `urgent:` or `revert:`.
2. **pre-commit verifier wrapper** (`scripts/corrections-verifier-log.sh`) any verifier in any repo calls when it blocks a commit. Verifier decides the severity (S0 for secret-scanner, S1 for style/lint, S2 for drift).
3. **`/fno:intel` correction ingester** (`scripts/corrections-insights-tag.sh`) ports `#agent-correction`-tagged `/fno:intel` report lines as S2 events.
Consumer surface (this skill):
- **Weekly review** (Mondays, 09:00 local) sends the last 30 days of S1+S2 events plus the current full text of every implicated rule file to a fresh Claude API call. Output is a numbered patch list.
- **S0 watcher** (every 15 minutes) catches any unprocessed S0 events and fires an immediate review.
- **Triage** walks the patch list interactively with accept/reject/defer/skip/quit per item. An accepted diff to a shipped skill (`skills/<name>/SKILL.md` in this repo) is never applied locally. Triage files a backlog node, and a worker ships it through the normal PR path. The shipping commit carries the trailer `Autocorrect-Ref: <review_id>#<N>`, so the post-commit hook's row links back to the proposal.
## Commands
| Command | What it does |
|---|---|
| `/autocorrect review [--severity S0\|S1\|S2]` | Build a packet and call the reviewer now. Severity filter optional. |
| `/autocorrect triage [--review-id <id>]` | Walk the latest (or specified) patch list interactively. |
| `/autocorrect status` | Show scheduled jobs, latest review, pending patches, watermark state. |
| `/autocorrect install` | Register the weekly cron and the S0 watcher (idempotent). |
| `/autocorrect ingest-insights` | Manually run the `/fno:intel` report ingestion path (`--insights-file <intel report>`). |
All commands are thin wrappers over scripts in this plugin's `scripts/` directory.
## Invariants (read before extending)
1. **The agent is never the capture surface.** All three writers are passive (git hooks, verifier wrappers, scheduled ingester). If you find yourself proposing an agent-direct write, you're holding the wrong end of the loop.
2. **Single artifact.** Everything funnels through `~/.fno/logs/corrections.log`. Three writers, one consumer. Resist the urge to add ad-hoc per-source logs.
3. **Severity tiers, not frequency thresholds.** S0 fires immediately on a single event. S1 and S2 both roll up in the weekly review. The registered cron passes `--severity S1,S2` on Mondays, and that scheduler is the one cadence owner. The writer decides severity.
4. **Reviewer sees current full rule text, not just diffs.** Decisions are made against the rule as it stands today, not its history.
5. **L1 -> L2 migration discipline.** Rules are a holding pen; verifiers are the destination. CONVERT-TO-VERIFIER patches MUST delete the rule text in the same commit they add the verifier. `autocorrect-triage.sh` surfaces this invariant.
6. **The loop's success metric is patch volume decreasing.** Patch volume dropping is the goal, not a failure signal. The loop retires successfully when verifiers absorb every recurring correction class.
## File map
| File | Purpose |
|---|---|
| `~/.fno/logs/corrections.log` | The canonical capture artifact. Mode 0600. |
| `~/.claude/.corrections-watermark` | Last weekly review window end. |
| `~/.claude/.s0-watcher-watermark` | Last S0 watcher tick. |
| `~/.claude/.s0-processed.log` | Per-event hashes of S0 events already dispatched. |
| `~/.fno/logs/corrections.log.wm` | Per-event hashes ingested from the intel report. |
| `~/.fno/corrections-rejected.log` | Items the user rejected during triage. |
| `~/.claude/corrections-malformed.log` | Items where the patch did not apply cleanly. |
| `~/.claude/proposed-patches/{review_id}.md` | The reviewer's patch list per review. |
## Setup
```bash
# Upgrading from before ab-f063 Wave 2? corrections.log moved from ~/.claude/
# to ~/.fno/ (placement rule). Run this once first - it appends any existing
# ~/.claude/corrections.log content to the new location and tombstones the
# old file. No-op if there's nothing to migrate.
bash $CLAUDE_PLUGIN_ROOT/scripts/corrections-migrate-to-fno.sh
# One-time bootstrap (creates corrections.log, installs git post-commit hook,
# registers the launchd jobs)
bash $CLAUDE_PLUGIN_ROOT/scripts/corrections-log-init.sh
bash $CLAUDE_PLUGIN_ROOT/scripts/install-corrections-git-hook.sh
bash $CLAUDE_PLUGIN_ROOT/scripts/install-autocorrect-cron.sh
# Verify
bash $CLAUDE_PLUGIN_ROOT/scripts/install-autocorrect-cron.sh --status
# Tail the log
tail -f ~/.fno/logs/corrections.log
```
After setup, the loop runs unattended. The user only interacts during triage (~20 min/month) or to acknowledge an S0 review.
## References
- `references/corrections-log-format.md` - canonical format for the log
- `references/wiring-existing-verifiers.md` - how to add a new verifier writer
- `references/autocorrect-prompts.md` - canonical reviewer prompt template
## Retirement
The loop self-retires when, for two consecutive years, no S0 event has been caught only by this loop (i.e., every S0 was also caught by a deterministic verifier). At that point the verifier layer has fully absorbed the work and the meta-loop is no longer load-bearing. Delete the schedule, leave the capture infrastructure running as a paper trail, and move on.
## Known Limitations and Deferred Work
- Human triage is required before autocorrect changes guidance. See [LIMITATIONS.md](LIMITATIONS.md).From bllshttng/fno, Apache-2.0.
More from bllshttng/fno
- 0.597score
execute
bllshttng
Execute an approved plan in a flat run or coordinated waves.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
fix
bllshttng
Fix build failures and red tests, or investigate an error with an evidence-based loop.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
mail
bllshttng
Read, send, reply to, and manage Footnote agent mail from any session.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
setup
bllshttng
Set up a machine for Footnote by launching the interactive setup wizard and reading its report.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
review
bllshttng
Review recent code changes, check if they are ready to ship, or assess a research brief.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
lead
bllshttng
Lead a backlog territory over time or run one governed planning wave.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
intel
bllshttng
Report session provenance, work completed, and where agent sessions needed correction.
SkillAFreshness: A★ 2Claude Code +9 - 0.592score
fno-me
bllshttng
Join this session to the Footnote agent mesh so peers can reach it.
SkillAFreshness: A★ 2Claude Code +9 - 0.592score
growth-launch
bllshttng
Draft and evaluate a growth campaign bundle, then stop at founder approval.
SkillAFreshness: A★ 2Claude Code +9 - 0.592score
audit
bllshttng
Audit a feature for completeness, gaps, and buildable follow-up work.
SkillAFreshness: A★ 2Claude Code +9 - 0.592score
cache-keepalive
bllshttng
Keep the prompt cache warm during idle sessions when the project opts in.
SkillAFreshness: A★ 2Claude Code +9 - 0.592score
dnd
bllshttng
Hold incoming agent mail during a quiet window, then deliver one digest.
SkillAFreshness: A★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Oct 21, 2026 (8 days ago)
- Last release
- Oct 23, 2026 (6 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- Apache-2.0
- Repository
- github.com/bllshttng/fno
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from bllshttng
- 0.597score
lead
bllshttng
Lead a backlog territory over time or run one governed planning wave.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
mail
bllshttng
Read, send, reply to, and manage Footnote agent mail from any session.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
fix
bllshttng
Fix build failures and red tests, or investigate an error with an evidence-based loop.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
intel
bllshttng
Report session provenance, work completed, and where agent sessions needed correction.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
execute
bllshttng
Execute an approved plan in a flat run or coordinated waves.
SkillAFreshness: A★ 2Claude Code +9 - 0.597score
review
bllshttng
Review recent code changes, check if they are ready to ship, or assess a research brief.
SkillAFreshness: A★ 2Claude Code +9
Cite this page
autocorrect skill. Agent Mart. https://agentmart.dev/skills/bllshttng-autocorrect (last updated 2026-10-24)