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.
npx agentmods add skills/sethgammon/citadel/wikinpx skills add SethGammon/Citadel --skill wikigit clone --depth 1 https://github.com/SethGammon/CitadelWrote 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.
[](https://agentmods.dev/skills/sethgammon/citadel/wiki)<a href="https://agentmods.dev/skills/sethgammon/citadel/wiki"><img src="https://agentmods.dev/badge/skills/sethgammon/citadel/wiki.svg" alt="Measured on agentmods" height="20"></a>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.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5 | $0.00056 | $0.01496 |
| Opus 5 | $0.00028 | $0.00748 |
| Sonnet 5 | $0.00011 | $0.00299 |
| Haiku 4.5 | $0.00006 | $0.00150 |
Grade A, and why
wiki 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 4d 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.
How it starts
The opening of the file, as written. The whole thing — 138 lines — stays where its author put it; the contents beside it link to each section on GitHub.
/wiki -- LLM-Native Knowledge Base
Orientation
Use when: building and querying a markdown-first knowledge base -- ingests raw notes, deduplicates, surfaces answers. Don't use when: capturing session learnings into the evolve pipeline (use /learn); generating structured code documentation (use /doc-gen).
Directory Structure
wiki/
index.md # Master index
raw/ # Unprocessed sources (timestamped files)
topics/ # Compiled topic files (one per topic, interlinked)
.wiki-meta.json # Stats: topic count, source count, last compaction
Commands
| Command | Behavior |
|---|---|
/wiki |
Status overview: topic count, last update, pending raw sources |
/wiki --add [source] |
Ingest a new source into the wiki |
/wiki --query [question] |
Answer a question using wiki knowledge |
/wiki --status |
Detailed wiki health: topic count, staleness, orphan detection |
/wiki --compact |
Merge, deduplicate, and reorganize topics |
/wiki --rebuild-index |
Regenerate index.md from current topic files |
/wiki init [path] |
Initialize a new wiki at the specified path |
Protocol
Command: /wiki init [path]
Create wiki/, wiki/raw/, wiki/topics/, an empty wiki/index.md, and wiki/.wiki-meta.json with fields: created, lastUpdated, topicCount: 0, sourceCount: 0, totalWords: 0, lastCompaction: null. Default path: wiki/ at project root.
Command: /wiki --add [source]
Ingest a new source into the wiki.
Step 1: Determine source type — URL (fetch with WebFetch), file path (read), raw text (use directly), no argument (ask user).
Step 2: Write raw content to wiki/raw/source-{timestamp}.md with header: title/URL, ingested date, type, original reference.
Step 3: Identify 1-5 topics. For each: check if a topic file already exists — append to existing or create wiki/topics/{slug}.md.
Step 4: Each topic file has: title, > Last updated, > Sources, compiled content, and ## Related Topics with [[slug]] cross-links. Scan existing topics for cross-links when writing.
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.
- 4d ago First seen · 138 lines · 56 tokens per session scan A 8ef6b50d488c
wiki is a skill published in the GitHub repository SethGammon/Citadel (916 stars, last pushed today), licensed MIT. It adds 56 tokens to every session and 1,496 once invoked, about $0.0003 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.
Other skills, from other repositories
autolearn
Compound a solved problem into a durable in-repo learning doc. Use when a verified non-trivial fix lands, the user says "compound this", "document this fix", or "remember this". This is the automatic-capture entry point; for an explicitly requested one-off write-up, use compound.
consolidate-to-one-home
Fold a scattered fact into a single home and point the rest at it. Use when the same rule, constant, or definition is restated in several files, or the user says "consolidate this", "make this the single source of truth", or "ssotize this". The consolidation is proposed and approved before any edit lands. To…
memory-sync
Persist new context, terms, learnings, and settled lightweight decisions. Use when the user says remember this, save this for later, add to glossary, note this down, or at session end to consolidate what was learned — that goes to the memory layer (CLAUDE.md hot cache, docs/memory/, docs/inbox.md). Also use to record…
operate-hermes-agent
Install, update, migrate to, configure, run, secure, and troubleshoot Hermes Agent across its CLI, TUI, desktop, dashboard, profiles, tools, skills, memory, models, goals, voice, sessions, worktrees, and terminal backends.
build-hermes-agent-extensions
Build Hermes Agent skills, Python plugins, specialized providers, messaging adapters, memory and context engines, secret sources, desktop or dashboard extensions, MCP integrations, hooks, and programmatic hosts.
manage-knowledge
Internal crew primitive, dispatched by /crew:run — do not invoke directly or select it for a user request; route knowledge-capture requests to /crew:run, which decides the full workflow. (Function: capture durable decisions, rationale, and gotchas into the knowledge base, deduped.).