RenderATL · 2026Technical field note · 30 min

The talk

Scaling AI-assisted development in large codebases

Making codebases easier for agents to understand, build high-quality features in, and easier for humans to review.

Adewale “Ace” Abati
Developer Advocate
Amsterdam, NL
@ace_kyd
How we got hereOpening · 01
Jun 2024
Claude logo

Claude 3.5 Sonnet

Coding felt different

Nov 2024
Model Context Protocol logo

MCP

Models connected to tools

Jan 2025
goose logo

goose

Early MCP-native agent

Today
Kohai writing code on a laptop

Agents ship code

Build, run, test, repeat

Room checkProblem · 01

Hands up

A quick room check 👋🏽

AWho uses coding agents almost every day?usage
BWho trusts the output enough to ship it without review?trust
Define the problemProblem · 02

What large actually means

Large codebases demand more than just vibe.

Dropping an agent into one with a vague prompt is like sending in a junior developer without onboarding, context, or review.

[01]

Many people

Contributors bring different preferences, habits, and assumptions to the same project.

[02]

Scale

Millions of lines, monorepos, services, packages, and deep dependency graphs.

[03]

History

Legacy code carries decisions, migrations, and caveats the code may never explain.

[04]

Feature work

One feature can cross ownership, shared state, tests, data, and deployment.

Failure equationProblem · 03

Why agentic coding still fails

Most failures start with two gaps.

01 / UNDERSTANDING

Missing context

The agent sees code, but misses the dependency, convention, ownership, or caveat that makes a feature correct.

+
02 / CONTROL

Guidance without enforcement

Instructions can guide the agent, but it can still go beyond the task, skip a check, or declare success too early.

Today · the shiftProblem · 04

The thesis

Models and harnesses will keep changing. The repository remains the only constant.

It is the shared layer where every agent can find what it needs, stay within scope, and meet the same quality controls.

Model keeps changing Harness varies by team Repository the shared layer Context find the work Scope Plan changes Quality enforce the bar
A quick introductionAbout · 01
Adewale Ace Abati standing against a warm brown studio background

Adewale 'Ace' Abati

I help developers understand and adopt technical products.

  • Staff Developer Advocate, ex-Block
  • GitHub Star
  • Ambassador, Agentic AI Foundation (AAIF)
The planApproach · 01

What does this look like?

Put the operating model around the repository.

The repo is already on every developer's machine. Make it the consistent layer across model and harness choices.

Guide give it context Enforce Keep a standard Equip add capability on demand Verify Test & Review Repository the consistent layer
Guide · persistent contextGuide · 01

AGENTS.md

Give the agent more context than it can infer from code.

A versioned place for the commands, conventions, and checks every agent should know.

Project example · AGENTS.mdmarkdown
## Navigate + set up
pnpm dlx turbo run where <project>
pnpm install --filter <project>
Confirm package.json#name (ignore the root)

## Test the package
Follow .github/workflows
pnpm turbo run test --filter <project>
pnpm lint --filter <project>
Add tests for changed behavior. Keep the suite green.

## Before committing
PR: [<project>] <Title>
Run pnpm lint && pnpm test
Using Claude Code?It reads CLAUDE.md. Use /init for a first draft, or import AGENTS.md to share one source.
Different reader, different contextGuide · 02

AGENTS.md vs README.md

README helps people start. AGENTS.md helps an agent work here.

Instructions guide behavior, not guarantee it. Review generated context and add the caveats only maintainers know.

FOR PEOPLE

README.md

What the project is, how to set it up, and how people contribute.

vs
FOR AGENTS

AGENTS.md

What commands to run, which boundaries matter, code style guidelines, testing and security considerations and how work should be reviewed.

Put local context beside the codeGuide · 03
repository map● ● ●
/AGENTS.md          # shared context
├── store/
│   ├── AGENTS.md   # local context
│   └── favorites.ts
└── pages/
    ├── AGENTS.md   # section context
    └── dashboard/
        ├── AGENTS.md   # deeper context
        └── index.vue
Large monorepos?

Keep shared context at the root. Put module-specific context beside the code it applies to.

Enforce · deterministic controlsEnforce · 01

Hooks

Run the right check at the moment it matters.

Tool hooks can trigger commands after an edit, before a tool call, or when the agent tries to stop.

.claude/settings.jsonclaude code
// run lint automatically after every file edit
"hooks": {
  "PostToolUse": [{
    "matcher": "Edit|Write",
    "hooks": [{
      "type": "command",
      "command": "pnpm",
      "args": ["lint:fix"]
    }]
  }]
}
Same idea, different discovery paths
Claude Code.claude/settings.json
Codex.codex/hooks.jsonexperimental · enable codex_hooks
goose*/hooks/hooks.json
Claude Code · .claude/settings.jsonConstrain · 02

Hooks in practice

Claude Code has 31 hook events across the agent lifecycle.

