{
  "uid": "cogitave.learn.run-agentic-operations.the-agent-fleet",
  "kind": "moduleUnit",
  "href": "/modules/run-agentic-operations/the-agent-fleet/",
  "title": "The agent fleet",
  "summary": "",
  "type": null,
  "products": [],
  "roles": [],
  "levels": [],
  "subjects": [],
  "headings": [
    "The five scheduled agents (engineering)",
    "The six operations agents (business)",
    "Why the two catalogs read differently",
    "The kill-switch and the eval gate"
  ],
  "source": "Two named catalogs implement the contract from the previous unit. Both are\nDay-0 specs, paired as a human-authoritative `.md` and (for the scheduled\ncatalog) a machine-authoritative `.yaml`, cataloged in\n[`agents/README.md`](../../../../agents/README.md) and\n[`agents/operations/README.md`](../../../../agents/operations/README.md).\n\n## The five scheduled agents (engineering)\n\n[`agents/scheduled/`](../../../../agents/README.md) runs the engineering\nestate. Each one is read-mostly or propose-only and never merges, releases, or\nedits `main`:\n\n| Agent | Purpose | Never does |\n| --- | --- | --- |\n| [pr-triage](../../../../agents/scheduled/pr-triage.md) | Classifies a PR (area, size), applies triage labels, routes it to the right CODEOWNER | Merge, approve, or push code |\n| [dependency-review](../../../../agents/scheduled/dependency-review.md) | Evaluates dependency changes for known vulnerabilities, license policy, and provenance | Auto-merge a bump |\n| [issue-grooming](../../../../agents/scheduled/issue-grooming.md) | Classifies issues, requests missing repro/version/logs, detects duplicates, surfaces stale ones | Close or delete an issue |\n| [changelog-docs-sync](../../../../agents/scheduled/changelog-docs-sync.md) | Drafts the `[Unreleased]` changelog entry and flags the docs a change requires | Edit `main` or bump a version |\n| [security-triage](../../../../agents/scheduled/security-triage.md) | Classifies and prioritizes advisories and scan alerts, drafts a triage note | Remediate, merge, or disclose |\n\n## The six operations agents (business)\n\n[`agents/operations/`](../../../../agents/operations/README.md) runs the\nbusiness under the same draft-vs-act rule, but its blast radius is often\nexternal and reputational rather than internal:\n\n| Agent | Function | Drafts / proposes | Human gate (owner) |\n| --- | --- | --- | --- |\n| [content-marketing](../../../../agents/operations/content-marketing.md) | Marketing | Content per the editorial calendar | Editor + claims-review; never publishes |\n| [seo-geo](../../../../agents/operations/seo-geo.md) | Marketing | SEO/GEO optimizations, rank monitoring | Marketing owner approves any change |\n| [community-support](../../../../agents/operations/community-support.md) | Support | Ticket triage, draft answers, KB-gap detection | Support agent approves any customer-facing reply |\n| [revops-lead](../../../../agents/operations/revops-lead.md) | GTM / RevOps | Lead enrichment, scoring, CRM hygiene | RevOps approves merges; never auto-emails a prospect |\n| [finops-anomaly](../../../../agents/operations/finops-anomaly.md) | Finance / FinOps | Cost-anomaly alerts, spend reports, proposed actions | Finance approves any spend action |\n| [status-comms](../../../../agents/operations/status-comms.md) | Ops / incident response | Status-page and incident comms drafts | Incident commander approves any external post |\n\n## Why the two catalogs read differently\n\nThe [operations overview](../../../../agents/operations/README.md) names the\ngap directly: a scheduled agent's mistake is \"mostly internal and reversible -\na label, a comment, a PR suggestion.\" An operations agent's mistake can\n\"mislead a customer, leak PII, overspend, or damage the brand\" - so its default\nposture is **PROPOSE-only by construction**. No agent in either catalog holds a\n`publish`, `send`, `email`, or `apply` capability; those verbs are reserved for\nthe human gate, and an attempt to reach them is a capability-boundary\nviolation, denied and recorded as a security event.\n\n## The kill-switch and the eval gate\n\nEvery ops agent MUST be independently disable-able in one action, without a\ndeploy, by its owner or an incident responder - triggered by a safety-eval\nregression, a capability-boundary violation, a confirmed hallucination or\nbrand incident, a data-protection breach, or anomalous behavior. And per the\nthree-part contract, no agent's behavior ships at all until it clears the\n[eval harness](../../../../agents/evals/eval-harness.md) on accuracy, coverage,\nsafety, and latency.\n\n> [!NOTE]\n> Adding an agent to either catalog is itself governed: author the paired\n> spec, register it in the AIMS inventory, define its grant and loop\n> placement, and clear the eval gate. Each catalog entry is a **stub** until\n> that happens - the standard says so explicitly.\n",
  "partOf": "cogitave.learn.run-agentic-operations",
  "durationInMinutes": 8,
  "quiz": null
}