// how it works

The system your AI tools run inside.

Seven layers sit between your teams and the AI. Every workflow, prompt, model call and action passes through them — so it's consistent, measured, approved and traceable.

// 01 · anatomy of sage

Seven layers. One plain sentence each.

Pick a layer to see what it does — and how it looks inside Sage Runner.

Runner

Workflows are reusable templates — defined once, shared across every project. The Runner executes them step by step, handles retries, and pauses for approval where your policy says so.

// workflows as versioned yaml · triggers from tickets · retries · idempotency · approval gates
Workflow Library
// 5 templates · shared across all projects
End-to-End Foundation100%
e2e/v1 · BRD → full scaffold
6 runs · $18.40 avg
Add New Requirement96%
addreq/v1 · Linear issue → INVEST stories
214 runs · $0.38 avg
Modify Existing Logic88%
modlogic/v1 · safe diff + regression tests
176 runs · $0.44 avg
Add New Screen / UI94%
addscreen/v1 · components + story tests
88 runs · $0.62 avg
PR Review91%
prreview/v1 · policy + team conventions
142 runs · $0.21 avg

Prompt & Skill Store

Every prompt is an organisational asset with an owner, a version history and a model. Improvements are published once and every team gets them; a bad change rolls back in one click.

// versioned org-wide · owners per prompt · published versions visible to assigned teams · rollback
Prompt library
// 11 prompts · versioned org-wide
promptversionversionsownermodel
input-assessment
assessment
v2.1 published4platformhaiku-4
story-decomp
decomposition
v1.5 published3platformsonnet-4
story-quality
critic
v1.2 published3qualityhaiku-4
diff-gen
codegen
v2.0 published3platformsonnet-4
sec-audit
critic
v0.3 published3qualityopus-4
[SCREENSHOT]Prompt version historyclick a prompt row in Sage Runner · shows v1.0 → v1.5, who published, rollback

Critic & Evals

Dedicated critic agents check work against your definitions of done, quality and security before anyone reviews it. Anything risky above your threshold waits for a human.

// critic prompts owned by your quality team · risk-scored approval gates · evals before a prompt or model change goes live
story quality & DoR
story-quality v1.2
INVEST and Definition-of-Ready checks
pull-request critique
pr-critique v0.9
project policy + team conventions
security audit
sec-audit v0.3
runs on opus-4 — strongest model for the riskiest check
approval policy · end-to-end foundation
HITL gaterisk score ≥ 70
Approvals needed22% of runs
Approval queue health0 overdue · avg 8 min · sla 60 min

Memory

Sage keeps a structured picture of each project — services, components, epics and stories — plus learnings confirmed across runs. Agents start from what's known instead of from zero.

// short-term: recent runs · long-term: learnings promoted after repeated confirmation · codebase knowledge store
Retail Platform v3
// 6 epics · 48 / 60 stories done
Full codebase scaffold
6 services · 42 components · Node.js + React
auth-serviceproduct-servicecheckout-servicenotification-serviceapi-gatewayfrontend-app
User auth and SSOmodify logic8/8 done
Product catalogue and searchadd req2/6 · 2 running
Checkout and paymentsadd screen3/5 · 1 waiting

Observability

Every run records what went in, which prompt version and model ran, on which engine, what it cost, what came out and who approved it. Any run can be replayed or exported.

// per-step trace · input / prompt / output / artifacts · tokens · cost · latency · replay · export log
Add requirement · catalogue · story 3
// run #4831 · workflow: Add New Requirement v1.5
elapsed
4m 30s
ai cost
$0.032
tokens
5,450
hitl
1 / 2
1 · Input Assessment Agent
input-assessment/v2.1
Claude Codehaiku-4$0.008
2 · Story Decomposition Agent
story-decomp/v1.5
awaiting approvalClaude Codesonnet-4$0.024
Open the full trace below →

Model Rail

Every model call goes through one governed route. Admins hold the keys, choose which models are allowed, and see usage, spend and latency per model — across every provider.

