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 instructions/ai-4-phi/phillit/claude-mdgit clone --depth 1 https://github.com/AI-4-Phi/PhilLitWrote 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/instructions/ai-4-phi/phillit/claude-md)<a href="https://agentmods.dev/instructions/ai-4-phi/phillit/claude-md"><img src="https://agentmods.dev/badge/instructions/ai-4-phi/phillit/claude-md.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.05354 | $0.05354 |
| Opus 5 | $0.02677 | $0.02677 |
| Sonnet 5 | $0.01071 | $0.01071 |
| Haiku 4.5 | $0.00535 | $0.00535 |
Grade A, and why
PhilLit CLAUDE.md 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 today.
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 — 186 lines — stays where its author put it; the contents beside it link to each section on GitHub.
PhilLit is a multi-agent system to (a) author academic literature reviews for philosophy research, and (b) improve these agents. It is packaged as a distributable Claude Code plugin.
This
CLAUDE.mdis for plugin developers working in this repository. It does not load when PhilLit runs as an installed plugin from a user's own directory — runtime guidance lives in the skills (skills/*/SKILL.md) and agents (agents/*.md).
Mode
Production mode (default): When the user asks for a literature review, invoke the /phillit:literature-review skill to begin the 6-phase workflow. Skills and agents register only when the plugin is loaded — a bare dev clone registers none of them. To run a review against your checkout, launch claude --plugin-dir /path/to/PhilLit from a scratch directory (see CONTRIBUTING.md, Getting Started).
Development mode: Only if user explicitly asks to develop, improve, or test agents/skills. Work on definitions in agents/ and skills/.
Objectives
Priority order for literature reviews (and agent development):
- Accurate — Only cite verified papers; never fabricate references
- Comprehensive — Cover all major positions and key debates
- Rigorous and concise — Analytical depth, tight prose; balanced presentation of positions
- Reproducible — Structured workflow, standard BibTeX output, Chicago author-date citations
NOT priorities:
- ❌ Speed — Quality over fast completion
- ❌ Context efficiency — Use full context as needed; don't optimize for token savings
File Structure
reviews/— All existing and new literature reviews. Each review has its own subdirectory with an informative short name. Gitignored (local only), except the three example reviews linked from the README..claude-plugin/— Plugin manifest (plugin.json).bin/phillit-run— Self-locating wrapper that runs every bundled Python script in the plugin's lockeduvproject environment (see "Hooks and Python").skills/literature-review/— Main orchestration skill for the 6-phase workflow.scripts/contains the Phase 3-to-4 evidence barrier (evidence_barrier.py, helpersresolve_context.py,stamp_evidence.py,bib_fields.py— the depth-counting scanner that owns locating field VALUES in raw BibTeX text: every value read (stamp_evidence.parse_entry_fields,enrich_bibliography.parse_bibtex_entries, dedupe's extractors), every edit (add_field_to_entry, the keywords stamp and editors) and every strip (the barrier's derived fields, the context fields) goes throughiter_fields/remove_field. Outside it, by design: the barrier's\b<name>\s*=presence COUNTERS in its splice checks, dedupe's line-based duplicate-field warning, and the one textual check in dedupe's field remover, aname =in the untrusted tail past an unclosed value or block —venue_vetting.py— the OpenAlex venue check behind the barrier'svenue_statusflag —year_suffix.py, the pure Chicago a/b assigner behind itsyear_suffixfield, andweb_evidence.py— URL extraction, capture validation and existence checks behind theEVIDENCE-WEBfetch gate, whoseurldate/archiveurlthe barrier also owns, and which also owns the excluded-host policy (SEP + mirrors, IEP, NDPR, PhilPapers — never earn EVIDENCE-WEB)). The barrier also stampssame_work_groupon reprint-shaped entry groups. Since v0.5.0 the barrier also ownsEVIDENCE-ABSTRACTattestation: the enrichment ledger is candidacy only, and the tier requires a live per-source re-fetch whose text hash-matches the bib's (enrich_bibliography.corroborate_abstract; budgeted, fail-closed, bucketed in the report). Phase 6 tools:assemble_review.py,normalize_headings.py,dedupe_bib.py,enrich_bibliography.py,generate_bibliography.py,lint_md.py,check_evidence.py,sanitize_bib.py.skills/philosophy-research/— API search scripts for academic sources (Semantic Scholar, OpenAlex, CORE, arXiv, SEP, IEP, PhilPapers, NDPR), abstract resolution, encyclopedia context extraction, and citation verification (CrossRef). Includes Brave web search fallback and caching, andfetch_web.py— the research-time fetch-and-capture tool (HTML and PDF,--stdinfallback) whose capture files the evidence barrier gatesEVIDENCE-WEBon, and which refuses the excluded encyclopedia hosts (SEP + mirrors, IEP, NDPR, PhilPapers) before any request.output.dumps()inoutput.pyis the one owner of theensure_asciidecision for console output, including the Windows stdout guard behind it — never hand-pickensure_asciiat a call site.skills/setup/— The/phillit:setupskill: scaffolds a workspace (.phillit/marker,.env) and safely merges permission rules into the workspace's.claude/settings.json.agents/— Specialized subagent definitions invoked by the literature-review skill.hooks/— Hook scripts:fast_gate.sh(shell pre-filter for per-call gates),bib_validator.py,validate_bib_write.py,metadata_cleaner.py,block_background_bash.py(guards Bash-tool background calls inside subagents),block_subagent_background_dispatch.py(guards Agent/Task background dispatch at the orchestrator — the four PhilLit review agents must run foreground),block_ledger_write.py(denies native file-tool writes to theenrichment_ledger-*.json/cleaning_ledger-*.jsonattestation ledgers — the designated writers write them from inside Python, so the supported pipeline is unaffected; it is not a security boundary, since broadly-allowedBashbypasses it entirely, and it does deny a developer hand-editing a ledger — use the owning script orgit checkout),subagent_stop_bib.sh, and the thinsetup-environment.shSessionStart bootstrap. Also here but not a hook:bib_identity.py, the one owner of bibliography identity, comparison keys, and name folds (normalize_doi,title_key,normalize_pages,normalize_journal,venue_key,year_key,fallback_key,same_work_key,same_work_year,ascii_variants,translit_fold,contract_fold,split_author_list,first_author_name,first_author_surname) — notevenue_keyis a deliberately looser VERIFICATION key for venue names (it folds conference citation forms onto the series name) and must never be used for dedup identity, which isnormalize_journal's job. Author lists are split ONLY throughsplit_author_list(pybtex, brace-aware, no literal fallback) — a literal.split(" and ")keyed a braced corporate author differently from Phase 6;first_author_surnamekeeps the raw text, whileenrich_bibliography.get_author_last_namederives search text from it. It lives inhooks/because that is the directory other components already import from, and it is deliberately absent fromhooks.json. Sites keep their historic names as aliases to the shared objects, so tests assertisidentity; never re-add a local copy.hooks/hooks.json— Plugin hook definitions (single source of truth): SessionStart bootstrap; marker-gated PreToolUse/PostToolUse/SubagentStop.docs/— Project documentation:ROADMAP.md(the work queue: open items only), shared specs (ARCHITECTURE.md,conventions.md,permissions-guide.md),known-issues/(measurement scripts and their data — the reproduction path for measured decisions, not issue write-ups), andideas/(design ideas and deferred plans).tests/— pytest tests for API scripts and hooks.
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.
- today Changed · +3 lines · +428 tokens per session 09f0cf1f3e33
- 4d ago First seen · 183 lines · 4,926 tokens per session scan A 6edd768dd868
PhilLit CLAUDE.md is an instructions file published in the GitHub repository AI-4-Phi/PhilLit (42 stars, last pushed today), licensed Apache-2.0. It adds 5,354 tokens to every session, about $0.0268 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 instructions, from other repositories
worldview-synthesis CLAUDE.md
Instructions for 2389-research/worldview-synthesis, covering worldview synthesis plugin, skills included, worldview-synthesis (main skill), key patterns and the six phases.
openended-philosophy-mcp GEMINI.md
Gemini CLI instructions for angrysky56/openended-philosophy-mcp, covering gemini analysis: openended philosophy mcp, 1. overall assessment, 2. issues, 2.1. simplistic similarity metrics and 2.2. complex synthesis method.
vscode buildNext.instructions.md
Working notes and architecture documentation for the new esbuild-based build system in build/next. Use when making changes to the new build pipeline (transpile/bundle commands, NLS plugin, source-map handling, resource copying, or self-hosting watch tasks).
spec-kit AGENTS.md
AGENTS.md instructions for github/spec-kit, covering agents.md, about spec kit and specify, quickstart — add a new integration in 5 steps, integration architecture and integrationmanifest — file tracking.
codex AGENTS.md
AGENTS.md instructions for openai/codex, covering rust/codex-rs, the codex-core crate, code review rules, crate api surface and model visible context.
langchain AGENTS.md
AGENTS.md instructions for langchain-ai/langchain, covering global development guidelines for the langchain monorepo, corridor security analysis, project architecture and context, monorepo structure and development tools & commands.