Tandem
Your AI coworker for any folder: local-first, secure by design, cross-platform, and built for supervised automation.
Install / Use
/learn @frumu-ai/TandemREADME
Tandem is an engine-owned workflow runtime for coordinated autonomous work.
While the current landscape of AI agents is flooded with "chat-first assistants," these conversational routing models inevitably fail at scale due to context bloat and concurrency blindness. Chat is fine as an interface, but it is weak as an authoritative coordination substrate for parallel, durable engineering workflows.
Tandem takes a fundamentally different approach to tackle the complex realities of agentic engineering. We treat autonomous execution as a distributed systems problem, prioritizing robust engine state over fragile chat transcripts.
It provides durable coordination primitives, including blackboards, workboards, explicit task claiming, operational memory accumulation, and checkpoints, allowing multiple agents to work concurrently on complex, long-running software engineering and automation tasks without colliding.
- Entrypoints are clients, not separate engines: The Tauri desktop app, TUI, web control panel, and SDKs all talk to the same engine runtime.
- Engine-owned orchestration: Shared task state, replay, approvals, and deterministic workflow projections natively solve coordination failures.
- Provider agnostic: Use OpenRouter, Anthropic, OpenAI, OpenCode Zen, or local Ollama endpoints effortlessly.
Durable State → Workboards → Agent Swarm → Artifacts
→ Download desktop app · Deploy on a VPS (5 min) · Read the docs
30-second quickstart
Desktop
- Download and launch Tandem: tandem.ac
- Open Settings and add a provider API key.
- Select a workspace folder.
- Start with a task prompt and choose Immediate or Plan Mode.
Web Control Panel
Install the master CLI, then bootstrap the panel and its engine service:
npm i -g @frumu/tandem
tandem install panel
tandem panel init
tandem panel open
Use this when you want the browser-based control center backed by the engine.
Editable App Scaffold
Generate a fully editable control panel app in your own folder:
npm create tandem-panel@latest my-panel
cd my-panel
npm install
npm run dev
Use this when you want to customize routes, pages, themes, styles, or runtime behavior without editing node_modules.
Repo Source / Service Install
Clone the repo when you are contributing to Tandem itself or want the full source tree and example deployment scripts:
git clone https://github.com/frumu-ai/tandem.git
cd tandem/examples/agent-quickstart
sudo bash setup-agent.sh
Open the printed URL and sign in with the generated key!
If you only want the engine runtime, you can keep it foreground-only:
tandem-engine serve --hostname 127.0.0.1 --port 39731
Other Entry Points
- TUI:
npm i -g @frumu/tandem-tui && tandem-tui - SDKs:
npm install @frumu/tandem-clientorpip install tandem-client
Architecture
graph TD
%% Clients
Desktop[Desktop App]
ControlPanel[Web Control Panel]
TUI[Terminal UI]
API[SDKs & API Clients]
subgraph "Tandem Engine (Source of Truth)"
Orchestrator[Orchestration & Approvals]
Blackboard[(Blackboard & Shared State)]
Memory[(Vector Memory & Checkpoints)]
Worktrees[Git Worktree Isolation]
end
subgraph "Agent Swarm"
Planner[Planner Agent]
Builder[Builder Agent]
Validator[Verifier Agent]
end
Desktop -.-> Orchestrator
ControlPanel -.-> Orchestrator
TUI -.-> Orchestrator
API -.-> Orchestrator
Orchestrator --> Blackboard
Orchestrator --> Memory
Orchestrator --> Worktrees
Blackboard <--> Planner
Blackboard <--> Builder
Blackboard <--> Validator
Common workflows
| Task | What Tandem does | | ---------------------------------- | ------------------------------------------------------------------------------ | | Refactor a codebase safely | Scans files, proposes a staged plan, shows diffs, and applies approved changes | | Research and summarize sources | Reads multiple references and outputs structured summaries | | Generate recurring reports | Runs scheduled automations and produces markdown/dashboard artifacts | | Connect external tools through MCP | Uses configured MCP connectors with approval-aware execution | | Operate AI workflows via API | Run sessions through local/headless HTTP + SSE endpoints |
Features
Engine-Owned Workflow Runtime
- Coordinated autonomous work: Explicit blackboards over conversational thread dumping.
- Multi-simultaneous agents: Manage parallel execution through Git Worktree Isolation and patch streams.
- State survival: Checkpoints, replayable event history, and materialized run states.
- Approval gates: Keep humans in control with supervised tool flows for destructive actions.
Multi-Agent Orchestration
- Kanban-driven execution: Agents claim tasks, report blockers, and hand off work through deterministic state.
- Memory-aware swarms: Agents learn from prior runs, extracting fixes and failure patterns automatically.
- Revisioned coordination: Engine-enforced locks prevent agents from trampling the same codebase simultaneously.
Integrations and automation
- MCP tool connectors
- Scheduled automations and routines
- Headless runtime with HTTP + SSE APIs
- Desktop runtime for Windows, macOS, and Linux
Security and local-first controls
- API keys encrypted in local SecureKeyStore (AES-256-GCM)
- Workspace access is scoped to folders you explicitly grant
- Write/delete operations require approval via supervised tool flow
- Sensitive paths denied by default (
.env,.ssh/*,*.pem,*.key, secrets folders) - No analytics or call-home telemetry from Tandem itself
Outputs and artifacts
- Markdown reports
- HTML dashboards
- PowerPoint (
.pptx) generation
Programmatic API
The SDKs are API clients. They do not bundle tandem-engine.
You need a running Tandem runtime (desktop sidecar or headless engine) and then use the SDKs to create sessions, trigger runs, and stream events.
Runtime options:
-
Desktop app running locally (starts the sidecar runtime)
-
Headless engine via npm:
npm install -g @frumu/tandem tandem-engine serve --hostname 127.0.0.1 --port 39731 -
TypeScript SDK: @frumu/tandem-client
-
Python SDK: tandem-client
-
Engine package: @frumu/tandem
// npm install @frumu/tandem-client
import { TandemClient } from "@frumu/tandem-client";
const client = new TandemClient({ baseUrl: "http://localhost:39731", token: "..." });
const sessionId = await client.sessions.create({ title: "My agent" });
const { runId } = await client.sessions.promptAsync(sessionId, "Summarize README.md");
for await (const event of client.stream(sessionId, runId)) {
if (event.type === "session.response") process.stdout.write(event.properties.delta ?? "");
}
# pip install tandem-client
from tandem_client import TandemClient
async with TandemClient(base_url="http://localhost:39731", token="...") as client:
session_id = await client.sessions.create(title="My agent")
run = await client.sessions.prompt_async(session_id, "Summarize README.md")
async for event in client.stream(session_id, run.run_id):
if event.type == "session.response":
print(event.properties.get("delta", ""), end="", flush=True)
<div align="center">
<img src=".github/assets/app.png" alt="Tandem AI Workspace" width="90%">
</div>
Provider setup
Configure providers in Settings.
| Provider | Description | Get API key | | ----------------- | ------------------------------------------------ | -------------------------------
Related Skills
clearshot
Structured screenshot analysis for UI implementation and critique. Analyzes every UI screenshot with a 5×5 spatial grid, full element inventory, and design system extraction — facts and taste together, every time. Escalates to full implementation blueprint when building. Trigger on any digital interface image file (png, jpg, gif, webp — websites, apps, dashboards, mockups, wireframes) or commands like 'analyse this screenshot,' 'rebuild this,' 'match this design,' 'clone this.' Skip for non-UI images (photos, memes, charts) unless the user explicitly wants to build a UI from them. Does NOT trigger on HTML source code, CSS, SVGs, or any code pasted as text.
ui-ux-pro-max-skill
57.9kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
ui-ux-pro-max-skill
57.9kAn AI SKILL that provide design intelligence for building professional UI/UX multiple platforms
onlook
25.0kThe Cursor for Designers • An Open-Source AI-First Design tool • Visually build, style, and edit your React App with AI
