Skip to content
Synori.AI

Working with agents

Activity rooms

How an activity works — participants and roles, addressing models by name, background actors, approvals, verification and rollback.

An activity is a room for one piece of work. It binds an environment, a workspace directory, the models taking part and a tool policy, and it keeps the whole conversation — messages, tool calls, approvals and results.

Creating an activity

Pick an environment and a workspace directory — the last ten placements are one click away — and give the activity a name, or let it take the directory's. Synori prepares the room in the background: it starts a session VM, mounts the project and connects the tools. Sending unlocks as soon as the room is ready.

Participants and roles

A room holds you and one or more models:

  • Primary leads the room and answers every message that names nobody.
  • Standby models join the conversation when you address them.
  • Companion — one per room — works in the background, for example distilling durable facts from the conversation into the room's context.
The Participants panel of a room: you, opus on Claude Code CLI as the primary, and gpt-5.6-sol on Codex CLI, glm-5.3 on the Qwen API and an Nvidia Nemotron model on standby, each with buttons to make it primary or companion or to disable it
Five participants in one room: you, a coding CLI as the primary and three models of other providers on standby.

Every model gets a short name — Qwen3 Coder 30B becomes @qwen3-coder-30b — and you can rename it. Type @ in the composer to address a model. Name several models in one message and each answers in its own turn, in parallel: up to eight replies at once by default, sixteen at most. A model that is working on an answer can be stopped on its own while the others carry on.

Suggestions after typing @ in the composer: @primary, then every participant by its short name
Typing @ suggests @primary and the short name of every participant.

Coding CLIs — Claude Code, Codex and Gemini CLI — join a room like any other model. They run in an agent VM of their own, apart from the session VM where your files, shell and builds live.

Writing a message

Enter sends a message and Shift+Enter starts a new line. The composer completes three kinds of tokens as you type them:

TokenWhat it does
@nameAddresses a participant; @primary and @companion reach whichever model holds that role
$skillLoads one of the room's skills into the message
!pathInserts the path of a file or folder from the session's workspace
Typing !docs/agents/ in the composer suggests the file docs/agents/analysis-rules.md
A workspace path completed after !.

Background actors

A room can hand an errand to one of its participants and keep talking. The actor runs a full agentic turn with the same tools, workspace and approval policy, in parallel with the room's own turn. It has a mailbox you can write to, its approval requests show up in the room, and an unfinished run resumes after a restart. When it ends, it writes a report with its status, result and cost. Up to eight actors run at once by default.

Access modes and approvals

The room's tool policy decides what runs without asking:

ModeWhat runs without asking
PlanReading and read-only git. File changes are blocked — the workspace is read-only down to the file system — and everything else asks.
Auto-editFile edits and workspace tools. Shell commands and git still ask.
UnrestrictedEverything.

On top of the mode you can add rules — command patterns and path globs with allow, ask or deny — and a list of dot-files the sandbox may read or write. When an action needs your decision, the room shows an approval card: Allow, Allow always, which adds a rule to the policy, or Deny. A badge on the room counts the calls the policy blocked.

In plan mode the assistant drafts a step-by-step plan. Approve it to switch to execution, or reject it.

Verify, review and rollback

  • Verify runs your lint, typecheck, build and test commands — a language preset or your own — and reports the result in the room. With automatic rollback on, a failed verify returns the workspace to the last green checkpoint.
  • Review is an independent pass over the changes since the last approval. Findings are graded from critical to nit, and one button sends them back to the primary. Assign a different model as the reviewer for a truly independent opinion; review can also run automatically after a green verify.
  • Rollback returns the workspace to the snapshot taken at the boundary of any turn.

Context and memory

The Context tab shows what the model sees besides the conversation: notes, pinned documents, digests, project memory, the verify state and the files changed so far. Every item can be previewed, included or excluded. Long-term memory keeps facts across sessions. Transcript compaction — off by default — summarises older history when a conversation outgrows the model's context window, and the composer shows the tokens used so far next to an estimate of the room's size.

The room's tabs

TabWhat it shows
RoomThe conversation, approval cards, actor runs and their reports.
FilesThe workspace tree with an editor: new files and folders, rename, move, cut, copy and paste.
ChangesUncommitted git changes as a split or unified diff.
ConsoleA terminal in the session VM.
LogsTool calls, errors, token usage, lifecycle and review events.
RuntimeThe session, environment and runner; extra mounts, recovery, suspend and wake.
PortsDev servers started in the session and their forwarded ports.
ContextContext items and long-term memory.
The Changes tab: the uncommitted changes of the session as a unified diff, next to the tree of changed files
Changes: the session's uncommitted work, file by file.
The Files tab: the workspace tree next to the editor, with a Markdown file open in its visual mode
Files: the workspace tree and an editor with a code and a visual mode.
The Console tab: a terminal in the session VM, open at /workspace/project
Console: a shell inside the session VM.

The whole history of a room is searchable and can be exported as Markdown or JSON. Reset archives an activity and opens a fresh one on the same workspace with the same participants; Archive keeps the transcript read-only until you restore it.