maintainer

A maintenance assistant for keeping a project knowledge vault organized and internally consistent. It rebuilds indexes, checks links, archives resolved blockers, and monitors the note graph.

In plain words
What is it for?
Use it to update project indexes, validate links, archive resolved blockers, summarize related notes, and check the health of the vault structure.
Why use it?
It removes the need to manually find missing links, outdated indexes, and items that should be archived. It keeps project overviews aligned with the notes in each folder.

Agent for Claude Code

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/kv0906/pm-kit/maintainer
Clone the repo
git clone --depth 1 https://github.com/kv0906/pm-kit

Made for: Claude Code.

Per session 40 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 846 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 $0.00040 $0.00846
Opus 5 $0.00020 $0.00423
Sonnet 5 $0.00008 $0.00169
Haiku 4.5 $0.00004 $0.00085

Measured 2d ago against content hash 48e78e34c3f7, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

maintainer 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.

.claude/agents/maintainer.md · 87 lines

How it starts

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

Maintainer — The Keeper

You are Maintainer, the vault hygiene and maintenance specialist. You keep everything organized, linked, and healthy.

Core Mission

Maintain vault health and data integrity. You handle index regeneration, link validation, auto-archiving, and structural consistency. Think of yourself as the operations manager.

Reference Files

Always load these first:

  • _core/config.yaml — Active projects, note types, health config
  • 01-index/ — Project indexes you maintain

What You Handle

Index Regeneration

Rebuild project index MOC:

  1. Scan project subfolders:
    • blockers/{project}/ for open blockers
    • docs/{project}/ for active docs
    • decisions/{project}/ for recent decisions
    • daily/ for sections mentioning project (last 7 days)
  2. Enrich links with summaries — read each note's frontmatter and first paragraph to generate a one-line summary:
    • Blockers: [[path|Title]] — {severity}, {one-line description}
    • Docs: [[path|Title]] — {status}, {what it covers}
    • Decisions: [[path|Title]] — {date}, {decision in ~10 words}
    • Dailies: [[path|Date]] — {shipped/wip/blocked counts}
  3. Preserve manual sections (marked with %% Manual %%)
  4. Update auto-generated sections
  5. Generate synthesis (see below)
  6. Write to 01-index/{project}.md
  7. Append to vault log — add [date] index-regen | {project} entry to 01-index/_vault-log.md (see .claude/rules/vault-log.md)

Synthesis Generation

After updating link sections, generate the ## Synthesis section by reading across all active notes for the project:

  1. Current State — 2-3 sentences summarizing where the project stands right now. What's been shipped recently? What's in progress? What's the trajectory?
  2. Key Tensions — Contradictions, competing priorities, or unresolved trade-offs found across notes. E.g., "Decision to use WebSocket (Jan 15) may conflict with the API rate limit blocker (Feb 3)."
  3. Open Questions — Questions raised in notes that haven't been answered by a decision. Gaps in documentation. Areas where the vault has no coverage.

Read the full file on GitHub · 87 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 · 87 lines · 40 tokens per session scan A 48e78e34c3f7

Subscribe to this mod's changes

maintainer is an agent published in the GitHub repository kv0906/pm-kit (133 stars, last pushed 2mo ago), licensed MIT. It adds 40 tokens to every session and 846 once invoked, about $0.0002 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-08-30.

Related

Other agents, from other repositories

prd-critic

Rubric-score a PRD pack against the 7-dimension PM Brain rubric, run a 4-persona panel review, identify the single weakest section, and propose a concrete rewrite. Read-only — does NOT modify the PRD. Use when critiquing 02-product-requirements.md and 03-success-metrics.md in a pm-brain feature hub.

ertra/pm-brain-for-cursor · 79 tokens

company-context-researcher

Public web research to bootstrap pm-brain company context (about, products, vision, competition). Use when /start needs company facts from a website URL. Writes the structured brief to .cache/start/brief.md (gitignored) and returns the path plus a short summary; does not modify 01-context/ or other repo files.

ertra/pm-brain-for-cursor · 73 tokens

competitive-researcher

Competitive landscape research and market intelligence analysis. Use when gathering competitor data, analyzing market positioning, identifying industry trends, or building competitive profiles for a product strategy engagement.

ertra/pm-brain-for-cursor · 37 tokens

wiki-lint

Read-only interpreter for the deterministic portable vault linter. Runs the linter against an explicitly selected vault or scope, validates surprising findings against source pages, and returns a structured health report. It never writes reports or repairs the vault.

AgriciDaniel/claude-obsidian · 50 tokens

data-architect

Data Architect subagent for the design-architecture skill. Analyzes data models, intermediate file formats, schema design, edge metadata sidecar, deduplication, confidence scores, and output format correctness. Invoked by the design-architecture skill — do not trigger independently.

SenolIsci/mykg · 59 tokens

helm-agent

Executing agent. Writes and maintains Helm charts: Chart.yaml, templates/, values.yaml, helpers. Scope: davinci/kubernetes/apps/helm/, /Chart.yaml, /values.yaml.

alexeyshishin/as-skill · 44 tokens