Goals
Persistent, multi-phase objectives that drive autonomous agent work across sessions.
Goals
Goals turn Reeve from a reactive assistant into a proactive operator. A goal is a persistent, multi-phase objective that survives session resets and gateway restarts — letting agents plan, execute, and monitor work over hours or days.
Why Goals?
Without goals, agents respond to messages and go idle. With goals, agents pursue sustained objectives:
"Run our product launch campaign. Budget: $200 on ads, target 500 signups by Friday."
Reeve creates a goal with phases — research, build creatives, deploy campaign, monitor and optimize — and works through them autonomously, reporting progress along the way.
How Goals Work
Every goal has:
- Title and description — What you're trying to achieve
- Phases — Ordered steps that run sequentially (research → build → deploy → monitor)
- Budget — Token and dollar caps to prevent runaway spending
- Checkpoints — State snapshots that survive context compaction
- Metrics — Tracked KPIs like signups, CTR, or revenue
Phase Types
Each phase can run in one of three modes:
| Type | Behavior |
|---|---|
| once | Runs a single time, then advances to the next phase |
| loop | Repeats on an interval (e.g., check metrics every 30 minutes) |
| trigger | Waits for an external event (webhook, threshold, or manual trigger) |
Goal Lifecycle
created → active → [phases running] → completed
↓
paused → resumed
↓
failed / cancelledGoals move through statuses: active, paused, completed, failed, cancelled. Each phase within a goal tracks its own status independently.
Creating a Goal
Via conversation
Just tell your agent what you want to accomplish:
"I need to increase newsletter signups to 1,000 by end of month."
The agent creates a goal, breaks it into phases, and starts working.
Via CLI
reeve goal createThe interactive wizard walks you through title, phases, budget, and deadline.
Via agent tools
goals({
action: "create",
goal: {
title: "Increase newsletter signups",
description: "Get to 1,000 signups by end of month",
phases: [
{ name: "Audit current funnel", type: "once" },
{ name: "Optimize landing page", type: "once" },
{ name: "Monitor & iterate", type: "loop" }
],
budget: { maxCost: 50, approvalGate: 25 }
}
})Budget and Approval Gates
Every goal can have spending limits:
- Token budget — Maximum tokens the goal can consume
- Dollar budget — Maximum cost in dollars
- Session budget — Maximum number of agent sessions
- Approval gate — Pause the goal and ask for human approval at a spending threshold
When a goal hits its approval gate, it pauses automatically. You'll receive a notification asking whether to continue. Approving raises the gate by 50% and resumes the goal.
// Check remaining budget
goals({ action: "budget_check", goalId: "goal_abc" })
// Approve past the gate
goals({ action: "approve", goalId: "goal_abc" })Monitoring Goals
CLI
reeve goal list # All goals
reeve goal status <id> # Detailed view with phases, budget, logs
reeve goal log <id> # Recent activity logAgent tools
// List all goals
goals({ action: "list" })
// Get goal details
goals({ action: "get", goalId: "goal_abc" })
// Add a log entry
goals({ action: "log", goalId: "goal_abc", message: "Landing page A/B test launched" })
// Update a metric
goals({ action: "metric", goalId: "goal_abc", name: "signups", value: 342 })
// Save a checkpoint
goals({ action: "checkpoint", goalId: "goal_abc", summary: "Phase 2 complete — creatives deployed" })Service Loops
For intensive monitoring phases, goals can run service loops — fast execution cycles with intervals as short as 10 seconds:
// Start a monitoring loop
goals({ action: "start_loop", goalId: "goal_abc", intervalMs: 300000 }) // every 5 minutes
// Stop the loop
goals({ action: "stop_loop", goalId: "goal_abc" })Service loops are ideal for campaign monitoring, real-time metric tracking, and automated optimization.
Example Use Cases
| Goal | Phases | Budget |
|---|---|---|
| Product launch campaign | Research → Build creatives → Deploy → Monitor | $200 ads, $20 tokens |
| Weekly content calendar | Plan topics → Write drafts → Schedule posts | $5 tokens/week |
| Competitor monitoring | Set up tracking → Daily reports | $10 tokens/month |
| Hiring pipeline | Post JDs → Screen candidates → Schedule interviews | $15 tokens |
Goals persist in the database and survive gateway restarts. For the full technical reference including all 17+ tool actions, see the Goals Engine docs.