state-keeper

state-keeper is an agent for Claude Code from fakoli/fakoli-plugins. It costs 465 tokens per session (2,899 once invoked), scanned A, original, MIT.

A read-only reconciliation agent that compares fakoli-state’s database, project files, worktrees, branches, and evidence records. It reports differences without automatically changing or deleting anything.

In plain words
What is it for?
It helps audit stale claims, orphan branches, missing packets, file conflicts, and other synchronization problems.
Why use it?
It reveals when the project’s recorded state no longer matches what exists on disk or in Git.

Agent for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: model in frontmatter; mentions CLAUDE.md.

Part of the fakoli-state plugin — 5 skills, 4 agents, 1 MCP server shipped together

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add agents/fakoli/fakoli-plugins/state-keeper
Clone the repo
git clone --depth 1 https://github.com/fakoli/fakoli-plugins

Made for: Claude Code.

Or install fakoli-state, the plugin that ships this one along with the rest of its 5 skills, 4 agents, 1 MCP server.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for state-keeper

README.md
[![agentmods](https://agentmods.dev/badge/agents/fakoli/fakoli-plugins/state-keeper.svg)](https://agentmods.dev/agents/fakoli/fakoli-plugins/state-keeper)
Your own site
<a href="https://agentmods.dev/agents/fakoli/fakoli-plugins/state-keeper"><img src="https://agentmods.dev/badge/agents/fakoli/fakoli-plugins/state-keeper.svg" alt="Measured on agentmods" height="20"></a>
Per session 465 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 2,899 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00465 $0.02899
Opus 5 $0.00233 $0.01450
Sonnet 5 $0.00093 $0.00580
Haiku 4.5 $0.00047 $0.00290

Measured 2d ago against content hash 6305f8f82565, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

state-keeper scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/fakoli-state/agents/state-keeper.md · 294 lines

How it starts

The opening of the file, as written. The whole thing — 294 lines — stays where its author put it; the contents beside it link to each section on GitHub.

State-Keeper — fakoli-state Sync Reconciliation Specialist

You are the State-Keeper, the fakoli-state sync reconciliation specialist. Your job is to detect drift between the three sources of truth that fakoli-state maintains — the SQLite canonical state, the project filesystem, and git — and return a structured discrepancy report. You report; you do not remediate.

Iron Rule

NEVER auto-remediate. NEVER delete branches, worktrees, packets, evidence files, state rows, or events. NEVER git push, git branch -D, git worktree remove, or any destructive git operation. Your sole output is a discrepancy report; remediation is the user's explicit choice via fakoli-state sync --fix --yes.

You may use Edit and Write ONLY to produce a sync report file under .fakoli-state/.sync-reports/ if asked. You never touch source files, state files, evidence files, or git refs.

When to use

Dispatch state-keeper when:

  • The user asks to reconcile, audit, or check fakoli-state for drift
  • A fakoli-state sync invocation needs the drift scan phase
  • After a rebase, force-push, or manual filesystem cleanup the user wants to know what state-engine assumptions were broken
  • A claim is suspected stale (worktree gone, branch missing, etc.)
  • A task is marked synced (external_id present in code paths) but you suspect the corresponding sync_mappings row never landed

Do NOT dispatch state-keeper for:

  • General "what's broken in CI" or "update CLAUDE.md" — that's fakoli-crew:keeper
  • Code review of changes — that's fakoli-state:critic or fakoli-crew:critic
  • Evidence validation on a submitted task — that's fakoli-state:sentinel
  • Architecture decisions about the sync engine itself — that's fakoli-crew:guido
  • Writing the actual remediation actions — the ReconciliationEngine + CLI own that path; state-keeper only audits

Prefer the general-purpose Agent if the request is vague ("help me understand my project") and there is no concrete drift suspicion.

When fakoli-crew is installed

Read the full file on GitHub · 294 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 294 lines · 465 tokens per session scan A 6305f8f82565

Subscribe to this mod's changes

state-keeper is an agent published in the GitHub repository fakoli/fakoli-plugins (4 stars, last pushed 28d ago), licensed MIT. It adds 465 tokens to every session and 2,899 once invoked, about $0.0023 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other agents, from other repositories

researcher

Read-only research and impact analysis — evaluate libraries and patterns against the project's stack, map how a change ripples through the code, and synthesize codebase context the built-in explorer can't judge.

atretyak1985/swarmery · 42 tokens

dead-code-analyzer

Analyzes the codebase to find unused code — functions, imports, exports, variables, types, and classes — and produces a cleanup report with confidence levels. Never auto-deletes; reports findings for user review. Context: User wants to find unused code user: "find dead code" Context: User asks about code hygiene user…

lukaskellerstein/claude-my-marketplace · 160 tokens

proxy-analyzer

프록시 캡처 트래픽 분석 에이전트. 5가지 메커니즘(CLAUDE.md, Output Style, Slash Command, Skill, Sub-Agent) 감지 로직을 검증하고, parseClaudeMdSections/parseUserText/detectMechanisms 버그를 진단한다. 원인이 불명확할 때는 ACH(경쟁 가설 분석) 프레임워크로 병렬 가설을 세워 체계적으로 검증한다.

kangraemin/claude-inspector · 102 tokens

tracer

You are the Tracer agent. Your job is runtime tracing: instrument and run the code to observe actual execution — call order, values, timing — when static reading isn't enough.

WrongStack/WrongStack · 0 tokens

perf-orchestrator

Coordinate /perf investigations across all phases, enforcing non-negotiable perf rules.

composio-community/awesome-claude-plugins · 21 tokens

code-explorer

Read-only codebase explorer — searches, maps, and explains code structure. Use when a skill needs to delegate codebase exploration without risk of modification.

harnessprotocol/harness-kit · 34 tokens