// model registry · keys managed centrally · per-call model policy · spend attributed to team, project and run
Models registry
// 11 models · 4 providers · view-only · governed by admins
modelproviderstatusspend · 30dp50
claude-sonnet-4Anthropicactive$2141.4s
claude-haiku-4Anthropicactive$840.4s
gpt-4o-miniOpenAIactive$620.4s
gemini-2-flashGoogleactive$480.6s
meta-llama-3.1-70bOpenRouteractive$1840.9s
gemini-2-proGoogleno key——

Tool Gateway

Agents never touch your repos or tickets directly. Every action — writing stories to Linear, pushing to GitHub, merging a PR — goes through the gateway, is risk-tiered, and waits for approval when it should.

// connectors: linear · github · ci · triggers from ticket labels · risk tier per action · credentials held centrally, not on laptops
actionriskgate
Linear Writeback
connector: linear · writes approved stories
lowHITL
Repo writeback
agent: github-writer · pushes generated code
mediumHITL
High-risk PR merge
service-api #312 · checkout epic
highreview
trigger
Linear webhooklabel: agent:add-requirement

// risk tiers shown for illustration — [CONFIRM TIERS]

[SCREENSHOT]Workflow YAML editor“Edit yaml” view · how a workflow is defined
[SCREENSHOT]Project settings wizardstack · NFR · architecture · integrations

// panels mirror Sage Runner screens · demo data

// 02 · a workflow, step by step

Each step gets the right agent, engine and model.

This is End-to-End Foundation: a BRD goes in, a full codebase scaffold comes out. Notice the engines change step to step — Sage picks the best tool for each job, and you can swap any of them without touching the workflow.

End-to-End Foundation
// workflow · e2e/v1 · owner: platform-team
100% success
avg cost
$18.40
per run
avg duration
13.0m
↓ 14% vs prior
hitl rate
22%
need approval
1BRD ingestion
brd-parser · sonnet-4
Claude Code2m 10sagent
2Domain glossary
glossary-builder · sonnet-4
Claude Code1m 40sagent
3Service decomposition
service-decomposer · sonnet-4
AutoGen3m 04sagent
4Data model & schema
schema-designer · sonnet-4
Claude Code2m 20sagent
5Component scaffolding
scaffold-writer · sonnet-4
Claude Code4m 30sagent
6Integration scaffolding
integration-writer · haiku-4
Codex1m 50sagent
7Repo writeback
github-writer · via Tool Gateway
Bedrock0m 30saction
// triggers and policy
Triggerlinear webhook · label
HITL gaterisk score ≥ 70
Max retries2
Idempotency24h window
Default modelclaude-sonnet-4
Policy lives with the workflow, not with each developer — so every run follows the same rules.
// 03 · a run, traced

Open any step. See exactly what happened.

Click a step, then switch between what went in, the prompt version that ran, and what came out. This is what makes AI work auditable — and debuggable.

Add requirement · catalogue · story 3
// retail-platform-v3 · PLAT-453 · workflow: Add New Requirement v1.5 · run #4831
paused · awaiting approval
1Input Assessment Agent
assessment · input-assessment/v2.1
doneClaude Code1m 12shaiku-41,240 tok$0.008
source: linear · PLAT-453 title: "Category hierarchy management" epic: Product catalogue and search project: retail-platform-v3 context: codebase knowledge store · 6 services · 42 components
prompt: input-assessment version: v2.1 · published · owner: platform model: haiku-4 (fast, low-cost — assessment only) history: 4 versions · last updated 2026-04-22
"status": "READY_FOR_DECOMPOSITION", "requirement_type": "new_feature", "touches": ["product-service", "frontend-app"], "clarifications_needed": 0

// [illustrative input/output — replace with the real step 1 payload]

