Skip to content

Data Flow

What data flows to the Anthropic API (and other LLM providers)

flowchart TB
subgraph Org["Organization Data (stays local)"]
Config["baseline.config.ts\nVoice, terminology, authority"]
Frame["Frame context\n6-dimension lens"]
Persona["Persona definitions\nRole-specific behavior"]
Vault["Credential Vault\nAPI keys, secrets"]
Memory["Memory Store\nInteraction history"]
end
subgraph OS["BaselineOS Runtime (local)"]
Orchestrator["Orchestrator"]
LayerSweep["LayerSweep\n(7 layers)"]
Studio["Studio\n(provenance + artifacts)"]
Govern["Govern\n(compliance gate)"]
end
subgraph External["External Services"]
Anthropic["Anthropic API\n(Claude models)"]
OpenAI["OpenAI API\n(GPT models)"]
Bedrock["AWS Bedrock\n(enterprise models)"]
Tavily["Tavily API\n(web search)"]
end
Config --> Orchestrator
Frame --> Orchestrator
Persona --> Orchestrator
Vault -.->|"Key resolution"| Orchestrator
Memory --> Orchestrator
Orchestrator --> LayerSweep
LayerSweep --> Studio
Studio -->|"Generate request"| Anthropic
Studio -->|"Generate request"| OpenAI
Studio -->|"Generate request"| Bedrock
Anthropic -->|"Generated content"| Studio
OpenAI -->|"Generated content"| Studio
Bedrock -->|"Generated content"| Studio
Studio --> Govern
Govern -->|"Audit log + evidence"| Memory

Path: Orchestrator → LayerSweep → ExecutionEngine → Anthropic API

sequenceDiagram
actor User
participant Orchestrator
participant LayerSweep
participant ExecutionEngine
participant Anthropic
User->>Orchestrator: baseline.run({ title, description, ... })
Orchestrator->>LayerSweep: sweep(taskContext)
LayerSweep->>LayerSweep: Lang (terminology check)
LayerSweep->>LayerSweep: Frame (authority/context)
LayerSweep->>LayerSweep: Experience (consent)
LayerSweep->>LayerSweep: Autonomy (trust/scope)
LayerSweep->>LayerSweep: Persona (role loading)
LayerSweep->>ExecutionEngine: execute(task, context)
ExecutionEngine->>ExecutionEngine: Build system prompt
Note over ExecutionEngine: persona + frame + lang
ExecutionEngine->>ExecutionEngine: Build user message
Note over ExecutionEngine: task description + code + output
ExecutionEngine->>Anthropic: POST /v1/messages
Anthropic->>ExecutionEngine: { content, usage, stop_reason }
ExecutionEngine->>ExecutionEngine: Verify output
Note over ExecutionEngine: verifier prompt → Anthropic
ExecutionEngine->>ExecutionEngine: Quality check
Note over ExecutionEngine: quality prompt → Anthropic
ExecutionEngine->>Orchestrator: result + artifacts
Orchestrator->>Govern: audit(task, result)
Orchestrator->>User: TaskResult
FieldSourceSensitivityNotes
system promptPersona + Frame + Lang + role promptsMediumOrg voice, authority levels, terminology. Configurable per-deployment.
messages[].contentTask title, description, code, outputHighUser-provided task data. Never logged to BaselineOS telemetry.
modelConfig (claude-sonnet-4-6 default)LowModel version
max_tokensConfig (8000 default)LowOutput limit
temperatureConfig (0.3 default)LowCreativity setting
  • Generated text/code
  • Token usage (input_tokens, output_tokens)
  • Stop reason

Data That NEVER Leaves Your Infrastructure

Section titled “Data That NEVER Leaves Your Infrastructure”
DataLocationGuarantee
API keysCredential Vault (encrypted at rest)Never sent to telemetry
Audit logsLocal .baseline/audit/Append-only, signed
Evidence bundlesLocal .baseline/evidence/SHA-256 provenance
Memory / interaction historyLocal storeUser-controlled retention
Baseline configbaseline.config.tsLocal file only

BaselineOS supports multiple providers to match your trust boundary:

ProviderModel PrefixData Residency
Anthropicclaude-*US-based
OpenAIgpt-*US-based
AWS Bedrockbedrock-*Region-specific (configurable)
Local (Ollama)ollama-*, local-*Fully local — no external calls
Mockmock-*No external calls — test responses

To run fully air-gapped:

const baseline = new Baseline({
model: 'ollama-llama3.3',
});

Operators can audit all LLM calls via:

Terminal window
# List all tasks with token usage
baseline status
# Export evidence bundle (includes API call audit)
baseline evidence-export --format html
# Check governance status
baseline status --layers
FlowAnthropic?What DataConfigurable?
Task executionYesTask description, code, system promptsModel selection, prompt overrides
Streaming produceYesSystem prompt, user messageGenerator configuration
ResearchYes (optional)Search query, web resultsTavily key optional
VerificationYesGenerated output, criteriaVerifier prompt override
Quality gateYesGenerated outputQuality prompt override
PlanningYesTask descriptionPlanner prompt override
EvaluationsYes (test only)Test casesTest environment only