know.2nth.ai Software Software for agents
software · Software for agents · Skill Leaf

Where this branch meets Agents.

The Agents domain says agents are software, not prompt soup. This leaf is the concrete consequence: the repository is where an agent's memory, skills, and grounding live — its context, workspace, and audit trail all at once. The repo is what it reads, version control is how it's instructed and how its work is gated, and CI is the safety net that makes its autonomy safe. Repo-ready is agent-ready.

Repo-as-context Memory + skills Grounding Agent PRs CI safety net

The repository is the context window.

When a coding agent starts work, the first thing it does is read the repository — the file tree, the README, the existing code, the tests. The repo is its context. A clean, well-structured, well-documented repo gives the agent everything it needs to act competently; a chaotic one leaves it guessing, and a guessing agent produces guessing-quality work.

This reframes a lot of "AI strategy" as something far more mundane and achievable: good repository hygiene. The agent isn't reasoning about your business in the abstract — it's reasoning about what's in the repo. Everything that helps a new engineer get oriented (clear layout, honest docs, meaningful tests, sensible names) helps the agent get oriented, on every single task. The repo is the interface between your intent and the agent's action.

Context is a budget — structure spends it well

An agent can only hold so much in its context at once. A repo that's legible — predictable structure, a good README, an agent-instructions file pointing to what matters — lets the agent find the relevant 2% fast instead of burning its budget crawling the other 98%. Good structure isn't just nice for humans; it's literally what makes the agent efficient and accurate.

Three jobs the repository does.

“Give the agent memory,” “teach it a skill,” and “keep it grounded” sound like three products to buy. They’re three uses of one thing you already have: files under version control. Pulling them apart is worth doing, because they fail in different ways.

JobWhat it isWhere it lives in the repoFailure mode if missing
MemoryWhat the agent has learned and decided over time — carried across sessions a stateless model can’t hold itselfCLAUDE.md notes, decision records (ADRs), the commit & PR trail, a /memory or docs/ folderThe agent re-learns the same context every session and repeats past mistakes
SkillsReusable capabilities — how to do a specific task, the same way every timeSKILL.md folders (instructions + scripts/, references/, assets/)Every agent improvises; quality is inconsistent and non-transferable
GroundingTie to the current truth of the system — the live state it must reason over, not a guessThe code itself, schemas, configs, runbooks, tests, and structured data the agent can read or fetchThe agent confidently invents APIs, fields, and facts that aren’t real

Memory has tiers, and only the durable ones belong in the repo. The model’s context window is short-term memory — fast, but gone the moment the session ends. Anything that must survive is long-term memory: software writing notes back to durable storage and reading them in next time. In a repo that storage is just committed text — an updated CLAUDE.md, an architecture decision record, a note in docs/. And the repo gives you a tier most systems lack for free: git history is episodic memory — every change, who made it, when, and the reasoning in the PR. The agent can read the log to recover not just what the code is but how it got that way.

Grounding is not memory, and conflating them causes real bugs. Memory is the agent’s accumulated internal notes; grounding is its tie to external current truth. A note that says “the orders table has a status column” is memory — and it goes stale the instant someone renames the column. Grounding is reading the live schema, the actual code, the real config at the moment of the task. The discipline: keep memory for intent and decisions (“why we did it this way”) and ground facts against the live source (“what is true right now”). When an agent hallucinates a field that doesn’t exist, it’s almost always trusting stale memory where it should have grounded.

For data too large to sit in the repo — a document corpus, a warehouse, a customer record set — grounding moves from “read the file” to retrieval: the agent fetches the relevant slice on demand, classically via vector search (RAG) or, increasingly, through a tool call over MCP. The repo still holds the wiring — which sources exist, how they’re reached, what’s in scope — even when the data itself lives elsewhere. The principle is unchanged: the agent reasons over current, retrievable truth, and the configuration of that truth is versioned.

Why “files under review” beats a memory product

Because all three jobs reduce to committed files, they inherit the repo’s whole discipline at no extra cost: memory and skills evolve through pull requests, so a change to what the agent knows or how it behaves is reviewable, attributable, and reversible — not drifting in someone’s chat history. You can git blame a behaviour, git revert a bad instruction, and diff exactly how an agent’s context changed between releases. A black-box “agent memory” service gives you none of that. The next three sections are the mechanics: how skills are packaged, how the agent’s work is gated, and how CI keeps it all honest.

Capabilities as committed files.

The most important agent-era addition to a repo is text written for the agent — instructions, conventions, and reusable procedures, committed and versioned like everything else.

CLAUDE.md / AGENTS.md

The project briefing

A root file telling the agent how the project is laid out, how to build and test, and what conventions to follow. The agent reads it first, every time.

SKILL.md

Reusable procedures

A skill is a folder with a SKILL.md — instructions plus optional scripts the agent loads when a task calls for it. Capabilities shipped as files, not prompts.

Tests

Executable specification

Tests document what the code is supposed to do, in a form the agent can run. They're instructions the agent can verify itself against.

Conventions

The house style

Linters, formatters, and a style guide in the repo mean the agent writes code that fits — and CI rejects it when it doesn't.

