← CAIN Home

CAIN Governance

Organizational rules, authorities, and approval workflows for autonomous AI agents.

POLICY
Lifecycle: DRAFT → REVIEW → APPROVED → ACTIVE → SUSPENDED → RETIRED
ALLOW
Action permitted by governance
DENY
Action blocked by governance

What is CAIN Governance?

CAIN Governance answers: What autonomous systems are allowed to do, under whose authority, under which rules, with what approvals, exceptions, scope, and audit history?

CAIN Governance sits ABOVE individual policies and coordinates organizational rules.

Quick Start

# 1. Create a governance policy
curl -X POST https://cainstudio.online/fabric/governance/policies \
  -H "X-Tenant-ID: your-tenant" \
  -H "Content-Type: application/json" \
  -d '{"name":"Production Deployment Controls","priority":50,"constraints":[{"type":"require_approval","action":"deploy"}]}'

# 2. Activate the policy
curl -X POST https://cainstudio.online/fabric/governance/policies/{policy_id}/activate \
  -H "X-Tenant-ID: your-tenant"

# 3. Create an authority
curl -X POST https://cainstudio.online/fabric/governance/authorities \
  -H "X-Tenant-ID: your-tenant" \
  -H "Content-Type: application/json" \
  -d '{"identity_id":"user:alice","role":"deployment-approver","can_approve":true}'

# 4. Request approval
curl -X POST https://cainstudio.online/fabric/governance/approvals \
  -H "X-Tenant-ID: your-tenant" \
  -H "Content-Type: application/json" \
  -d '{"requester_id":"agent-123","action":"deploy","resource":"production","justification":"Deploying v2.1"}'

# 5. Evaluate governance
curl -X POST https://cainstudio.online/fabric/governance/evaluate \
  -H "X-Tenant-ID: your-tenant" \
  -H "Content-Type: application/json" \
  -d '{"identity_id":"user:alice","action":"deploy","resource":"production"}'

Lifecycle

DRAFT
REVIEW
APPROVED
ACTIVE
SUSPENDED
RETIRED

API Endpoints

Method Path Description
GET/fabric/governance/policiesList governance policies
POST/fabric/governance/policiesCreate governance policy
GET/fabric/governance/policies/{id}Get policy details
PATCH/fabric/governance/policies/{id}Update policy
POST/fabric/governance/policies/{id}/activateActivate policy
POST/fabric/governance/policies/{id}/deactivateSuspend/retire policy
GET/fabric/governance/authoritiesList authorities
POST/fabric/governance/authoritiesCreate authority
POST/fabric/governance/approvalsRequest approval
POST/fabric/governance/approvals/{id}/decideApprove/deny
POST/fabric/governance/evaluateEvaluate governance
GET/fabric/governance/decisionsList decisions
GET/fabric/governance/auditAudit log

CLI

cain governance list
cain governance show {policy_id}
cain governance create --name "My Policy" --priority 100
cain governance activate {policy_id}
cain governance suspend {policy_id}
cain governance retire {policy_id}
cain governance approve {approval_id} --reason "Approved"
cain governance deny {approval_id} --reason "Denied"
cain governance audit --limit 50

Security Model

Integration

CAIN Governance integrates with: