Quickstart Tutorial¶
This tutorial walks you through installing SynthOrg, starting the platform, and configuring your first company, in about 5 minutes.
Honest status
The platform, dashboard, CLI, and setup wizard below work today. The autonomous agent runtime that executes work is in active development and not yet wired: a task you submit advances through its lifecycle states, but an agent does not yet execute it. The "designed flow" section makes the distinction explicit. See the Roadmap.
What You Will Configure¶
You will configure a Solo Builder organisation: a lean two-agent team designed for rapid prototyping.
graph TD
CEO["CEO<br/><small>visionary_leader</small>"]
DEV["Full-Stack Developer<br/><small>rapid_prototyper</small>"]
CEO --> DEV
By design, the CEO handles strategy and task decomposition while the Full-Stack Developer writes code and builds features. That execution behaviour is the runtime work in active development; the steps below set up the company that will run it.
Prerequisites¶
- Docker Desktop (or Docker Engine + Docker Compose): install Docker
- An LLM provider API key: any provider supported by LiteLLM (e.g. a cloud provider or a local instance like Ollama)
Step 1: Install the CLI¶
Verify the installation:
See the User Guide for alternative installation methods and CLI commands.
Step 2: Initialize¶
Run the interactive setup wizard:
The wizard will prompt you to configure infrastructure settings:
- Data directory: where SynthOrg stores its data (default: platform-appropriate path).
- Backend API port: port for the REST/WebSocket API (default: 3001).
- Web dashboard port: port for the web UI (default: 3000).
- Enable agent code sandbox: optionally mount the Docker socket for sandboxed code execution.
synthorg init generates the required secrets (SYNTHORG_JWT_SECRET and SYNTHORG_SETTINGS_KEY) and writes the configuration automatically. Company setup (name, LLM provider, template) happens in the web dashboard after containers start (see Step 4).
Step 3: Start¶
This pulls container images (with automatic cosign signature verification), starts the backend and web dashboard, and waits for health checks to pass.
Check that everything is running:
You should see both containers (backend and web) reporting healthy.
Step 4: Explore the Dashboard¶
Open http://localhost:3000 in your browser.
On a fresh install, the setup wizard appears. Pick Guided Setup and step through:
- Select a template: choose Solo Builder (the minimal 2-agent template).
- Add an LLM provider: enter your provider's API key. Local providers like Ollama are auto-detected.
- Name your company: pick any name (e.g. "My First Org").
- Review agents: the template populates the roster; tweak personalities and models if you want, or accept defaults.
- Pick a theme: light or dark.
Quick Setup is the abbreviated path (provider, company name, done). Use it when you want to land in the dashboard fastest and configure the rest later.
Once the wizard completes, the dashboard loads and you will see:
- Agents: the CEO and Full-Stack Developer, each with their personality and model assignment
- Organisation status: health indicators for the platform
- Task board: empty, ready to accept tasks
Step 5: Submit a Task¶
Use the task board in the dashboard to create a new task. Give it a title and description.
curl -X POST http://localhost:3001/api/v1/tasks \
-H "Content-Type: application/json" \
-H "Authorization: Bearer <your-jwt-token>" \
-d '{
"title": "Write a hello world script",
"description": "Create a simple Python script that prints hello world"
}'
Replace <your-jwt-token> with the JWT from your admin session. See the REST API Reference for authentication details.
Today the task is created and advances through its lifecycle states. An agent does not yet pick it up and execute it: that is the agent runtime, which is in active development. See the Roadmap for current status.
The Designed Flow (in active development)¶
This is what submitting a task is designed to do once the agent runtime is wired. It is not what happens end to end today.
sequenceDiagram
participant You
participant Engine
participant CEO
participant Dev as Full-Stack Developer
participant LLM as LLM Provider
You->>Engine: Create task
Engine->>Engine: Route to agent (role-based)
Engine->>CEO: Assign task
CEO->>LLM: Analyze & decompose
LLM-->>CEO: Plan
CEO->>Dev: Delegate subtask
Dev->>LLM: Execute (ReAct loop)
LLM-->>Dev: Result
Dev-->>Engine: Task completed
Engine-->>You: Result available
- Task created: the engine validates the task and queues it. (Works today.)
- Task routed: a routing strategy matches the task to the best-suited agent. (Designed; in active development.)
- Agent executes: the assigned agent uses its configured LLM in a ReAct loop. (Designed; in active development.)
- Result returned: the completed task and its artifacts appear in the dashboard and API. (Designed; in active development.)
Stop¶
When you are done:
Your data persists in the synthorg-data Docker volume and will be available next time you run synthorg start.
Next Steps¶
- Company Configuration: customise every aspect of your organisation via YAML
- Agent Roles & Hierarchy: add more agents, define departments, configure personality
- Budget & Cost Control: set spending limits and auto-downgrade policies
- Deployment (Docker): production hardening and operations
- Roadmap: what is available now versus in active development