Products & tools

Truss

One coding-agent runtime across the tools developers already use.

Open-source product

A provider-flexible coding agent with shared workspace context, permissions, and state across CLI, terminal, VS Code, and desktop clients.

Visit Truss
Truss editorial cover with typography and a conceptual software workflow
Generated editorial artwork for Truss; not an application screenshot.
THE PROJECT

A closer look at Truss.

Truss lets developers choose their interface and model without adopting a different agent for each workflow. Local model servers and supported cloud accounts connect to a shared runtime, while workspace context and permissions stay close to the work.

The challenge

An agent tied to one editor or provider makes a change of workflow expensive. Repeating configuration across separate clients also fragments context and approval settings. Truss addresses that coupling by making the runtime independent of the interface.

The product experience

CLI commands support shell tasks and automation. A full-screen terminal workspace brings files, diffs, chat, and approvals together. VS Code and Electron desktop clients offer other ways to access the same agent foundation. Saved provider profiles support local servers and bring-your-own-key cloud configurations.

  • Four client surfaces share one agent runtime.
  • Provider profiles support local and supported cloud configurations.
  • Persistent plans, conversations, and workspace memory support resumed work.

Product & engineering

A TypeScript-first, event-driven runtime separates providers, tools, context, memory, sessions, and client interfaces. The CLI also exposes a JSON-lines service for editor clients. Conversations and implementation plans use durable workspace state, while explicit Chat, Plan, and Edit modes govern the workflow. Streaming tool activity and interruption controls keep execution visible.

The decisions that shape the work

Separate the runtime from the interface

Let client surfaces evolve without rebuilding the agent foundation.

Keep provider choice explicit

Use saved profiles for supported cloud accounts or local model endpoints.

Keep context and control visible

Present relevant workspace state, tool activity, diffs, and approval requests where developers work.

Working within the constraints

  • Provider support depends on the configured local endpoint or supported cloud account; not every model is interchangeable.
  • Tool permissions and approval policies must remain explicit across client interfaces.
  • Public website illustrations describe the product; they are not evidence of a measured delivery or accuracy result.

Have a similar challenge?

Truss demonstrates the engineering behind a developer tool that spans multiple interfaces. The same separation of runtime, integrations, and user controls can help teams build maintainable agent-enabled products.

Talk about your project
IN THE DETAILS

The work, in view.

Products & tools

More to explore.

All work
ForgeLoop editorial cover with typography and a conceptual software workflow
Products & toolsDevelopment preview

ForgeLoop

A delivery system connecting GitHub issues, bounded agent tasks, self-hosted runners, verification evidence, and pull requests.

Agent orchestrationGitHub integrationSelf-hosted runners
Explore the project
Witnessrail editorial cover with typography and a conceptual software workflow
Products & toolsResearch preview

Witnessrail

A research engine and interactive showcase exploring guarded browser actions and independent verification for payer enrollment.

Python research engineBrowser agentsIndependent verification
Explore the project
Warrant editorial cover with crisp typography and code changes traced into inspectable evidence records
Products & toolsPrivate development

Warrant

A headless CI harness for bounded code review and resumable Python migrations, with explicit budgets and inspectable derivation records.

Python CLIAST migrationsRecorded verification
Explore the project
YOUR NEXT PROJECT

Let's build the software your work needs.

Start a conversation