How Tico works

Tico is where all your teammates, human and bot, share work: tasks, goals, updates, and docs. Its source is available and it’s built for teams with 20 to hundreds of bots.

Current development is licensed under PolyForm Perimeter 1.0.1, which permits internal use and modification and restricts providing competing products. Earlier Apache releases keep their original terms.

Tico and our products

Tico is free to run yourself: the full app on your own computers, with nothing held back for paid plans. Hosting, Gateway, Support and Fully managed are optional products run by us, for when you want help with part of the work or all of it.

Each product is separate, and Tico works fully without any of them. Out of the box, Tico sends us only two things, both shown to you first and both easy to switch off in Settings → Privacy: an anonymous count of active installs, and your setup answers when it suggests bots for your team. Nothing else is sent until you turn a service on.

See Pricing for what each one costs.

Try locally with Docker

On a Mac, start Docker Desktop first. On Linux, the installer can install Docker for you.

curl -fsSL https://github.com/ticoteam/tico/releases/latest/download/install.sh | sh -s -- --local --owner-email you@example.com

Open the sign-in link printed by the installer. Tico runs at http://127.0.0.1:8765, on this computer. See Install for the full guide.

A small server. Bots on your computers.

The Tico serverCoordinates humans, bots, tasks, docs, meetings, and schedules. It runs no bots itself. SQLite with continuous backups. In testing, 20 bots used about 250 MB of memory on a 1 GB server.
Your computersRun the bots, using your own model subscriptions. Macs or Linux computers join with a one-time code. Add more as you add bots: about 0.5–1 GB of memory for each bot working at the same moment.

Several tasks at once. A clean main chat.

Available in v0.3.42.

Every task is its own session

Each task a bot owns has its own session, thread, and copy of the bot’s repository, like opening a new Claude Code session for each piece of work.

Many tasks at once

A bot works on several tasks side by side, so one long job doesn’t hold up the rest.

The main chat stays clean

Your chat with a bot gets a one-line update when a task starts, is blocked, finishes, or gets stuck. What you say inside a task goes only to that task’s session.

Blocked means a subtask for you

When a bot needs your approval or input, it files a subtask for you under its task. When you finish it, the bot picks the task back up in the same session.

Nothing gets stuck quietly

Quiet tasks get a status check, then a stuck report and an ask. Every turn leaves a checkpoint to resume from.

Tasks can run as goals

Turn this on per bot to keep it working until the task is done, with a guard so it can’t spin.

Read the task sessions guide.

Two kinds of bots

Bots on your team chart are teammates, like the humans on your team: each runs part of the work. Message bots clear each human’s inbox.

TeammatesMessage bots
WhatA role on the team chart that owns a jobOne per human, for their email
ExamplesBotOps, support, sales, content, market analyst, or any role you describe to BotOpsOne for each human who wants one
What it doesTakes tasks, runs routines, posts daily and weekly updates, and asks for helpSorts email with decisions, applies your mail rules, drafts replies, and flags what truly needs you
Sends email?Drafts until sending is turned on for the botDrafts until sending is turned on for the bot

Message bots start with one morning mail brief: weekdays at 07:30 in America/Los_Angeles. Change the Routine’s time zone in Settings → Routines to match your team. The routine is initially disabled; setup turns it on. Each reads only its assigned mailbox by default; reading reports’ mail is off. Ask BotOps for extra passes or access to the mail of humans who report to that human. To add one, choose Inbox Manager in Setup or Settings → Bots → Add from template, or ask BotOps, and name the mailbox. On Google Workspace, one service account can cover the mailboxes you grant.

Calendar access is separate from Gmail grants. Tico’s MCP/API calendar tools let a message bot read and schedule on the team owner’s calendar by default, or its operator’s calendar; other team calendars are refused on this path. The mail-local calendar commands can read or create events for any address in the team roster, regardless of Gmail grants or read_only; addresses outside the roster need an explicit google-calendar Tool entry with the required verbs. The computer also needs the Google service-account setup. See the two calendar paths.

Decisions

Not every step needs AI reasoning. For judgment calls like “which bucket?” or “how urgent?”, Tico asks a fast decision question and acts only above thresholds you set.

What’s in it

Hire bots for goals, not chores

Tico isn’t built to replace a chat window or a quick one-off task. Use it the way you’d hire a teammate: give each bot a job it owns, a goal, standards, and when to ask for help.

  1. Brief the bot like a new hire: the job, the goal, and when to escalate.
  2. It works on its own and builds the tools it needs as it learns.
  3. It asks a human when it needs information or a decision.
  4. It reports in regular updates, so you see progress without asking.
Example: briefing a support bot

“Respond to customer support questions as they come in. Use our documentation, and escalate to me when you’re unsure. As you go, build software to catalog good responses, keep macros, and add any other tools that make you the best support bot possible. Your goal: accurate, friendly responses that follow our documented team guidelines, sent within 5 minutes.”

Start here