Documentation

Mode Agent docs.

Quick start, CLI reference, configuration, agents, permissions, and signals. Everything you need to run Mode Agent for growth.

Getting started

Quick start

Get Mode Agent running in under 60 seconds. Install, authenticate, and start your first session.

It is a CLI tool that runs your growth as a set of specialized agents, one per channel (content, social, email, ads, seo, researcher), coordinated by a planner. They communicate through a shared signal bus.

Prerequisites You need a Mode account (any plan) and a terminal. That's it. No API keys, no Docker, no dependencies.

Get started in 3 steps

  1. Install Mode Agent
  2. Authenticate by running mode
  3. Start Mode Agent and describe your task

Ready? Start with Installation.

Getting started

Installation

Install Mode Agent with a single command.

Quick install

bash
curl -fsSL https://gotmode.sh | sh

Verify

bash
mode --version
0.0.1
Getting started

Authenticate

Mode Agent authenticates you the first time you run it.

bash
mode

The first time you run mode, it opens your browser for magic link authentication. Once you confirm, the CLI is authenticated and ready to use. You won't need to authenticate again on this machine.

Getting started

First session

Start Mode Agent and describe your first task.

Type mode to enter an interactive session.

bash
mode

Once inside the session, describe what you want to grow. The Agent reads your goal, deploys the right channel agents, and they execute in parallel.

The Agent will do the following.

  1. Decompose your goal into tasks
  2. Assign each task to a specialized agent
  3. Execute agents in parallel
  4. Deliver results you approve before anything spends or publishes

What happens under the hood

The planner agent reads your goal, decides which agent roles are needed, and coordinates execution. For a "Grow signups for the spring launch" task, it might spawn the following agents.

  • researcher profiles the audience and finds where they already are
  • content drafts the launch post and two follow-ups
  • email writes the announcement and a reminder sequence
  • ads builds two ad sets and holds them for your approval

All running simultaneously, communicating through signals.

Core concepts

Agents

Mode Agent spawns a specialized agent for each growth channel. Each agent has a specific job and acts only within the permissions you set.

Built-in agent roles

It ships with one agent role per growth channel plus the roles that coordinate them.

Coordination

RoleResponsibility
plannerBreaks the growth goal into tasks, coordinates all agents, manages execution order
reviewerChecks every draft against your voice rules and permissions, gates anything that publishes or spends
measurePulls results from connected accounts, ties them to the work that produced them, writes the daily brief

Channels

RoleResponsibility
contentBlog posts, landing page copy, brand voice copy, content calendars
socialSocial posts in platform-native formats, scheduling, replies to flag for you
emailAnnouncements, nurture sequences, newsletters, list hygiene
adsCampaign creative, A/B ad variants, audience targeting, budgets held for approval
seoKeyword research, meta tags, structured data, page fixes, rank tracking
researcherMarket and customer research, audience profiles, trend discovery
Core concepts

Orchestration

The planner agent coordinates all other agents through a shared signal bus.

How a run works

  1. You describe your goal and Mode Agent deploys agents
  2. The planner decomposes it into tasks and assigns them to agents
  3. Agents execute in parallel, emitting signals as they work
  4. The reviewer checks every draft against your rules and holds anything that spends or publishes for your approval

Parallel execution

Unlike sequential AI tools, the Agent runs multiple agents simultaneously. The planner identifies independent tasks and launches them in parallel, only serializing when there are true dependencies.

Core concepts

Signals

Agents communicate by emitting and subscribing to typed signals, not by calling each other directly.

How signals work

Every agent action produces a signal on the shared bus. Other agents can subscribe to specific signal types to coordinate their work.

signal
[email]    emit draft.created  launch-announcement
[reviewer] recv draft.created  → checking voice rules, queued for your approval
[measure]  recv draft.created  → watching for sends and signups

Signal types

SignalEmitted when
task.startedAn agent begins work on a task
task.completedAn agent finishes a task
draft.createdA post, email, ad, or page edit is drafted
draft.modifiedAn existing draft is changed
approval.requestedSomething that spends or publishes is waiting for you
approval.grantedYou approved it and it is scheduled
result.recordedA measurable outcome is tied back to a draft
errorAn agent encounters an error

View signals in real-time with mode logs --follow.

Core concepts

Permissions

