Borrowing it
Nothing to install: this file belongs to davidbuenov/dbv-md-reader. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/davidbuenov/dbv-md-reader/master/.claude/commands/build.mdgit clone --depth 1 https://github.com/davidbuenov/dbv-md-readerWrote 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/commands/davidbuenov/dbv-md-reader/build)<a href="https://agentmods.dev/commands/davidbuenov/dbv-md-reader/build"><img src="https://agentmods.dev/badge/commands/davidbuenov/dbv-md-reader/build/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.
<a href="https://agentmods.dev/commands/davidbuenov/dbv-md-reader/build"><img src="https://agentmods.dev/badge/commands/davidbuenov/dbv-md-reader/build.svg" alt="Reviewed on agentmods" width="80" 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.1 | $0.00018 | $0.01105 |
| Opus 5.5 | $0.00007 | $0.00442 |
| Sonnet 5.5 | $0.00004 | $0.00221 |
| Haiku 4.5 | $0.00002 | $0.00111 |
Grade A, and why
build 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 4d ago.
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.
What it actually says
Ejecuta ahora la fase Build (/build) del ciclo Spec→Plan→Build→Test→Simplify→Ship definido en
dbv-specs-ops/docs/MASTER_PROMPT.md (<workflow>, paso 3).
Antes de escribir código: si no existe un plan aprobado (dbv-specs-ops/task.md con pasos, o
dbv-specs-ops/implementation_plan.md para tareas complejas), no rechaces la petición — ejecuta
primero, en la misma respuesta, las fases previas que falten (Spec → Plan) siguiendo <specs_check> del
MASTER_PROMPT.md, y continúa con el Build en cuanto estén resueltas.
Implementa de forma incremental ("one slice at a time"), siguiendo las normas de codificación y
cabeceras de fichero del MASTER_PROMPT.md. Etiqueta con @spec REQ-NN el código que implemente un
requisito con ID.
🕸️ Grafo de fases — nodo activo: Build
Fase 3: implementación incremental, una porción cada vez, con cabeceras y etiquetas @spec.
Al entrar — la transición por la que llegas fija la condición, cómo ejecutar esta fase y qué evitar:
- desde Plan (PROVIDES_INPUT_FOR) — si: El plan ha superado el Architect Review y el usuario lo ha aprobado explícitamente.
- Cómo: Implementa una porción cada vez. Cabecera de project.config.md en cada fichero nuevo, @spec REQ-NN en las funciones que implementan un requisito y entrada en CHANGELOG.md [Sin publicar]. Si contradices ARCHITECTURE.md, regístralo ya en memory.md.
- Evita: Varios return fuera de las Guard Clauses iniciales (un solo return final); excepciones o None donde toca el patrón Result; any en TypeScript; .unwrap()/.expect() en comandos IPC de Rust; todo el React en App.tsx; en Tauri sin bundler, ES modules o una constante isTauri (usa IIFE y runningInTauri).
- desde Test (TRIGGERS) — si: Algún test o Eval falla.
- Cómo: Corrige la causa en el código y anótalo como Fixed en CHANGELOG.md. Si el fallo desmiente un supuesto de SPECIFICATIONS.md, regístralo en Lecciones Aprendidas de memory.md.
- Evita: No relajes ni borres una aserción para poner el test en verde. No repitas un arreglo que ya se revirtió (míralo en la Rejection Memory).
- desde Simplify (TRIGGERS) — si: La revisión deja un hallazgo Crítico que exige cambiar el comportamiento del código, o un refactor rompe los tests.
- Cómo: Vuelve a Build solo para ese hallazgo y repasa Test antes de regresar a Simplify.
- Evita: No mezcles la corrección con funcionalidad nueva. No ocultes el hallazgo rebajando su severidad.
Salidas (salto 1) — a dónde puedes ir y con qué condición:
- Build → Test (LEADS_TO) — si: La porción está implementada, compila o se ejecuta sin errores y está anotada en CHANGELOG.md.
- Cómo: Escribe y ejecuta tests deterministas que citen @spec REQ-NN para cada requisito tocado. Con componentes de IA, añade Evals; con un Agent Plugin, valida plugin.json y mcp.json.
- Evita: No marques una tarea como hecha sin un test en verde. Si un enfoque falla y lo reviertes, regístralo en la Rejection Memory antes de probar otro.
Horizonte (salto 2) — lo que vendrá después y revisará tu trabajo:
- Test ↩ Build (TRIGGERS) — si: Algún test o Eval falla.
- Test → Simplify (PROVIDES_INPUT_FOR) — si: Todos los tests y Evals pasan, y ningún requisito con ID de la tarea se queda sin test.
- Cómo: Haz los tres pases de docs/REVIEW.md (Bugs, Seguridad, Cumplimiento con <coding_standards>) y, si hay Python, ejecuta dbv-lint.py --changed. Después refactoriza para dar claridad sin cambiar el comportamiento.
- Evita: No añadas funcionalidad nueva. Si un refactor rompe tests y lo reviertes, regístralo en la Rejection Memory.
Rutas relativas a dbv-specs-ops/. Lee la 🚫 Rejection Memory de memory.md antes de proponer un enfoque: lo que ya se descartó no se vuelve a proponer sin explicar qué ha cambiado.
$ARGUMENTS
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.
- 4d ago Changed · +31 lines f0260f628287
- 1mo ago First seen · 16 lines · 18 tokens per session scan A 2b8d1a833cd5
build is a command published in the GitHub repository davidbuenov/dbv-md-reader (50 stars, last pushed 3d ago), licensed MIT. It adds 18 tokens to every session and 1,105 once invoked, about $0.0001 per session on Opus 5.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-09-04.
Other commands, from other repositories
docs-add
Fetch a web source and make its Markdown searchable in this session. Accepts a built-in alias (e.g. "react"), an HTTPS URL, or "name url" to register a custom alias.
web-add
Fetch a web source and make its Markdown searchable in this session. Accepts a built-in alias (e.g. "react"), an HTTPS URL, or "name url" to register a custom alias.
docs-search
Search fetched Markdown by regex and pull surrounding context for the best hits. Optionally restrict to one source alias.
web-search
Search fetched web-source Markdown by regex and pull surrounding context for the best hits. Optionally restrict to one source alias.
docs-refresh
Re-fetch a cached source, ignoring the 7-day cache. Use when upstream content has changed.
web-refresh
Re-fetch a cached web source, ignoring the 7-day cache. Use when upstream content has changed.