Skip to content

Agents & Templates

An agent is a reusable configuration for running an AI CLI on a project. It defines:

  • CLI provider — Claude Code or Codex
  • Role — builder (writes code) or reviewer (reviews code)
  • Instructions — system prompt appended to the CLI session
  • Model — which model to use (optional, uses CLI default if unset)
  • Allowed tools — which tools the agent can use (Read, Edit, Write, Bash, Glob, Grep)
  • Max turns — maximum number of turns per session

Agents belong to a project. You can have multiple agents on the same project (e.g., a builder and a reviewer).

A builder agent writes code. When it finishes, Abbado can:

  • Auto-commit changes
  • Push the branch
  • Trigger a reviewer agent (pipeline mode)

Builder agents typically have full tool access: Read, Edit, Write, Bash, Glob, Grep.

A reviewer agent reviews code changes. It typically has read-only tool access: Read, Grep, Glob.

In pipeline mode, a reviewer agent launches automatically after a builder completes. The reviewer reads the diff and outputs either APPROVED or CHANGES_REQUESTED. If changes are requested, the builder relaunches with the feedback (up to 3 iterations).

Abbado ships with 14 preconfigured agent templates across 6 categories:

TemplateDescriptionTools
PR ReviewerReviews code changes, identifies bugs, suggests improvementsRead, Grep, Glob
Architecture ReviewerReviews code structure, dependencies, architectural decisionsRead, Grep, Glob
TemplateDescriptionTools
Bug FixerAnalyzes bugs, finds root cause, implements fix with testsRead, Edit, Write, Bash, Grep, Glob
Feature BuilderImplements new features end-to-end: code, tests, and docsRead, Edit, Write, Bash, Grep, Glob
RefactorerRefactors code for clarity without changing behaviorRead, Edit, Write, Bash, Grep, Glob
TemplateDescriptionTools
Test WriterWrites missing tests to improve coverageRead, Write, Bash, Grep, Glob
E2E Test WriterWrites end-to-end tests for user-facing flowsRead, Write, Bash, Grep, Glob
TemplateDescriptionTools
Documentation WriterWrites and updates README, API docs, inline commentsRead, Write, Glob, Grep
API DocumenterDocuments API endpoints with request/response examplesRead, Write, Grep, Glob
TemplateDescriptionTools
CI/CD SetupSets up or improves CI/CD pipelinesRead, Write, Edit, Bash, Grep, Glob
Dockerfile OptimizerOptimizes Docker images for size and build speedRead, Edit, Write, Bash, Glob
TemplateDescriptionTools
Security AuditorAudits code for OWASP vulnerabilities (read-only)Read, Grep, Glob
Dependency CheckerChecks for outdated or vulnerable dependenciesRead, Bash, Grep, Glob

You can create agents from scratch instead of using templates. When creating a custom agent, configure:

{
"project_id": "<uuid>",
"name": "My Custom Agent",
"cli_name": "claude-code",
"model": "claude-sonnet-4-6",
"instructions": "You are a specialist in...",
"allowed_tools": "Read,Edit,Write,Bash,Glob,Grep",
"max_turns": 100,
"role": "builder"
}

The instructions field is appended to the CLI session as a system prompt via --append-system-prompt. Use it to give the agent context about the project, coding standards, or specific constraints.

The provider_config field stores provider-specific configuration as JSON. This is a flexible field for future use — currently it’s an empty object {}.

Each agent specifies a CLI provider:

  • Provider ID: claude-code
  • Default models: Sonnet 4.6, Opus 4.6, Haiku 4.5
  • CLI: claude

The model list is configurable via Settings > Models in the UI, or the PUT /api/settings/models endpoint. You can add custom providers and models.

EndpointMethodDescription
/api/agentsPOSTCreate an agent
/api/agents/{id}GETGet an agent
/api/agents/{id}PUTUpdate an agent
/api/agents/{id}DELETEDelete an agent
/api/projects/{project_id}/agentsGETList agents for a project

See the full API Reference for request/response details.