Goals
OKRs that every agent knows in real-time - objectives define direction, key results measure progress
Objectives and Key Results (OKRs) transform vision into measurable outcomes. Every agent receives current OKRs with real-time metrics in their context window for every interaction.
Objectives: What You're Achieving
Objectives are qualitative goals that define what you're trying to accomplish. They should be:
- Aspirational: Ambitious enough to inspire
- Actionable: Clear enough to guide decisions
- Aligned: Connected to your vision
- Time-bound: Specific timeframe (usually quarterly)
Examples:
- "Launch autonomous bookkeeping service"
- "Achieve product-market fit with service businesses"
- "Scale to 1,000 autonomous transactions per day"
Key Results: How You Measure Success
Key Results are quantitative metrics that measure progress toward objectives. They should be:
- Measurable: Specific numbers, not subjective
- Achievable: Ambitious but realistic (70% success is good)
- Trackable: Real-time data available
- Outcome-focused: Results, not activities
Examples:
- "100 businesses onboarded"
- "95% autonomous transaction processing rate"
- "$50K MRR"
- "NPS > 50"
OKRs as MDXLD
Define OKRs in MDXLD with real-time tracking:
---
$type: Business.OKRs
quarter: Q1 2025
objectives:
- id: okr-1
objective: Launch AI-delivered bookkeeping service
owner: CEO
keyResults:
- metric: businesses_onboarded
target: 100
current: 23
unit: businesses
status: on_track
updated: 2025-01-13T14:30:00Z
- metric: autonomous_processing_rate
target: 0.95
current: 0.87
unit: percentage
status: needs_attention
updated: 2025-01-13T14:30:00Z
- metric: human_escalation_rate
target: 0.05
current: 0.13
unit: percentage
status: at_risk
updated: 2025-01-13T14:30:00Z
- id: okr-2
objective: Achieve product-market fit
owner: CEO
keyResults:
- metric: nps_score
target: 50
current: 42
unit: score
status: on_track
- metric: monthly_recurring_revenue
target: 50000
current: 31200
unit: usd
status: on_track
- metric: customer_churn_rate
target: 0.02
current: 0.05
unit: percentage
status: needs_attention
---
# Q1 2025 OKRs
## Objective 1: Launch AI-delivered bookkeeping service
**Owner**: CEO | **Status**: π‘ Needs Attention
- β
Onboard 100 businesses: **23/100** (23%)
- π‘ Autonomous processing: **87%/95%** (needs improvement)
- π΄ Escalation rate: **13%/5%** (too high, investigate)
## Objective 2: Achieve product-market fit
**Owner**: CEO | **Status**: π’ On Track
- β
NPS Score: **42/50** (84%)
- β
MRR: **$31.2K/$50K** (62%)
- π‘ Churn: **5%/2%** (needs improvement)Injected into Every Agent Context
This is the critical insight: Every agent gets the current OKRs with real-time metrics in their system prompt and context window for every single interaction.
import { $ } from 'sdk.do'
// OKRs are fetched in real-time for every agent interaction
const currentOKRs = await $.Business.get.OKRs({
period: 'current',
includeMetrics: true,
realtime: true
})
// Agent receives OKRs in context
const agent = await $.Agent.create({
role: 'Sales Development Rep',
model: 'gpt-5',
systemPrompt: `
${business.vision.why}
CURRENT OKRS (Real-time as of ${new Date().toISOString()}):
Objective: ${currentOKRs[0].objective}
Key Results:
- Businesses onboarded: ${currentOKRs[0].keyResults[0].current}/${currentOKRs[0].keyResults[0].target}
- Autonomous processing: ${currentOKRs[0].keyResults[1].current * 100}%
- Escalation rate: ${currentOKRs[0].keyResults[2].current * 100}%
YOUR IMPACT: Every business you onboard moves us toward our goal.
Every successful autonomous transaction improves our metrics.
Make decisions that move these numbers in the right direction.
`
})
// Every agent action includes OKR context
on.Lead.qualifies(async (lead) => {
// Agent sees real-time progress toward "businesses_onboarded"
const decision = await agent.decide({
action: 'outreach',
lead,
context: {
vision: business.vision,
okrs: currentOKRs, // Real-time metrics
currentProgress: {
businessesOnboarded: 23,
targetThisQuarter: 100,
daysRemaining: 77
}
}
})
// Agent knows: we need 77 more businesses in 77 days = 1 per day
// This creates urgency and focus
})Real-time Metrics Create Focus
When every agent sees real-time OKR progress, they:
- Understand context: Why their work matters right now
- Prioritize effectively: Focus on what moves key metrics
- Make better decisions: Align actions with current needs
- Self-optimize: Adjust behavior based on progress
- Escalate intelligently: Know when metrics suggest problems
Example: Agent Decision-Making with OKRs
// Support agent with OKR context
on.Customer.hasIssue(async (issue) => {
const agent = await $.Agent.get('support-specialist-03')
// Agent receives context including OKRs
const response = await agent.handle({
issue,
context: {
okrs: {
autonomousProcessingRate: 0.87, // Below target of 0.95
escalationRate: 0.13 // Above target of 0.05
}
}
})
// Agent's decision-making:
// - Our autonomous rate is low β try harder to resolve without escalation
// - But escalation rate is high β maybe we're escalating wrong things
// - This specific issue: confidence 0.65 β marginal
// - Decision: Attempt autonomous resolution, but prepare escalation path
if (response.confidence < 0.7) {
// Agent knows escalation rate is high, so provides detailed context
await $.Human.review.SupportDecision({
issue,
agentReasoning: response.reasoning,
okrContext: 'Escalation rate high, but confidence low on this issue',
recommendation: 'Review and improve training for this issue type'
})
}
})OKRs Drive Autonomous Improvement
With real-time OKRs, agents don't just executeβthey optimize:
- Sales agents prioritize leads that match successful patterns
- Support agents learn which issues they can handle autonomously
- Finance agents identify transaction patterns that need review
- All agents understand how their actions impact business goals
Start with Vision: Define your why Then track progress: Use real-time OKRs to guide autonomous operations