conventions

Explains AGENTS.md auto-injection and shell-versus-files tool selection in Ava Code.

1|Updated Aug 14, 2026
One-click install
npx skills add https://github.com/zhiyuan-zhang0206/Ava --skill conventions-zhiyuan-zhang0206
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: conventions
Source: https://github.com/zhiyuan-zhang0206/Ava/tree/main/ava_builtins/plugins/ava_code/skills/conventions
Command: npx skills add https://github.com/zhiyuan-zhang0206/Ava --skill conventions-zhiyuan-zhang0206

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Coding agents sometimes miss project conventions because AGENTS.md context fails to surface, or they pick the wrong tool — reading files via shell cat, using grep where ripgrep is faster — causing timeouts and missed instructions. This Skill documents how context injection works and which tool to use when. ## Core Features & Use Cases - AGENTS.md injection mechanics: Explains the primary path (read AGENTS.md after setting cwd) and the fallback path (any file read scans upward to git root or $HOME), including dedup state and auto-reset after compaction. - Shell vs files tool choice: Clarifies that git, grep, tests, and builds go through ava.shell.run while known single-file reads and writes use ava.files, with common mistakes called out. - ripgrep over grep: Shows benchmark data proving rg is roughly 50x faster than grep -rn on repos with many .worktrees checkouts, plus fallback grep flags when rg is unavailable. - Use Case: Your agent just ran cat src/main.py via shell and never saw the project's AGENTS.md rules. This Skill explains why shell reads bypass injection and tells you to use ava.files.read instead. ## Quick Start Ask the agent why AGENTS.md conventions are not appearing and whether to use shell or file tools for reading source code.

Frequently Asked Questions about conventions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
Why is AGENTS.md not showing up after reading a file?▼

AGENTS.md injection only triggers through ava.files.read, which scans the path upward to the farther of git root or $HOME. Reading via ava.shell.run with cat bypasses the SDK entirely, so no injection occurs. Also, already-injected paths are deduplicated until compaction resets the state.

When should I use shell vs file tools to read source code?▼

Use ava.files.read for known single-file reads and writes, which also triggers AGENTS.md auto-injection. Use ava.shell.run for git, grep, tests, and builds. Never read files via shell cat, since it bypasses context injection.

Why does grep -rn time out on my repository?▼

grep -rn scans every .worktrees checkout, each a full tree, often exceeding the 30 second timeout. Use rg instead, which respects .gitignore and runs in about 0.07 seconds versus over 15 seconds for grep on the same repo.

Can ava.files.read handle wildcards like *.py?▼

No, ava.files does not support wildcards. For pattern-based file listing, use ava.shell.run with a command like ls *.py or rg --files instead.

What if ripgrep is not installed on the machine?▼

Install rg via Homebrew on macOS or apt on Linux, matching standard Ava machine setups. As a fallback, use grep -rn with --exclude-dir flags for .worktrees, .venv, and node_modules to avoid timeouts.