grounded-citations

grounded-citations is a skill for Claude Code, Codex from NousResearch/hermes-agent. It costs 16 tokens per session (3,038 once invoked), scanned A, original, MIT.

A system for attaching numbered references and source evidence to claims in answers and documents.

In plain words
What is it for?
Grounding research, reports, and other written answers in retrieved sources and checking that citations match the supplied evidence.
Why use it?
It makes externally sourced statements easier to verify and flags claims that lack supporting evidence.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions subagents.

Good fit Grounding research, reports, and other written answers in retrieved sources and checking that citations match the supplied evidence.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/nousresearch/hermes-agent/grounded-citations
About the project

Hermes Agent is an AI assistant that learns from its use by creating and improving skills, retaining knowledge, searching past conversations, and adapting to its users. It is for people who want to run an agent through a terminal or messaging platforms while connecting it to different AI models and scheduled tasks.

NousResearch/hermes-agent · 256,246 stars · on GitHub · hermes-agent.nousresearch.com

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.

Any agent
npx skills add NousResearch/hermes-agent --skill grounded-citations
Clone the repo
git clone --depth 1 https://github.com/NousResearch/hermes-agent

Made for: Claude Code, Codex.

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 grounded-citations

README.md
[![agentmods](https://agentmods.dev/badge/skills/nousresearch/hermes-agent/grounded-citations/github.svg)](https://agentmods.dev/skills/nousresearch/hermes-agent/grounded-citations)
Your own site
<a href="https://agentmods.dev/skills/nousresearch/hermes-agent/grounded-citations"><img src="https://agentmods.dev/badge/skills/nousresearch/hermes-agent/grounded-citations/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for grounded-citations

Your own site · 80×15
<a href="https://agentmods.dev/skills/nousresearch/hermes-agent/grounded-citations"><img src="https://agentmods.dev/badge/skills/nousresearch/hermes-agent/grounded-citations.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 16 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,038 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Snyk warn 7 Sept 2026
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Rogue Agent · line 38
    Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
    Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
How audits are shown
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.00016 $0.03038
Opus 5.5 $0.00006 $0.01215
Sonnet 5.5 $0.00003 $0.00608
Haiku 4.5 $0.00002 $0.00304

Measured 1mo ago against content hash 19fba3a4ceed, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

grounded-citations scanned grade A with 1 finding 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 1mo ago.

The scan reads SKILL.md. This mod also ships 2 executable files (scripts/_hermes_home.py, scripts/sources.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

`browser_navigate`, or `terminal` (curl, CLIs).
Origin

Copies of this mod

3 near-identical copies found in the catalogue:

skills/research/grounded-citations/SKILL.md · 258 lines

How it starts

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

Grounded Citations

Every claim taken from an outside source gets an inline numbered citation and a Sources: list, Perplexity-style. A ledger script owns the url → [n] mapping so the numbers and URLs come from retrieval, never from memory — the model only ever emits small integers it was handed.

For high-stakes work the same ledger doubles as a fact-checking chain: verbatim quotes are attached to each source (rejected unless they literally appear in the fetched page text), claims from model knowledge are flagged [unverified], and verify --evidence fails any draft whose cited sources carry no evidence.

This skill covers answers in chat, written documents (markdown, PDF, docx, slides), and research reports. It does not cover academic BibTeX pipelines — for conference papers use the arxiv skill, which this skill feeds (see references/citation-formats.md).

When to Use

Use whenever an answer or artifact rests on information you fetched rather than knew:

  • Research, comparisons, news summaries, "what is the current state of X"
  • Any deliverable you write to disk that quotes, paraphrases, or reports outside facts — reports, briefs, docs, decks, wiki pages
  • Fact-finding where the user will want to check your work
  • Multi-source synthesis where conflicting sources must be attributed

Skip inline citations when the retrieval is incidental to another task — a quick syntax/version lookup mid-coding, casual conversation, creative writing. Mention a URL only if the user would plausibly want the link.

Prerequisites

None beyond the standard toolset. scripts/sources.py is stdlib-only Python 3. Retrieval comes from whatever is configured: web_search, web_extract, browser_navigate, or terminal (curl, CLIs).

Ledger location: $HERMES_HOME/cache/citations/ledger.json (profile-aware). Override per task with --ledger <path> or HERMES_CITATION_LEDGER.

How to Run

S=~/.hermes/skills/research/grounded-citations/scripts/sources.py

python "$S" reset                                  # start a clean ledger
python "$S" add https://example.com/a --title "A"  # prints: [1]
python "$S" add https://example.com/b --title "B"  # prints: [2]
python "$S" list                                   # ledger table
python "$S" render                                 # Sources: block
python "$S" verify draft.md                        # catch bad citations

Read the full file on GitHub · 258 lines

Files

What ships with it

4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

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. 1mo ago Changed · +4 lines 19fba3a4ceed
  2. 1mo ago Changed · +21 lines ef300e11c138
  3. 1mo ago First seen · 233 lines · 16 tokens per session scan A 55083f47af62

Subscribe to this mod's changes

grounded-citations is a skill published in the GitHub repository NousResearch/hermes-agent (256,246 stars, last pushed today), licensed MIT. It adds 16 tokens to every session and 3,038 once invoked, about $0.0001 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

xlsx

Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .xltx, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from…

asgeirtj/system_prompts_leaks · 206 tokens

options

Present multiple design options as a vertical stack of anchored turns.

asgeirtj/system_prompts_leaks · 13 tokens

notion

Search, read, create, and update Notion pages via the Notion MCP.

asgeirtj/system_prompts_leaks · 20 tokens

content-engine

Create platform-native content systems for X, LinkedIn, TikTok, YouTube, newsletters, and repurposed multi-platform campaigns. Use when the user wants social posts, threads, scripts, content calendars, or one source asset adapted cleanly across platforms.

affaan-m/ECC · 55 tokens

mem0-test-integration

Verify a Mem0 integration produced by /mem0-integrate. Runs in the same workspace on the same branch (loose coupling) — installs dependencies, runs the repo's native test suite, then exercises a real end-to-end smoke flow against the user's API key. Produces a scorecard. TRIGGER when: user has just run /mem0-integrate…

mem0ai/mem0 · 207 tokens

article-writing

Write articles, guides, blog posts, tutorials, newsletter issues, and other long-form content in a distinctive voice derived from supplied examples or brand guidance. Use when the user wants polished written content longer than a paragraph, especially when voice consistency, structure, and credibility matter.

affaan-m/ECC · 57 tokens