import{c as t,Q as a,j as n,m as s}from"./chunks/framework.BPKcPtvA.js";const u=JSON.parse('{"title":"The Repo Is the Spec","description":"","frontmatter":{},"headers":[],"relativePath":"blog/posts/repo-is-spec.md","filePath":"blog/posts/repo-is-spec.md","lastUpdated":1780488472000}'),o={name:"blog/posts/repo-is-spec.md"};function i(r,e,l,p,h,c){return a(),n("div",null,[...e[0]||(e[0]=[s(`<h1 id="the-repo-is-the-spec" tabindex="-1">The Repo Is the Spec <a class="header-anchor" href="#the-repo-is-the-spec" aria-label="Permalink to &quot;The Repo Is the Spec&quot;">​</a></h1><p><strong>June 5, 2026</strong></p><p>The single most important principle in agentic engineering: all context must live in the repository.</p><h2 id="the-problem" tabindex="-1">The Problem <a class="header-anchor" href="#the-problem" aria-label="Permalink to &quot;The Problem&quot;">​</a></h2><p>Imagine dropping a new engineer into a project at 3AM. They need to know what the project does, how to run tests, where to put new code, and what conventions to follow.</p><p>If the answer to any of these is &quot;ask Bob,&quot; you fail. If the answer is &quot;read CLAUDE.md in the repo,&quot; you win.</p><h2 id="what-the-repo-should-contain" tabindex="-1">What the Repo Should Contain <a class="header-anchor" href="#what-the-repo-should-contain" aria-label="Permalink to &quot;What the Repo Should Contain&quot;">​</a></h2><div class="language- vp-adaptive-theme"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki shiki-themes github-light github-dark vp-code" tabindex="0"><code><span class="line"><span>repo/</span></span>
<span class="line"><span>+-- CLAUDE.md or AGENTS.md    # Agent instructions (the most important file)</span></span>
<span class="line"><span>+-- init.sh                   # Environment setup script</span></span>
<span class="line"><span>+-- feature_list.json         # Tracked features with evidence</span></span>
<span class="line"><span>+-- Makefile                  # Common commands (test, build, lint)</span></span>
<span class="line"><span>+-- tests/                    # Expected outcomes as evidence</span></span>
<span class="line"><span>+-- skills/                   # Reusable skill definitions</span></span>
<span class="line"><span>+-- .mcp.json                 # MCP server configuration</span></span></code></pre></div><h2 id="why-this-matters-for-agents" tabindex="-1">Why This Matters for Agents <a class="header-anchor" href="#why-this-matters-for-agents" aria-label="Permalink to &quot;Why This Matters for Agents&quot;">​</a></h2><p>An agent can only see what you put in front of it. A well-structured repo eliminates tribal knowledge because the agent discovers everything from files. It makes onboarding instant because a new agent reads the same files as the old one. It creates audit trails because every instruction is version-controlled. And it enables multi-agent teams because all agents read from the same source of truth.</p><h2 id="the-rule" tabindex="-1">The Rule <a class="header-anchor" href="#the-rule" aria-label="Permalink to &quot;The Rule&quot;">​</a></h2><p>If an agent needs to know something to do its job, that information must be in a file in the repo. Not in your head. Not in Slack. Not in a README that nobody reads. In a file, checked into version control, readable by any agent at any time.</p><hr><p><em>From Module 1 of the <a href="/">Agentic Engineering Course</a>. The full module covers the agent loop, tool calling, and decision frameworks.</em></p>`,14)])])}const m=t(o,[["render",i]]);export{u as __pageData,m as default};
