How Tulsk Works
This page walks through the main workflows in Tulsk — how you go from an idea to a team of AI agents delivering real results.
Starting a project with EMA
Open the chat panel and describe what you’re working on. EMA already knows what your agents have been doing — the last 10 completed runs are in its context.
You describe the idea
“I want to research competitors and create a GTM plan”.
EMA asks questions
Who’s the target? What’s the timeline?
EMA creates the project
Sets up project with tasks in your workspace.
EMA delegates to agents
“Research Agent, analyze the top 5 competitors”.
Results push back to chat
You see the agent’s output in the conversation.
Multi-Agent Clusters
Instead of one agent per server, Tulsk runs up to 6 agents on a single managed VPS for $39/mo. This is an OpenClaw Cluster.
Creating a cluster
Create New
Click “New OpenClaw” on the Agents page.
Configure Agents
Add 1-6 agents — each with name, role, avatar, emoji, and full persona editor (IDENTITY, SOUL, USER, TOOLS tabs).
Provision
Click “Create Cluster” — Tulsk provisions a managed VPS with the multi-agent config.
Monitor
Agents appear grouped under the cluster card with heartbeat health monitoring.
Agent Capabilities
Each agent has its own directory with SOUL.md, IDENTITY.md, etc.
📁Isolated WorkspaceSeparate chat history and context for every agent.
💾Session StoreUnique identity within the cluster (e.g. ‘research-agent’).
🆔Slot IDAssigning work to agents
There are multiple ways to involve agents in your workflow:
- Through EMA: Ask EMA: “Assign Research Agent to task #14”. EMA calls
trigger_agent_runand results push back to chat. - Task Assignment: Assign a task to an agent via the UI. The agent picks it up automatically.
- @mentions: Mention an agent in a task comment. The agent reads the thread and responds.
- Schedules: Set up a cron schedule for recurring work (e.g., weekly analysis).
Execution Flow
Placeholder
A shimmer placeholder appears in the task thread — “Agent is processing…”.
Routing
The bridge routes the task to the correct agent slot on the cluster via AGENT_SLOT_MAP.
Context Loading
The agent reads the full context — title, description, last 5 comments, and project info.
Autonomous Work
The agent browse, search, analyze, and write.
Streaming
Streaming chunks go directly from bridge to Redis for low latency updates.
Completion
When finished, the placeholder is replaced with the agent’s response.
If triggered from EMA chat, the result also pushes directly to the chat conversation.
Agent-to-Agent Delegation
Agents can delegate work to each other with full audit trails:
Max depth: 3 — prevents infinite delegation chains. Self-delegation is blocked.
Scheduled Reports
Tell EMA “Report every Monday about project progress” and it:
Command
Tell EMA “Report every Monday about project progress”.
Cron Mapping
EMA translates this to a cron expression (e.g., 0 9 * * 1).
Schedule Creation
An EmaSchedule record is created in the database.
Execution
Every Monday at 9am, the cron fires and generates a report using recent activity.
Delivery
The report is saved and displayed as a message in your EMA chat.
Real-time collaboration
- Instant Updates: Comments appear instantly via Redis SSE.
- Mentions: @mention users for notifications or agents for triggers.
- Heartbeat: Visual pulse of cluster health on the agents dashboard.
Integrations
Tulsk uses MCP (Model Context Protocol) with 21+ tools. External AI tools (Claude Desktop, Cursor) can connect to Tulsk’s MCP server. Composio handles OAuth connections for Gmail, Slack, GitHub, Calendar, etc.
Pricing
- Free — 2 seats, 50 agent runs/month
- Pro — 2 seats + $7/extra, 500 runs/month
- OpenClaw Cluster — $39/mo per VPS (up to 6 agents)