Back to Portfolio
AI Systems Engineering

Agentic Team Template

At :00 an agent picks a ready backlog item. At :15 a second reviews the change. At :30 a third validates the build. Permission boundaries, blocking gates, and audit logs keep the automation accountable.

A governed multi-agent engineering pipeline that automates implementation, review, and validation within explicit permission, test, audit, and human-oversight boundaries.

Problem

Building software requires repeated coordination across development, review, and QA. Automating that work without clear permissions and failure gates creates more risk than leverage.

Solution

A 3-agent loop orchestrated through the Claude Agent SDK. Agents share a backlog, operate within write manifests, produce audit logs, and stop or redirect work when blocking checks fail.

Architecture

Dev Agent

Runs hourly, reads the shared backlog, selects the highest-priority ready item, and implements it on a feature branch. Enforces idempotency via heartbeat files and a 50-minute window check, so a second invocation within the window is a no-op.

Code Review Agent

Triggers at :15 after each dev commit. Performs structural review covering JSX correctness, broken links, SEO/meta coverage, and code quality, then writes a verdict to a review log. Blocks merge on critical findings and annotates warnings for human review.

QA Agent

Runs at :30, after code review. Validates the full build pipeline: lint, build, href spot-check, title check, meta description, route shells, and resume PDF. Writes a DEPLOY-READY or BLOCKED verdict to the QA log with actionable failure details. Together the review and QA agents form a continuous LLM evaluation and observability loop, scoring every agent-authored change against structural and build criteria and logging traceable verdicts before merge.

Shared Backlog & Audit Trail

All agents operate against a single source of truth: a markdown backlog with priority tiers (Critical → High → Medium → Low) and stage transitions (define → ready → in-progress → done). Every agent action is appended to a structured audit log with timestamps and exit codes.

Permission & Safety System

Each agent has a declared write manifest. A permission-check script gates every file write, so agents cannot touch files outside their manifest. Combined with idempotency checks and never-force-push rules, the system is safe to run unattended. An input-sanitisation layer and a prompt-defense baseline harden the agents against prompt-injection, applying the same LLM red-teaming and AI-safety practices used to validate model output in Planacle and Awade.

MCP Integration Layer

Agents communicate with external tools such as GitHub, Figma, Slack, and email via MCP servers wired into the Claude Agent SDK. New integrations are added by registering an MCP server, with no agent code changes required.

// Idempotency guard (every agent)
./scripts/idempotency-check.sh \ "dev-agent" 50 # Exit 0 → safe to run # Exit 1 → ran within 50 min window # → log and stop

Hourly Pipeline Cadence

:00 Dev Agent implements backlog item → :15 Code Review Agent audits commit → :30 QA Agent validates build → :45 idle / gap analysis.

Scale & Deployment

33
Skills per runtime
11
Infrastructure scripts
7
Behavioural test suites

Used across Planacle and Awade to implement selected backlog items, review changes, and validate builds within repository permissions and quality gates. Human ownership remains explicit for priorities, exceptions, and release decisions.

Key Decisions

01A markdown backlog as the source of truth

ConsideredA proper orchestration service — job queue, scheduler, state machine.

ChoseA human-readable markdown backlog with priority tiers and stage transitions, shared by every agent. Humans and agents read the same file, and the full history is just the git log.

Trade-offNo rich scheduling semantics. The win: total transparency — anyone can audit what the team decided and why with a text editor.

02Agents review agents — with blocking power

ConsideredLetting the dev agent merge its own work; it wrote the code, it ran the tests.

ChoseA separate review agent that blocks merges on critical findings, and a QA agent that issues an explicit DEPLOY-READY or BLOCKED verdict every cycle.

Trade-offA slower pipeline with more moving parts. The win: agent-authored code faces the same gates human code does — no exceptions for the machines.

03Least privilege before autonomy

ConsideredRunning agents with full repository access — simpler, and what most demos do.

ChosePer-agent write manifests with a permission-check script gating every file write, plus idempotency heartbeats and a never-force-push rule.

Trade-offUpfront configuration friction for every new agent. The win: the pipeline is safe to run unattended, which is the entire point.

Technology

Claude Agent SDKAnthropic APIClaude Code CLIMCP (Model Context Protocol)Bash / ShellGitHub ActionsReact + Vite

Outcome

Before

One engineer context-switching between development, review, QA, and deployment all day.

After

A self-healing hourly loop that implements, reviews, and validates — with a complete audit trail.

The template reduces repetitive coordination while retaining visible decisions, review gates, and human control. It supports the implementation workflow across Planacle and Awade without presenting automation as unbounded autonomy.