Advanced8 min read

Deploy teams with Agent-as-Config

Define a full agent team in JSON and deploy it via the manifest API — no dashboard required.

Agent-as-Config lets you define a complete agent team in JSON and deploy it via POST /api/v1/teams. The returned team_id is usable immediately in POST /api/v1/runs. Your team definition lives in code — it can be versioned, tested, and deployed in CI/CD like any other configuration.

Step 1: Write your manifest

A manifest is a JSON object with a name and an agents array. Each agent needs at minimum a role. Optionally add system_prompt, custom_instructions, and tools. The coordinator is always added automatically — do not include it.

{
  "name": "Code Review Team",
  "description": "Security + quality review pipeline",
  "agents": [
    {
      "role": "reviewer",
      "system_prompt": "You are an expert code reviewer. Check for bugs, performance, and readability.",
      "tools": [
        {
          "tool_type": "web_search",
          "name": "Search language docs",
          "config": { "num_results": 5 }
        }
      ]
    },
    {
      "role": "security",
      "system_prompt": "You are a security engineer. Review for OWASP Top 10 vulnerabilities."
    }
  ]
}

Step 2: Deploy via API

curl -X POST https://forge.shanova.se/api/v1/teams \
  -H "Authorization: Bearer frg_…" \
  -H "Content-Type: application/json" \
  -d @manifest.json

# Response
{
  "id": "e3a4f…",
  "name": "Code Review Team",
  "agent_count": 2,
  "created_at": "2026-06-09T10:00:00Z",
  "url": "https://forge.shanova.se/teams/e3a4f…"
}

Step 3: Use the team id in a run

curl -X POST https://forge.shanova.se/api/v1/runs \
  -H "Authorization: Bearer frg_…" \
  -d '{ "team_id": "e3a4f…", "title": "Review PR #42", "brief": "…" }'

Step 4: Integrate with CI/CD

Store the manifest in your repo under e.g. forge/review-team.json. In your deployment pipeline, callPOST /api/v1/teams to (re-)deploy the team and write the returned id to an environment variable or config file. Use DELETE /api/v1/teams/{id} to clean up old deployments.

Tip:You can also deploy from the browser: open the Deploy team from manifest panel in the Developer Portal, paste your JSON, and click Deploy.
Deploy teams with Agent-as-Config — Forge Guides — Forge