describe

A command that writes searchable descriptions for code declarations, such as functions or classes, that do not already have them. These descriptions add plain-language terms that may be missing from the source code.

In plain words
What is it for?
Use it to add descriptions to undescribed declarations in a repository and improve retrieval of relevant code.
Why use it?
It makes code search more likely to find the right declaration when a developer searches for a concept that the code does not name directly. Without these descriptions, search results depend mainly on existing identifiers and documentation.

Command

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 commands/skymanbp/rag-your-code/describe
Clone the repo
git clone --depth 1 https://github.com/skymanbp/rag-your-code
Per session 27 Only the description is in the session, so the agent can decide to use it. The body loads when it is invoked.
When invoked 1,059 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.00027 $0.01059
Opus 5 $0.00014 $0.00530
Sonnet 5 $0.00005 $0.00212
Haiku 4.5 $0.00003 $0.00106

Measured yesterday against content hash a6af5caad796, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

describe 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 yesterday.

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.

commands/describe.md · 105 lines

How it starts

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

/rag-your-code:describe

Write descriptions for declarations that have none. This is the work that turns an index into something worth searching, and nobody but a model that has read the code can do it.

Why this exists

Every unit's description is indexed. By default it is generated without a model: the identifier humanised, parameters and callees listed, the docstring appended. It introduces no vocabulary the source did not already have — which is exactly why a query for a concept nobody wrote down finds nothing.

Measured on this project's own rulers, moving from generated to agent-written descriptions took first-place accuracy from 0.314 to 0.429 and top-3 from 0.471 to 0.600. Against a Grep loop over the same questions it is the difference between 22.9% and 58.6% right-file-first.

The line this paragraph used to carry — that a cold index loses to Grep — came from one undescribed repository and did not survive being asked of two more. Cold, this side wins on Flask (37.1% to 22.9%), ties on cobra (17.5%), and lost on the retired subject. Which side wins undescribed depends on how much prose the repository already contains. What does not depend on it is the gain above.

What to do

  1. See what is pending:

    python -m ragyourcode.cli describe status
    
  2. Export a batch — $ARGUMENTS units if the user gave a number, else 20. Each entry carries the unit's source and a written brief:

    python -m ragyourcode.cli describe export --limit 20 > pending.json
    
  3. Read each unit's source and write its description. Follow the brief:

    • say what the unit is for in domain terms — the operation, the failure it handles, the thing a person would search by;
    • include the obvious synonyms for each, because those synonyms are the entire mechanism;
    • do not restate the signature or list parameter names — that text is already indexed;
    • do not describe behaviour the source does not show; the source is in the export so you can check;
    • if a unit is trivial, say so briefly rather than padding it.

Read the full file on GitHub · 105 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. yesterday First seen · 105 lines · 27 tokens per session scan A a6af5caad796

Subscribe to this mod's changes

describe is a command published in the GitHub repository skymanbp/rag-your-code (1 stars, last pushed 5d ago), licensed MIT. It adds 27 tokens to every session and 1,059 once invoked, about $0.0001 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-31.