Skip to main content
Every Operark organization runs the same 15 named runtime agents: 3 Board, 3 L5 Meta, and 9 C-Suite. You invoke them by their roleKey (for example, AI_CFO).

C-Suite (L4)

These are the executives you interact with most. Each has its own remit, tools, and decision-making temperament.
roleKeyNameRole
AI_CEOAtlasChief Executive Officer — strategy, resource allocation
AI_CFONovaChief Financial Officer — planning, treasury, compliance
AI_CROSentinelChief Risk Officer — risk, veto authority, governance
AI_CTOForgeChief Technology Officer — engineering, architecture
AI_COOTempoChief Operating Officer — operations, people, process
AI_CMOSparkChief Marketing Officer — brand, growth
AI_CPOCanvasChief Product Officer — product, UX, roadmap
AI_CRevOVanguardChief Revenue Officer — pipeline, partnerships
AI_CLOShieldChief Legal Officer — legal, compliance, contracts

L5 — Meta

System-level agents that orchestrate, audit, and respond to incidents.
roleKeyRole
L5_NEXUSOrchestration — routing, workflow, conflict mediation
L5_PULSEQuality & governance — auditing, standards
L5_ORACLEIncident command — anomaly detection, crisis response

Board

Independent oversight, activated for strategic, high-value, and governance matters.
roleKeyRole
BOARD_CHAIRChairman — independent oversight
BOARD_AUDITAudit committee — financial & compliance audit
BOARD_RISKRisk committee — enterprise risk oversight

Invoking an agent

Use ask for an advisory answer and decide for a recorded, governed decision:
# Advisory
curl -X POST "$OPERARK_BASE_URL/api/v1/executives/AI_CTO/ask" \
  -H "Authorization: Bearer $OPERARK_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "message": "Is a managed Postgres or self-hosted right for us at our scale?" }'
Only the 15 runtime agents and platform entrypoints can be invoked directly. Requesting an unknown or non-invocable role returns ROLE_NOT_DIRECTLY_INVOCABLE. Department and execution capabilities run as skill clusters inside their parent C-Suite agent.
Board and certain L5 agents require a higher tier; a blocked call returns a clear code (for example, BOARD_REQUIRES_ENTERPRISE) explaining what is needed.