Tacit Adds Recurring Pull Request Review Memory to Claude Code Agents
Tacit is an open-source plugin for Claude Code that prevents repetitive code review blunders by logging mistakes and escalating recurring issues. It injects targeted checks only when touching relevant files, preventing context bloat.

Why it matters
You can eliminate repetitive human pull request review cycles by forcing Claude Code to track its past mistakes and enforce scoped repository rules at write time.
TL;DR
- 01Monolithic instruction files lose effectiveness past 60k tokens; rules must be injected based on modified file paths.
- 02Tacit enforces an escalation threshold at two hits to turn recurring LLM mistakes into automated checks.
- 03Hooks must fail safely without emitting automatic permission decisions that could allow unauthorized git pushes.
Key facts
- Tested Host Version
- Claude Code 2.1.278
- Prompt Reminder Overhead
- ~60 tokens per 10 prompts
- Rule Cap per Tier
- 30 lines maximum
- Escalation Threshold
- 2 recurring hits
The Limit of Monolithic Rule Files
Storing developer preferences in a single CLAUDE.md file inevitably fails over extended agentic sessions. When context windows fill with file reads and shell outputs, early guidance becomes background noise. Adding dozens of retrospective rules turns project instructions into an unread checklist, while repetitive prompts cause the model to disregard guidance entirely.
The Tacit Plugin Architecture
The open-source plugin tacit addresses this failure mode by splitting tacit knowledge into two distinct operational stores:
1. Global Rules: Broad architectural heuristics stored with recurrence counters in the format [hits: N, last: YYYY-MM]. 2. Local Checks: Stack-specific command-line invocations stored in files like .claude/papercuts/sql.md with file-path frontmatter, loaded only when matching code paths are written.
When a rule reaches two or more hits (hits >= 2), Tacit flags it for escalation into a deterministic linter or automated verification script.
Self-Auditing and Safety Guardrails
To prevent language models from falsely reporting zero mistakes, Tacit records every captured issue in papercuts-log.jsonl and audits counts with tacit audit. Crucially, hook scripts are configured never to return automated permissions (permissionDecision: allow) to avoid bypassing user confirmations during Git pushes, and all internal helper scripts fail silently without aborting parent workflows.
Try it in 2 minutes
claude plugin marketplace add N1XUS/tacit
tacit config local .claude/papercuts
tacit auditbash
✓ When to use
- Teams using Claude Code where reviewers keep leaving identical feedback across different pull requests.
- Codebases with tacit architectural boundaries that cannot be fully expressed in a single project prompt.
✕ When NOT to use
- Solo hobby prototypes where code review consistency and strict conventions are unnecessary.
- Projects without established Git pull request workflows or systematic peer reviews.
What to do today
- Install the plugin using `claude plugin marketplace add N1XUS/tacit` in your Claude Code environment.
- Run `tacit doctor` to verify that environment variables and hook execution paths are properly configured.
- Set a hard ceiling of 30 items per checklist tier to prevent rule wallpaper effect.