2Story Decomposition Agent
decomposition · story-decomp/v1.5
awaiting approvalHITLClaude Code3m 18ssonnet-44,210 tok$0.024
from step 1: assessed requirement PLAT-453 standards: INVEST · story points ≤ 8 · team conventions memory: prior catalogue stories PLAT-451, PLAT-452
prompt: story-decomp version: v1.5 · published · owner: platform model: sonnet-4 (stronger reasoning for decomposition) history: 3 versions · last updated 2026-03-22
"status": "AWAITING_HITL", "stories_drafted": 5, "stories": [ { "id": "PLAT-453-001", "title": "Category data model", "points": 3, "status": "ready" }, { "id": "PLAT-453-002", "title": "Category CRUD API", "points": 5, "status": "ready" }, { "id": "PLAT-453-003", "title": "Breadcrumb component", "points": 3, "status": "ready", "blocked_by": "PR #312" }, { "id": "PLAT-453-004", "title": "Admin category tree editor","points": 13, "status": "ready", "warning": "over 8pt" }, { "id": "PLAT-453-005", "title": "Migration & rollout", "points": 5, "status": "ready" } ], "hitl_gate": { "policy": "any_approver", "sla_min": 15 }
3Story Quality & DoR Agent
critic · story-quality/v1.2
pendingHITL · optionalAutoGenhaiku-4
Waiting for step 2 approval. Will score each story against INVEST and Definition of Ready before writeback.
4Linear Writeback Action
action · connector: linear · risk: LOW
pendingHITLBedrock
Goes through Tool Gateway. Writes approved stories to Linear under PLAT-453, after a second approval.
// 04 · what leadership sees

One view of every team, project and dollar.

Runs, success rate, AI cost against budget, what's waiting for approval and what's blocked — across all projects, updated live.

Team Dashboard
// alpha team · 3 projects · 12 epics · 7 runs active
runs · 24h
312
↑ 18% vs prior 24h
success rate
96.8%
↑ 2.1% 7-day avg
ai cost · 24h
$28.40
↑ $4.10 over budget pace
avg duration
3.4m
22s faster
failed runs
3
oldest 31 min ago · 2 retried once
pending approval
3
oldest waiting 24 min · sla 60 min
stories blocked
4
across 2 projects
Retail Platform v3
6 epics · 48 / 60 stories done
97% success · 14 workflows
Payments API
3 epics · 22 / 40 stories done · 1 failed run
84% — needs review
Onboarding Service
e2e foundation running · step 3 of 7
e2e in progress

// from the Sage Runner demo · demo data

[SCREENSHOT]HITL approval inboxthe full approval queue · who is waiting, SLA, risk
[SCREENSHOT]Agent registryregistered agents · versions · which workflows use them
// 05 · deployment & integrations

Runs where your code is allowed to go.

Your code, prompts and accumulated knowledge stay inside your boundary, with the model providers you choose — including self-hosted.

// option 1ManagedWe run it for you. Fastest to start a pilot.
// option 2Your cloudDeployed in your VPC — AWS, Azure or GCP [CONFIRM].
// option 3On-premisesFor strict data residency, with self-hosted models.
// connects to
LinearJiraGitHubGitLabBitbucketGitHub ActionsJenkinsAzure DevOpsSonarQubeSnyk
// models from
AnthropicOpenAIGoogleOpenRouterAWS BedrockSelf-hosted
// 06 · questions engineers ask

FAQ

Do our developers have to change tools?

No. Developers keep their editor and coding assistants for exploratory work. Sage takes on workflow-level work — requirement to reviewed pull request — and delivers it as stories and PRs where they already work.

Which models and coding agents does Sage use?

The ones you approve. Each workflow step names its engine (Claude Code, Codex, AutoGen and others) and its model, chosen by policy. Your admins control the model registry and keys.

What does a human approve?

Whatever your policy says. Gates can be set per step or by risk score — for example, every story breakdown, or any action scoring 70 or above. Nothing is merged or deployed without a person.

Where does our code and data go?

It stays inside the deployment you choose — managed, your cloud or on-premises. Model calls only go to providers you've approved, through Model Rail.

What happens when a better tool comes out?

We evaluate it on your own workflows, side by side with the current one. If it wins on quality or cost, it's swapped once — centrally — and every team gets it on their next run.

How long does it take to get started?

A pilot starts with one real workflow on your codebase. [PILOT LENGTH] from kickoff to a side-by-side comparison.

// next step

See it on your workflow.

A focused pilot on your codebase, run alongside your current tools.

Let’s talk about your workflow.

30 minutes. We come prepared — expect a real conversation, not a sales pitch.

3-minute team AI scan

// team ai scan · 1 of 8 · cost

Can you state last month’s AI spend per team, project or feature?