agentleFS
VeraToolsVeraTools/Vera/skills/vera/SKILL.md

vera

Skill123 starsChanged 30 days agoMITView on GitHub

Code search over the current repository. In a repository with a Vera index, your first search goes through Vera, not grep, rg, or file reads. Run `vera overview` in an unfamiliar repository, `vera search "<what the code does>"` for how or where something works, `vera structural definitions <symbol>` or `vera references <symbol>` when the question names a symbol, and `vera grep "pattern"` for exact text or regex. Fall back to grep after a Vera call has missed, or use your usual search tools when no index exists.

2 other projects use a version of this.

Adopted by

Most recently taken up by

  • Other versions2 projects use a version of this.

    Word for word · 1

    1. VeraTools/vera★ 123100% same

    Edited · 0

    None found.

    Wrote their own version · 1

    1. adrianfoehl/kira-agent-system★ 0same name

    How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.

The file

We split this skill into the rules it gives an agent

4 rules. About 0 are common, 1 is distinctive, and 3 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 3

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Use the following in indexed repositories.

    line 12
  2. Very specific:

    Search behavior, not nouns: "JWT expiry handling", not "auth" or "utils".

    line 37
  3. Very specific:

    Start broad with --compact (signatures only, fewer tokens), then narrow with --lang, --path, --type, --limit.

    line 39
  4. Very specific:

    Add --intent "<goal>" when the query is vague but the goal is clear.

    line 41

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Vera

Ranked code search over an indexed repository. Results are markdown codeblocks: path:line_start-line_end symbol_type:symbol_name (split symbols render as name (part N) in that position, the bare name plus the part suffix), then the code. The returned order is authoritative. When a response includes score, it is a pipeline-specific ranking value, not a probability or a value to compare across queries.

First search

Use the following in indexed repositories. Without an index, follow Recovery; without a shell, use your usual search tools.

  1. Unfamiliar repository: vera overview (languages, entry points, hotspots) instead of ls and README skimming.
  2. Then the question's first lookup goes through the table below. Do not "check with grep first".

Pick the tool

Question shapeDo this
How or where does something workvera search "env file loading decision"
The question names a function, class, or config keyvera structural definitions make_config, then vera references make_config for callers
Who calls or what is called by a symbolvera references make_config / vera references make_config --callees
Exact text or regexvera grep "before_request" (line numbers always shown; --limit <N> caps results)
Enumerate every route, env read, implementationvera structural routes / vera structural env / vera structural impls <symbol>
Documentation on a topicvera search "deploying behind proxy" --scope docs
Files changed in this branchadd --changed, --since <rev>, or --base <rev> to any of the above
Edit the same pattern in many files mechanicallyrg
Read a file you already know the path and lines ofRead it directly

vera references resolves split-symbol call sites, vera structural definitions finds split symbols by bare name and deduplicates to the earliest declaration, and vera dead-code deduplicates split parts by (symbol, file).

Narrow callers or callees with vera references make_config --path 'src/**/*.rs'; repeat --path to include several patterns, just as with search.

Search well

  • Search behavior, not nouns: "JWT expiry handling", not "auth" or "utils".
  • Pass several angles in one call: vera search "OAuth token refresh" "JWT expiry" "auth middleware".
  • Start broad with --compact (signatures only, fewer tokens), then narrow with --lang, --path, --type, --limit.
  • --path is relative to the repository root: --path src/flask, --path "tests/**/*.py". Absolute paths inside the repository are accepted and rewritten; paths outside it match nothing.
  • Add --intent "<goal>" when the query is vague but the goal is clear.
  • --deep expands the query and merges rankings; use it only after normal search misses.

Recover from a miss

  • Top hit is a usage site, not the definition: vera structural definitions <symbol> with the name from the hit. Do not try more phrasings.
  • Hit shows a call but not the caller chain: vera references <symbol>.
  • Two searches returned the same region: stop searching and read that code.
  • The code is in a dependency (site-packages, uv or pip caches, vendored trees outside the index): use rg there, then return to Vera for repository code.
  • For an indexed dependency tree, use vera -C <dir> search "query" (put -C <dir> before the subcommand); each tree keeps its own .vera/. To search the project and that tree together, use vera search "query" --also <dir>: in text output, hits from the other tree show absolute paths; --json keeps relative file_path values and adds an absolute repo field.

Treat hits as leads

  • A hit is a lead, not evidence. Verify behavior against the hit's code; open the file only for lines the hit did not include.
  • Cite path:line from code you actually read.
  • A stale-index warning does not invalidate hits. After editing files, run vera update . from any directory; it refreshes the repository root's index.

Recovery

If you will work in a code repository without an index, run vera index . from its root. A first index can take several minutes: use a long shell timeout or run it in the background, and use rg until it finishes. An interrupted API-mode run reuses its finished embeddings. Otherwise, or without shell access, use your usual search tools.

SymptomFix
no index foundFollow the indexing and fallback guidance above
no indexed file matches <path>Use a root-relative --path; stderr suggests a wildcard directory form when one applies
Stale results after editsvera update . (or vera watch .); works from any subdirectory
A file is missing from resultsvera explain-path path/to/file
Local model or ONNX errorvera doctor --probe, then references/troubleshooting.md
Missing local assetsvera repair
Install, API keys, backendsreferences/install.md
MCP serverreferences/mcp.md

References

  • Install and setup: install, setup, API and local config, .veraignore rules
  • Query patterns: more query examples and rg guidance
  • Troubleshooting: common errors and fixes
  • MCP: optional MCP server usage

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.