Install
Download the latest release from GitHub releases and drag Bloks to Applications. The app is signed and notarized by Apple, so it opens on the first try. It is universal: Apple silicon and Intel.
Building from source works too and takes about four minutes:
git clone https://github.com/hamedgitty/bloks
cd bloks
pnpm install
pnpm dev:server # the harness
pnpm dev:desktop # the app
Everything Bloks stores lives in one folder, ~/.bloks. Remember that path; it comes up again at the bottom of this page.
Engines
An engine is what an agent thinks with. Bloks ships with no model of its own on purpose: you bring the one you already pay for, and each agent picks its engine and model individually.
CLI agents
If Claude Code, Codex, Gemini CLI, OpenCode, Grok CLI or Antigravity is installed and signed in, Bloks finds it and it just works. These run tools: they execute commands, read and write files, and act.
API keys
Paste a key in Settings, Engines for Gemini, Grok, Kimi, Llama, DeepSeek, Mistral or Groq. These engines get a tool loop from Bloks itself, so they can still ask you questions, run sandboxed commands and request app connections. OpenRouter signs in from your browser instead of a key.
Local models
Run Ollama and Bloks lists whatever models it serves. Whether a local model can run tools depends on the model, so Bloks makes no promise there and marks it accordingly.
You can switch an agent’s engine mid‑conversation. Bloks replays the story so far to the new engine, so nothing is forgotten in the move.
Your first agent
Press ⌘N or the plus button. Pick a role and the agent is made on the spot, named for the job and carrying that role’s skills, or describe the job in a sentence and Bloks proposes a name. Every agent gets a pixel face; tap it to shuffle, or open its settings to pick shape, color and expression yourself. The same editor exists on the iPhone.
New agents open with one question about how you want to work together: how much to check in versus just handle things. Your answer shapes its behavior from then on, and you can change it later in its settings.
Talking and tasks
Type like you would to a person. While an agent works you see what it is doing: each tool it touches shows as a quiet line in the thread, and its avatar changes state in the sidebar.
- Parallel tasks. An agent runs up to three lanes at once. The strip above the chat shows each lane with its state and token spend; new lanes name themselves after the first thing you ask.
- Steering. Message a busy agent and the message queues, marked in the thread, then starts its own turn the moment the current one settles.
- Approvals. Anything consequential stops and asks first, as a card with one‑tap answers, on the Mac and on your phone.
- Replies and forwards. Hover a message to reply with context or forward it to another agent, like any messenger.
- Artifacts. Files an agent saves during a turn appear as cards: HTML renders live, spreadsheets and documents open in a native viewer.
- Search. ⌘K searches every conversation, every lane, every room.
Rooms and teams
A room is a group chat of agents. Address one with @name, or just talk and the room decides: juniors answer first, whoever you made most senior speaks last and can delegate with @name itself. Rooms can also be lead‑only, where unaddressed messages go straight to the senior agent.
The team library ships six premade teams, each with roles, seniority and skills. Hiring one asks whether to reuse agents you already have or mint new members with fresh names. Custom rooms you like can be saved back into the library and rehired later.
Automations
The Routines entry in the sidebar opens a calendar: day, week and month views, with each routine as a block you can drag to reschedule, exactly like moving an appointment. Click an empty slot to create one there.
A routine has a name, a prompt, a schedule (weekly on chosen days, or once on a date), a duration for the calendar, and a choice of where it runs: wherever the agent normally runs, its cloud computer, this Mac, or no computer. Runs land in their own background lane so they never interrupt your conversation. Missed runs fire once when the Mac wakes, or skip if too stale; they never pile up.
Webhooks share the panel: each one is a URL that turns any outside event, a git push, a form, an alert, into a task for an agent. Each hook shows its delivery history, can be renamed, paused, or given a fresh URL, and the payload is always quoted to the agent as data, never as instructions.
Connecting apps
Three doors, use any of them:
- Connector cards. With a Composio key in Settings, Apps, agents can request app access mid‑task: a sign‑in card appears in the chat, you tap Connect, and the task resumes itself once the connection lands. Slack, Gmail, GitHub, calendars and hundreds more.
- Your own MCP servers. Register any MCP server, a local command or a remote URL with an auth header, in Settings, Apps, then attach it to agents individually from each agent’s settings.
- Secret cards. When a service just needs an API key, an agent can ask with a secure field in the chat. The value is stored on your Mac, handed to the agent’s tools as an environment variable, and never appears in the conversation.
Voice and calls
Give an agent a voice in its settings, from ElevenLabs or OpenAI with your key, and a phone button appears. Calls work like calls: talk, it listens, thinks, answers in its own voice; interrupt by tapping the mic. Rooms take group calls, where saying a name addresses that member and each agent answers in its own voice, one at a time. The whole call lands in the thread as ordinary messages. Voice is marked beta while it earns trust.
Computers
Agents can have a machine of their own. Four options, chosen per agent:
- Cloud box. A remote Linux desktop from Box, with a paid API key. Bloks provisions it and shows a live preview.
- Local VM. A free Linux desktop in a container on your Mac, set up once from Settings with a guided checklist. Isolated from your own desktop, with one durable workspace folder that survives rebuilds.
- This Mac. The agent works your own screen, looking before it touches and asking before anything hard to undo.
- Sandbox. A headless container: shell and files, no display.
Every preview has a rewind scrubber: drag back through the last several minutes of the agent’s screen to see not just what it is doing but what it did. Opening a desktop full screen keeps a chat beside it, dockable to any edge or floating, and the close button never leaves the corner.
Memory and working folders
Each agent keeps notes in its own workspace: a main memory file plus topic files, all plain markdown you can read and edit from its settings. Memory is capped so it stays a briefing, not a transcript, and agents are instructed never to store instructions that arrive from webhooks or forwarded content.
An agent can also be pointed at a working folder, your project directory for example. Each task lane pins the folder it started in, so a lane never shifts ground mid‑conversation.
Phone and watch
The iPhone app is the same workspace, iMessage‑shaped: the roster with role badges and unread dots, chats with approval cards you can answer with a tap, lane switching, artifacts in a native viewer, calls, and the same avatar editor. Pair it by scanning the QR code the Mac shows under Settings, Devices, on the same network.
Home screen widgets show who needs you and who is working, with the agents’ real faces. A running task shows live in the Dynamic Island. The watch app mirrors the roster to your wrist, one glance to know whether anything is waiting.
Your data
One folder: ~/.bloks. Agents, conversations, memory, keys, settings, artifacts. Back it up and you have backed up Bloks; move it to a new Mac and your agents come with you; delete it and Bloks has genuinely forgotten you. Keys are stored with owner‑only file permissions and are never echoed back to any screen once saved. The full story is on the privacy page.