Product

A coding harness with fewer hard dependencies.

Sofia treats the model, provider, interface, and cloud as replaceable. The constant is the harness: context, tools, execution, approvals, and the record of the work.

CLIfast path
Desktopvisual workspace
MCPcapability layer
Cloudoptional control plane
Two interfaces

Same harness. Different working surfaces.

The CLI is for immediacy; the desktop app is for work that benefits from visual structure. Both speak the same runtime concepts.

CLI

Stay in the terminal.

Launch in a repository, choose a model, steer the agent, inspect tool activity, and keep coding without giving up your existing shell workflow.

$ sofia
Desktop

See the session as a workspace.

Use tabs, visual trajectories, change review, model state, and richer controls when the work outgrows a single terminal transcript.

session→tools→changes
Steering

Interrupt the trajectory without starting over.

Queue a goal, steer the current run, or force a deliverable. Intervention is part of agent execution, not another message with ambiguous priority.

session controlsactive
current goal
Refactor provider fallback without changing public behavior

steer
Do not touch model selection. Keep this change inside the transport layer.

queued next
Add regression tests for half-open circuit recovery
Runtime primitives

Small concepts that compose.

Models, tools, connections, policies, and remote jobs are explicit primitives with consistent access and audit boundaries.

Models

Stable Sofia model IDs can route to BYOK credentials, Sofia PAYG, organization-managed keys, or Sofia-hosted vLLM/SGLang endpoints.

Tools

File, shell, browser, repository and domain-specific tools participate in the same approval and execution model.

Capabilities

Skills, plugins, MCP tools, connections and remote worker actions can be discovered and executed through a single gateway.

Policies

Spend, concurrency, model access, desktop versions, SSO, and team membership are enforced in the path that performs the action.

Tasks

Long-running work can stay local or become a durable remote job when an organization explicitly enables that execution mode.

Use the interface that fits the task.

Start in the CLI. Open the same kind of work in Desktop. Add Sofia Cloud only where shared infrastructure earns its place.