The deeper point: an agent's "capabilities" aren't a property of the model — they're files in your repo. Agent Skills are version-controlled instructions; a CLAUDE.md is version-controlled context; tests are version-controlled specification. Improving what your agents can do is mostly writing and committing better files, which means it's reviewable, attributable, and compounding — exactly like the rest of this branch. You don't tune a black box; you edit text and merge a PR.

The agent works the way everyone works.

An agent doesn't get a special back door into your systems — and that's the point. It works the identical loop a developer does: clone the repo, create a branch, make focused commits, push, and open a pull request. The PR shows a human exactly what changed, with a description, a diff, and a discussion thread. Nothing the agent did reaches main until that PR passes CI and a reviewer approves it.

This is what makes "let an agent change our code" a sane sentence. The agent's autonomy is real — it can do a lot of work unattended — but it's bounded by the same gate as everyone else's. A reviewer reads the diff, not the agent's reasoning; the test suite runs regardless of who wrote the change; and if it's wrong, git revert takes it back as cleanly as any human mistake. The workflow doesn't change because the author is an AI; that uniformity is the safety.

This site is built this way

know.2nth.ai's own content — including this leaf — is authored by agents working in exactly this loop: a branch, commits, a pull request, CI building a preview, and a merge to main that auto-deploys to production. The agent has real leverage and the work is fully reviewable and reversible. That's not a future state; it's how the page you're reading got here.

The automated reviewer that never tires.

Human review doesn't scale to the volume of change a fleet of agents can produce — and it shouldn't have to. Continuous integration is the reviewer that does scale. Every agent PR runs the full pipeline: linters, type-checks, the test suite, a build, often a preview deploy. A regression gets caught automatically, in minutes, before a human spends attention on it. The test suite is, in effect, an automated reviewer that checks every agent change against the project's actual requirements, tirelessly.

The implication for investment is sharp: a strong test suite is the highest-leverage AI-safety measure a team can build. Not a model upgrade, not a clever prompt — tests. The better your tests, the more autonomy you can safely give an agent, because the more confidently the pipeline can tell a good change from a bad one without a human in the loop. And agents increasingly read the pipeline's output themselves: a failed test becomes feedback the agent acts on, fixing its own PR before review.

Defence in depth for autonomous change

The layers stack: the agent runs in a sandbox (restricted network/filesystem) so it can't reach secrets; its work lands on a branch, never directly on main; CI runs every check automatically; a human reviews the diff; and version control makes any merge instantly reversible. No single layer has to be perfect — together they make agent autonomy a controlled, auditable operation rather than a leap of faith.

Repo-ready is agent-ready.

The single most useful reframe for any organisation asking "how do we adopt AI?": the answer is mostly not about AI. It's about getting your work into a properly run repository. There's no separate "AI enablement" project — there's repository hygiene, and the agents follow.

The agent-readiness checklist

Code (and configs, and process rules) in version control. A sane branch-and-PR workflow with protected main. Tests that run in CI and mean something. A CLAUDE.md / AGENTS.md that orients an agent. Clear structure and docs. Secrets out of the repo, in a secrets manager. Tick those and you can hand an agent real work tomorrow. Miss them and the first step isn't a model — it's the foundation, which is the software work this whole branch describes.

This is the honest, and genuinely good, news: the work that makes a codebase agent-ready is the same work that makes it maintainable, auditable, and pleasant for humans. You were going to want all of it anyway. Agents just raise the return on doing it.

An affordable path to real AI leverage.

Foundations first, frontier models second

For SA teams, this is the most cost-effective AI roadmap there is: you don't need a frontier budget or a research team to get leverage from agents — you need disciplined repositories. Get the code, configs, and process rules into Git with a real PR-and-CI workflow, and the same agents anyone else uses become genuinely productive in your codebase, with a full audit trail that satisfies POPIA and FSCA change-control reviews for free. The investment is engineering hygiene, which is affordable, durable, and useful with or without AI. The agents are the upside on top.

Where this links in the tree.

software/ai-is-software
AI is just software
The thesis this leaf operationalises — software and version control are the harness that turns a model into work.
software/github
GitHub & code repositories
The platform where agents read repos, open PRs, and ship — via GitHub MCP and Actions.
software/ci-cd
CI/CD & automation
The pipeline that gates every agent change — the automated reviewer that makes autonomy safe.
software/planning-with-agents
Planning with agents
The process-level continuation — the backlog as executable spec under version control, keeping the operator's queue full of shippable, well-specified work.
software/orchestrating-agents
Orchestrating agents
Running several agents at once on top of this foundation — execution modes, worktrees, forge automation, and the honest token cost.
agents
Agents hub
"Agents are software, not prompt soup." The frameworks, protocols, and models this leaf grounds in real repos.
agents/skills
Agent Skills
Capabilities as version-controlled SKILL.md files — the format behind "instructions in version control".
agents/rearchitecture
Agents, data & trust
The grounding case in full — Ng × Chase on why agents need structured, owned data to stay tied to the live state.
agents/mcp
Model Context Protocol
The seam where grounding scales beyond the repo — the agent fetches current data on demand via a tool call.
agents/coding-cli-agents
Coding CLI agents
Claude Code, Codex CLI, Copilot CLI — the agents that read repos and open the PRs described here.
software/waterfall
Waterfall
The discipline this replaces — the gate here is a reviewed PR and green CI, not a signed phase document.

Primary sources only.