Run a team
Add a team
The first run gives you a default team of four agents. To run your own, point Lucitra at its folder and switch to it:
lucitra team-add ~/teams/software
lucitra teams software
lucitra validate-team ~/teams/software # what is wrong with a package, without registering it
A team kept on GitHub is a clone away:
git clone https://github.com/you/software-team ~/teams/software
lucitra team-add ~/teams/software
Lucitra reads the folder each time, so an edit or a git pull applies to the next run. How to write
one is in Writing a team package.
Each agent runs as its own AGENTS.md says, with its access.yaml mandate. The org chart is the
permission: a lead may hand work only to its reports and to the agents it lists under
mayDelegateTo.
Start work
lucitra start-build "add rate limiting to the public API" # the Builder
lucitra start-build "triage this week's dependency bumps" devops # a named agent
lucitra tasks
A task returns as soon as it has an id and runs in its own worktree under
~/.lucitra/worktrees, never in your checkout. A lead delegates to its reports on its own.
Agents call outside services through integrations, only where their
access.yaml allows it.
The gate
A finished task pushes its branch and opens its pull request on its own. A person merges. To
have every run stop and wait for you first, list push under gated: in one of the team's
policies/*.md. A task that waits is answered with:
lucitra approve [task] # push the branch and open a pull request; a person merges
lucitra decline [task] # refuse; the worktree is left alone
lucitra cancel <task> # stop a task that is still running
Everything else is autonomous unless a team's policies/*.md list it under gated:: deploy,
publish, go-live, or any integration tool such as github:pr-create. Every agent on the team is
told to ask first for those, the shell forms are refused, and a gated integration call waits for you
in the Inbox.
A gate can name an environment. alpaca:orders-create@live holds orders only while Alpaca is
installed as live, so paper orders fill on their own; alpaca:orders-create with no environment
holds both. Orders are also held to trading limits.
Schedules
A TASK.md with a schedule: line runs on its own once you switch it on:
lucitra schedules
lucitra schedule software/weekly-ops/triage-deps on
lucitra run-schedule software/weekly-ops/triage-deps # once, now
Schedules are off until you turn one on. A run that is still going skips the next one, and after the machine sleeps only the latest missed run is considered. Nothing catches up. Every scheduled run stops at the same gate.
Budgets
lucitra budget software 2000000 week # the whole team
lucitra budget software 500000 day devops # one agent
lucitra budgets
A budget is tokens, never money: a subscription bills nothing per token. The period is day,
week or month. When a budget is used up, new work for that team or agent is refused until the
period resets; runs already going finish. You are told at 80% and at the stop on any channel you
have added.
Reading what happened
lucitra run-events <task> # every step: tool calls, what they returned, what the agent said
The app shows the same on each run's page, live while it runs: Inbox for what needs you, Runs, Threads, Agents, Schedules, and Settings.