PreToolUseBlock a risky command before it runs.
"PreToolUse": [{
  "matcher": "Bash",
  "hooks": [{ "type": "command", "command": "bash",
    "args": [
      "${CLAUDE_PROJECT_DIR}/scripts/hooks/deny-risky.sh"
    ] }]
}]
PostToolUseFormat files after a successful edit.
"PostToolUse": [{
  "matcher": "Edit|Write",
  "hooks": [{ "type": "command", "command": "pnpm",
    "args": ["lint:fix"] }]
}]

Session and environment

SessionStartSetupInstructionsLoadedConfigChangeCwdChangedDirectoryAddedFileChangedWorktreeCreateWorktreeRemovePreCompactPostCompactSessionEnd

Turn

UserPromptSubmitUserPromptExpansionMessageDisplayNotificationStopStopFailure

Tool loop and MCP

PreToolUsePermissionRequestPermissionDeniedPostToolUsePostToolUseFailurePostToolBatchElicitationElicitationResult

Agents and tasks

SubagentStartSubagentStopTaskCreatedTaskCompletedTeammateIdle
Equip · progressive disclosureEquip · 01

Skills - Skills.sh

Load specialist context only when the task needs it.

Skills use progressive disclosure. Their full instructions and resources enter context only when they are relevant.

skills/security-review/SKILL.mdloads when relevant
---
name: security-review
description: Review Vue and API changes for XSS and exposed secrets.
---
# when invoked: inspect changed .vue and server/api files
# return the file, line, risk, and recommended fix
Why it mattersAlways-on context stays lean. Specialist workflows arrive just in time.
Equip · reusable disciplineEquip · 02

Skills in the wild

Add a repeatable workflow or a whole field of expertise.

Community workflows

mattpocock/skills

≈215k stars
/handoff

Package the current work so another agent can continue.

/resolving-merge-conflicts

Trace both sides of a conflict before resolving it.

/grilling

Keep asking until a plan's unresolved decisions are explicit.

Google Chrome team bundle · preview

Modern Web Guidance

Modern platform

Current CSS, browser APIs, and native web patterns.

Quality

Performance, accessibility, compatibility, and responsible fallbacks.

Retrieval

Local search loads only the relevant guide and its gotchas.

Equip · external systemsEquip · 03

MCP servers - pulsemcp.com

Give the agent a feedback loop with the running system.

MCP can bring the task history, live browser, runtime failures, and internal tools into the same working loop.

Why the change exists

GitHub · Linear · Sentry

Read the issue, ownership history, pull requests, and production trace behind the work.

The agent starts from evidence instead of reconstructing intent from code.
How the feature behaves

Playwright

Open the app, exercise user flows, inspect accessible page structure, and capture test evidence.

The agent can build, run, and retest the same flow while it works.
Why the browser disagrees

Chrome DevTools

Inspect console errors, network requests, DOM state, screenshots, and performance traces in live Chrome.

The browser becomes a source of truth, not a final manual check.
Build your own

Internal MCP

Expose approved services, schemas, documentation, or workflows as tools shaped for your codebase.

The agent can use internal context without hard-coding it into every prompt.
Equip · distribute the setupEquip · 04

Plugins + agents

Package and distribute a working setup.

Use plugins to distribute agents, skills, hooks, and MCP setups to replicate custom functionalities.

Real example · Anthropic official marketplaceClaude Code
/plugin install pr-review-toolkit@claude-plugins-official

# bundles six specialist review agents
comments · test coverage · error handling
type design · code quality · simplification
Team valueDistribute the workflow. Install the same reviewed setup across the team.
Putting it togetherWorkflow · 01

From request to reviewed change

A feature request first becomes a reviewable task list.

Example taskAdd a password reset flow with expiring links, rate limits, and session revocation.
01

Load context

Map authentication, token lifecycle, email delivery, session rules, and existing tests.

Tools that help

AGENTS.md
Relevant skills
MCP or research agent, as needed

OutputEvidence-backed scope
02

Draft task list

Name the affected systems, abuse cases, rollout, and checks before editing.

Tools that help

Planning or memory skills
Task or issue management MCPs
Specialist agents, as needed

OutputProposed tasks + acceptance checks
03

Review and approve

A person corrects assumptions, removes unnecessary scope, and approves the checks.

Review

Human in the loop
Review implementation details
Answer clarifying questions

Human gateApproved boundary
04

Build and review

Implement the approved tasks and run checks while the feature takes shape.

Tools that help

Hooks & Plugins
Subagents
Playwright or DevTools MCP
Implementation / test skills
Diff review

OutputFeature + verification report
Stay ready over timeTakeaway · 01

Keep it healthy

A ready repo is maintained, not declared.

[01]

Use .ignore for search

Exclude generated, vendored, and build paths from ripgrep-based search without changing Git tracking.

[02]

Prune stale context

Delete duplicated or outdated guidance. Keep the context that still prevents real mistakes.

[03]

Name an owner

One person or team owns context, shared extensions, permissions, and review cadence.

The idea to rememberTakeaway · 02

The idea to keep

Treat the repository as part of the agent system.

Give the agent the right context, enforce the quality bar, and ask for evidence before trust.

Start withOne context map.
One shared check.
One real task.
Questions welcomeClose · 01

Thank you

Thank you!

@acekydtv · Instagram · TikTok · YouTube @ace_kyd · LinkedIn · X