Creasura Blog · Behind the scenes
Behind the scenes: CAOP as a business operating system.
A business already runs on goals, commitments, delegation of authority, a ledger, and a review cadence. That makes the Creasura Agentic OS Protocol an even more natural fit for a company than for a personal assistant. Here’s the Business Profile, walked through with a real estate brokerage.
Read the full CAOP v0.1 specification ›
Why business is the natural fit
Personal workflows are ad hoc and conversational. A business runs on exactly the primitives CAOP defines: durable objectives, explicit commitments, rules about who may approve what, an auditable record, and a rhythm of weekly, monthly, and quarterly reviews. The kernel translates directly:
| CAOP primitive | Personal OS | Brokerage OS |
|---|---|---|
| Goal | Plan a family vacation | Raise Q4 net margin by 200 bps |
| Commitment | Book the approved itinerary | Shift $6,000 of ad spend by Friday |
| State / Fact | Mortgage rate is 5.875% | Riverside valuation win rate is 19% |
| Capability | ChatGPT, calendar, email | SQL engine, solver, CRM, ad platforms |
| Policy | Ask before sending email | Delegation of Authority bands |
| Dry run | Preview calendar holds | Simulate the margin impact |
| Review | Weekly check-in | Automated weekly business review |
The Business Profile (CAOP-Biz) adds four schemas. Here’s each one in a brokerage.
1. Metric trees and variance triggers
In a personal OS, an observation is usually a message. In a business, the heartbeat is metrics. A MetricNode gives each KPI a formula, an owner, a cadence, and variance thresholds, linked into a tree:
// MetricNode (CAOP-Biz, proposed) { "id": "metric.net_margin", "formula": "gci - agent_splits - marketing - operations", "childMetricIds": ["metric.gci", "metric.marketing", ...], "owner": "role:ceo", "baselineCadence": "weekly", "varianceThresholds": { "warningDeltaPct": -3.0, "criticalDeltaPct": -7.5 } }
When a scheduled job emits metric.variance_detected, Understand doesn’t just search text. It walks the tree to isolate the driver before anyone proposes a plan. Try it:
- Net margin
gci − splits − marketing − ops−8.1% - Gross commission income
closed_deals × avg_price × rate−9.4% - Closed deals
new_listings × close_rate + buyer_deals−11% - New listings
valuation_requests × win_rate−18% - Valuation requests+1%
- Win rate · Riverside
was 31%19% - Average sale price+0.4%
- Marketing spend+2%
observation: metric.variance_detected { metric.net_margin, −8.1%, critical }
2. Delegation of Authority
In a personal OS, one person holds all authority. A business has roles, limits, and sign-offs. The Business Profile pairs each policy with quantitative bands and routing:
// ApprovalRoutingRule (CAOP-Biz, proposed) { "policyId": "doa_marketing_spend", "requiredRoles": ["finance_lead", "operations_lead"], "minQuorum": 2, "expirationSeconds": 86400, "escalateToRoleOnTimeout": "ceo" }
Drag the exposure for the proposed fix, shifting ad spend from Riverside to Maple Park, and see where it routes:
3. Bitemporal facts
Business numbers change after the fact. Deals fall through, commission splits get corrected, attribution windows close weeks later. If the OS just overwrote October’s numbers, a review couldn’t tell a bad decision from a sound decision made on preliminary data.
CAOP facts already carry observedAt, validFrom, and validTo. The Business Profile makes them a strict two-clock contract: valid time (the period the fact describes) and system time (when the OS believed it, until supersededAt).
| Fact: October GCI | System time | Value |
|---|---|---|
| Preliminary | Nov 1 → Nov 10 | $412,000 |
| Restated (two deals fell through) | Nov 10 → now | $388,000 |
A review can ask asOfSystemTime: Nov 1 (what the agent knew when it set the budget) and asOfValidTime: October (what we know now). That separates decision quality from data latency.
4. Two-phase verification
This is the biggest difference between a toy business agent and a business operating system. A business intervention has two definitions of success:
POST /v1/commitments
{
"goal_id": "goal_q4_net_margin",
"objective": "Shift ad spend from Riverside to Maple Park",
"success_criteria": [
{ "phase": "immediate_verification", "type": "constraint_check",
"rule": "weekly_spend <= 6000 AND riverside_floor >= 1500" },
{ "phase": "outcome_realization", "evaluation_window_hours": 168,
"type": "counterfactual_lift", "metric_id": "metric.maple_park_listing_inquiries",
"expected_delta_pct": 4.5 }
]
}
// Stage 7 (Record) schedules: commitment.outcome_window_elapsed at T+168h
When that event fires a week later, the OS pulls the realized numbers, compares them with the dry-run projection made during Plan, and writes a value-realization verdict into the review. The weekly business review then reports not just what was done, but what it was worth.
Capabilities scale without changing the kernel
Because capabilities are decoupled from the lifecycle, a business deployment swaps in heavier tools without touching the protocol:
sideEffectLevel: noneIn-process SQL engines, causal estimators, and optimization solvers for Understand, Plan, and Verify.
sideEffectLevel: noneLLM agents that draft weekly review memos and candidate plans, constrained by the metrics and solver outputs.
reversible | irreversibleCRM, ad platforms, listing feeds, and accounting, with rollback operations and gated by Delegation of Authority.
One protocol, from laptop to company
Keeping CAOP Core lean and adding these four mechanisms as an optional Business Profile means the same open-source kernel can run as a zero-dependency SQLite personal OS on a laptop, and as an autonomous chief-of-staff engine for an entire firm. For a brokerage, that means the weekly business review writes itself, variances are traced to their cause automatically, spending follows your approval matrix, and every intervention is judged on whether it worked.
Creasura Business is coming soon.
Run a bigger business, without building a bigger team.
Join the Interest List Read the core protocol post ›