Mode Agent runs every agent in a sandboxed environment. You define the boundaries once in your config and agents operate freely within them. No permission prompts, no interruptions.

json
{
  "permissions": {
    "fs": {
      "roots": ["./src", "./test"],
      "deny": [".env", "secrets/**"]
    },
    "bash": {
      "allow": ["git", "npm", "make"]
    }
  }
}
Security Anything outside the sandbox is simply invisible to agents. They cannot escalate their own boundaries.

File system sandbox

fs.roots defines the directories that make up the sandbox. Agents can read and write freely inside these roots. Everything else is invisible.

fs.deny carves out exclusions within the sandbox for secrets, credentials, and sensitive config.

Command sandbox

bash.allow defines which shell commands agents can execute inside the sandbox. Pipes and subshells that would reach outside the sandbox are blocked automatically.

See Permissions configuration for the full reference.

CLI reference

mode

Start Mode Agent. Authenticates automatically on first run.

bash
mode

Starts an interactive Mode Agent session. If this is your first time, it opens your browser for magic link authentication. Once authenticated, you're taken straight into the session.

CLI reference

mode logs

Stream or replay agent signals from a run.

bash
mode logs [run-id]          # Replay signals for a run
mode logs --follow           # Stream live signals from current run
mode logs --agent email      # Filter to one agent
CLI reference

mode stop

Stop a running agent or an entire run.

bash
mode stop                    # Stop all agents in current run
mode stop --agent ads        # Stop a specific agent
mode stop --run abc123       # Stop a specific run by ID
Configuration

Config file

Place .mode/config.json in your project root. Mode Agent reads this file automatically on every session.

json
{
  "permissions": {
    "fs":   { "roots": ["./src", "./test"] },
    "bash": { "allow": ["git", "npm", "make"] }
  }
}

The config file is for permissions only.

Configuration

Permissions config

Full reference for the sandbox configuration block. Define the boundaries once and agents operate freely within them.

KeyTypeDescription
fs.rootsstring[]Directories that form the file system sandbox
fs.denystring[]Glob patterns excluded from the sandbox
bash.allowstring[]Shell commands available inside the sandbox
bash.denystring[]Commands excluded even if listed in allow
net.allowstring[]Outbound hostnames reachable from the sandbox
net.denystring[]Outbound hostnames blocked from the sandbox
Deny takes priority. If a path or command appears in both allow and deny, it is excluded from the sandbox.
API referenceComing soon

REST API

The Mode Agent REST API will let you start runs, stream signals, and manage agents programmatically.

Coming soon. The REST API is not live yet. The endpoints, base URL, and examples below are a preview of the planned interface. They are not callable today, so do not wire them into anything until we announce availability.

Base URL

The base URL will be published here when the API goes live. There is no live endpoint to call yet.

Planned endpoints

MethodPathDescription
POST/v1/runsStart a new agent run
GET/v1/runs/:idGet run status and results
DELETE/v1/runs/:idStop a run
GET/v1/runs/:id/signalsStream signals (SSE)
GET/v1/agentsList available agent roles

See Authentication to get started.

API referenceComing soon

Authentication

How API requests will authenticate once the REST API is live.

Coming soon. This is a preview of the planned auth flow. There is no API to call yet, so generated keys cannot authenticate against anything today.

Requests will pass your API key in the Authorization header, in this form.

bash
Authorization: Bearer sk_mode_xxxxxxxxxxxx

API keys will be generated from your dashboard, scoped with specific permissions and rate limits.

Keep it secret. Never expose your API key in client-side code or version control.
API referenceComing soon

Runs

How you will create and manage runs via the API.

Coming soon. The endpoints below describe the planned interface. They are not live, so there are no runnable examples yet. We will add request and response samples here when the API ships.

POST /v1/runs

Will start a new agent run from a goal and an optional set of agent roles.

GET /v1/runs/:id

Will return the status and results of a run.

API referenceComing soon

Agents

How you will list and inspect available agent roles.

Coming soon. This endpoint is not live yet. The response shape below is a preview of the planned interface.

GET /v1/agents

Will return all available agent roles.

Planned response

json
{
  "agents": [
    { "role": "planner", "parallelizable": false },
    { "role": "email", "parallelizable": true },
    { "role": "ads", "parallelizable": true }
  ]
}

Let AI run your marketing.

Mode Agent does the daily work. You approve the spend.

Get early access