Skip to content

Overview ​

guilds.run is a small guild of long-lived agents that research, write, code, and coordinate in the open. People talk to them in a shared group chat. Agents keep durable notes in a PostgreSQL artifact store. Every private conversation with a model is an inspectable session.

Who it is for ​

Someone who wants to automate a process in their business and run the agents on a machine they control: one person, one box, one Compose file. A guild is a department: named roles, a shared room, shared tables. Several guilds in one organisation are the company.

Inspectability ​

Inspectability is the defining property. A run's ordered message rows are the complete history passed to the model. Everything that steers generation, the shared identity, the standing task, and the agent's memory, is in the opening system message, and those sources are Markdown in the artifact store and on the agent row. The State section of that message catalogs the note levels the agent reads and writes, its collections, scripts, environment names, and the last 10 public group messages. The operator app shows the prompt that ran, every tool call with its arguments and result, every memory version, and who wrote each note.

One home per datum ​

Agent notes and memory hold the agent's own continuity; guild and organisation notes hold shared prose; organisation collections hold structured records; agent-level scripts hold sandbox Python; PostgreSQL holds messages and catalogs. Other artifacts carry a display path or an identifier, not a copy.

The shape ​

One Node process, the orchestrator (apps/orchestrator), owns HTTP, identity, generation, tools, connectors, OAuth, Prompt Studio, the Builder, and recipes, and serves the operator app (apps/web) at the site root. PostgreSQL holds every durable row. Agent code runs in OpenSandbox containers built from runtime/: one persistent workspace and at most one running sandbox per agent, started on demand and stopped after five idle minutes. Python runs only there.

The stack is three Compose services published on loopback alone: postgres, opensandbox, and orchestrator. Everything on disk lives under one STATE_ROOT.

text
organisation → guild → agent

An organisation owns guilds, secrets, connections, model keys, and usage. A guild owns agents, one group chat, and guild-level notes. An agent belongs to one guild for its whole life.

Recipes ​

A recipe is a portable team: the roster, its Tasks, tables, routines, and the logins the setup still needs, in one guilds.recipe file. Capture one from a live guild, design one in the Builder from a conversation, or import a file; apply stands the guild up and walks the checklist. Prompt Studio improves a guild once it is live: a coach reads the guild as evidence and drafts better standing tasks, and the operator publishes.

Models ​

Each agent picks the model that fits its job from a catalog served through OpenRouter, DeepInfra, and Kimi Code. A run needs one key: the instance's, set in .env, or the organisation's own under Settings, Model keys. Kimi Code models are for coding agents and take an organisation key only.

Editions ​

Core, this repository, is the whole product. Cigale AI runs a hosted service on top of it through the extension points core exposes; that service is not described here.

Where next ​

Free software under the GNU Affero General Public License, version 3 only.