Workshop · Session 1 of 6 · Thursday, September 17 · 12 PM ET

The Agent-Native Agency · Day one

Map what you run. Then stand up the platform you own.

Your agency already runs on Claude Code and Codex agents, n8n flows and the scripts holding them together, spread across tools and accounts with nobody holding the full picture. Today we look at the platform that gathers all of it in one place you own, install it on your own server, and map what goes in.

Trinity v0.9.5 · release candidate 4, final out this week Apache 2.0 · self-hosted
You leave witha map of your current stack
andone target for all of it
andyour own Trinity instance, running

01 · Today

Watch it run, understand why it compounds, then install your own.

The install takes about ten minutes, most of it waiting. We use that wait to map your stack, so you leave with both.

  1. Trinity v0.9.5, live

    The main features of the 0.9.5 release on our own instance, where to click, and in what order.

    demo
  2. Personal agents vs one system for the company

    Why personal agents turn into shadow AI, and why a company system keeps getting better.

    concept
  3. How a shared agent serves many people

    Teammates, clients, channels, and memory that stays private to each person.

    demo
  4. How the system gets better with experience

    Shared rooms, agent-to-agent calls, canon, Cornelius, one orchestrator.

    concept
  5. Three ways to install, one started live

    Local, the DevOps agent, or the DigitalOcean script. We run the script.

    live
  6. While it installs: map what you run

    Every agent, flow and script. Where it lives, what it touches, who depends on it.

    exercise
  7. What "your servers" means for your clients

    Data residency, security defaults, and what the Apache 2.0 license lets you do.

    concept
  8. First login, and what comes next

    Sign in, add a domain, and the five sessions ahead.

    live

02 · Trinity v0.9.5live demo

A place where agents keep working and your team works with them.

Trinity is the open-source platform for building and running persistent agents. Each agent has its own container, memory and schedule, works while nobody is watching, and reports back to one place. This release makes the Workspace the everyday surface. What to show, and where to find it:

01

The Workspace is the product

Agents at the center. A pinned Main chat, chats as tabs you can rename and jump between, resizable columns, unread marks in the sidebar and the tab title.

show at/workspace · ⌘J to switch
02

Watch the work happen

A live execution card streams inside the conversation. The Work tab keeps the history. Loops start and stop from the chat.

show atWorkspace rail → Work · Loops
03

Agent Canvas

Charts, tables, KPIs and diagrams from one block set, with starter layouts. Share a canvas at a link or export it as a PDF. The open canvas is context for the agent's next turn.

show atWorkspace rail → Canvas
04

Voice, with the orb

A real-time call inside the Workspace. The call acts as the agent. Long tasks keep running in the background and the agent reports once when they finish.

show atcall button in the composer · Talk on the agent page
05

DigitalOcean install

Prebuilt images, unattended setup, and an installer script for DigitalOcean: four questions, then a server of your own on HTTPS with a real certificate.

show atsection 06, run live
06

Setup without a terminal

A first-run overlay and a setup checklist in the browser, including a "Secure this instance" step.

show atfirst sign-in on the new instance
07

Usage and spend in view

Subscription use over the last 5 hours and 7 days, and an alert at 75% of the weekly limit. Instance telemetry is opt-in, and you can inspect the payload before sharing.

show atOperations

The tour, in click order

  1. DashboardTimeline, then Grid and List
  2. Agent pageconfiguration, schedules, logs, executions
  3. WorkspaceMain chat, pick a model, send a real task
  4. Work · Loops · Fileslive card, history, start a loop, drop files
  5. Canvasask for a chart, share the link
  6. Voicecall, the orb, canvas beside it
  7. Operating Roomapprovals and questions from agents
  8. Access · Sharingteammates and clients (section 04)
  9. Library → Skillsassign a skill to an agent
  10. Roomsmulti-agent chat: @mention a second agent in
  11. Reports · Operationswhat ran, what it cost
trinity · dashboard
Trinity dashboard in grid view: agent cards with status, activity and cost
The dashboard: every agent, its state and activity. Screenshot from v0.9.0; the demo shows the 0.9.5 build.
trinity · workspace
Trinity Workspace with several agents in one conversation
Several agents in one conversation (v0.9.0 screenshot).
trinity · library
Trinity skills library listing reusable skills
Skills written once, assigned to any agent (v0.9.0 screenshot).

03 · One system, not scattered agents

Personal agents turn into shadow AI. A company system keeps compounding.

Most teams start with each person building their own agents. It works for a while. Then there are a few dozen of them, on different laptops and accounts, with no shared rules, and nobody remembers exactly how each one was built. That is how agents quietly die, and how they become a mess nobody else can use.

Shadow AI

Nobody knows it exists

Built on a personal account or laptop, touching client data and company tools, invisible to everyone else.

Abandoned AI

Built, then forgotten

Made for one project and left behind. Some still run on a schedule, some break silently. Nobody notices either way.

Ungoverned change

Changed with no guardrails

Edited on the fly: no review, no history, no rules for how an agent may change. This week's agent is not last week's.

Unusable

Only the author can use it

Colleagues can't tell what it does, what it expects, or what it touches. When the author leaves, it leaves too.

Personal agents

one owner each, no shared rules

  • Everyone runs their own Claude Code or Codex agents.
  • Nobody can say how many exist or what they touch.
  • Changes happen in place, with no review and no record.
  • What an agent learned stays in one person's context.
  • Every new client starts from scratch.

One system for the company

many agents, one governed system

  • Agents are company seats, shared with the people who need them.
  • One inventory: every agent, its owner, its schedule, what it costs.
  • Each agent lives in a git repository: changes are versioned and reviewable, every run is logged, and you choose which actions wait for a person's approval.
  • What one agent learns is published for the others.
  • Each new client starts from what the last one taught. People change; the experience stays.

Both run on the same models. The difference is where the experience accumulates, and who governs how it changes: one person's laptop, or a system the company owns.

Compounding intelligence on rented ground compounds for the landlord.WHICH IS WHY THE SYSTEM RUNS ON SERVERS YOU OWN

04 · Shared agentslive demo

A shared company agent serves many people, each with their own memory.

A company has many agents, and each is shared the way a colleague is. Teammates work with it in Trinity. Clients reach it from the channels they already use, without an account. Each person's conversation and memory stay their own.

WHO REACHES IT Ownerfull control: configure,schedule, share Teammates · Access tabshared operators: chat, run tasks,see files and logs. No config. Clients · Sharing tabno account, verified email.Restricted or Open. Shared company agent e.g. client delivery for account A its own container and schedule its skills and instructions own rules for outsiders ONE OF MANY IN THE COMPANY WHAT EACH PERSON GETS Your chatseach person sees only their own Memory per personkept per (agent, verified email) One approval, every channelan approved email works on all of them CHANNELS Workspace · Slack · Telegram · WhatsApp · voice · public link

Access tab

Add teammates by email. They can chat, run tasks, and see files and logs; the configuration stays with the owner. Each teammate has a toggle that allows the agent to message them first.

Sharing tab

Outside people reach the agent without a Trinity account and are identified by a verified email. Restricted means you approve each request; Open means anyone verified can chat.

Private by default

Each person sees only their own conversation; admins can see all. Memory is kept per agent and per verified email, so the agent remembers a client without mixing clients up.

A separate voice for outsiders

Set a different model and extra instructions for public conversations only. Your team's chats and scheduled runs are unaffected.

05 · How it compounds

Work goes down, facts come up, and lessons come back to every agent.

One shared agent is only the start. The system improves once its agents share what they know, work together, and bring what they learned back to the rest. These are the mechanisms we run the company on, and the ones Sessions 3 and 4 build.

work flows down facts and observations flow up lessons come back through the brain
Your peopleset goals, approve the gates One orchestratorroutes work to the right department Marketingagent Salesagent Client deliveryone per client Financeagent ROOMS: A SHARED RECORD · @MENTION WAKES AN AGENT · WHO MAY CALL WHOM IS DECLARED Canon · what the company holds true each agent publishes its own facts · others' go through review · all read it OBSERVATIONS Cornelius · the second brain reads, incubates ideas, and grows its knowledge between conversations corroborates across teams before anything becomes a lesson HUMANS ENDORSE THE CORE LESSONS PROPOSES CANON CHANGES · A HUMAN DECIDES EVERY PROCESS THE SYSTEM RUNS LEAVES IT MORE VALUABLE, AND THAT VALUE STAYS WITH THE COMPANY
work downfacts and observations uplessons backshared record

Rooms

A conversation several agents and people share. It is a shared record rather than shared context: an agent joins when it is @mentioned.

Agent-to-agent calls

Agents hand work to each other directly, each with its own key, and get the result back. Many tasks can run in parallel.

Who may call whom

A system definition declares which agents may reach which. Anything not declared is refused.

Canon

A shared record of what the company currently holds true. Each agent writes only its own part and reads everyone's, so every agent works from the same facts.

Cornelius, the second brain

Agents report what they observed. The brain checks it against other teams' reports and sends the result back as a lesson that includes the conditions it was learned under.

One orchestrator

One agent on top that takes goals, routes work to the right department, and reports up. For work that crosses departments, your people ask one agent, not twenty.

What we build

Self-improving cognitive systems: AI that works continuously, compounds knowledge and ships its own improvements, with a human hand on the dial.

06 · Installstarted live

Three ways in. Today we run the DigitalOcean script.

All three give you the same platform. Pick by where it should live and how much of the server work you want to do yourself.

01 · Your machine

Local install

Try it, build agents, develop. Everything runs in Docker; nothing else is installed on your machine.

Needs
Docker Desktop 24+, Git, 8 GB RAM for Docker
Steps
clone, set ADMIN_PASSWORD in .env, run start.sh
Time
about 10-15 minutes
github.com/abilityai/trinity
02 · Let an agent do it

The DevOps agent

A wizard in Claude Code: pick a cloud (DigitalOcean, Hetzner, GCP, AWS), a server you already have, or localhost. It installs Trinity and leaves you an ops agent for updates, health checks and diagnosis.

Needs
Claude Code, the trinity plugin, a cloud account or SSH access
Run
/trinity:deploy-new-instance
Time
about 15 minutes, then ongoing ops
trinity-ops-public
03 · New · DigitalOcean

DigitalOcean script

From your terminal: four questions, then a server on your own account with Trinity installed and HTTPS on.

Needs
DigitalOcean account, Claude subscription, Claude Code, doctl
Time
about 10 minutes, mostly waiting
Cost
about $48/month until you delete it
▸ running now, steps below

DigitalOcean, step by step · on Windows, run everything inside WSL

  1. Install DigitalOcean's command-line tool

    brew install doctl

    On Linux or WSL, follow DigitalOcean's install guide.

  2. Give it access to your account

    Open cloud.digitalocean.com/account/api/tokens, click Generate New Token, name it, tick Write, and copy the token. It is shown only once. Run this and paste it when asked:

    doctl auth init
  3. Get your Claude subscription token

    Run this and copy the sk-ant-oat01-… value it prints.

    claude setup-token

    This is not an Anthropic API key. API keys start sk-ant-api03- and won't work here.

  4. Decide on a password

    This is how you'll sign in to Trinity, as user admin.

    • At least 12 characters.
    • Must not start with password, admin, trinity, changeme or letmein. Trinity refuses those.
  5. Run the installer

    bash <(curl -fsSL https://raw.githubusercontent.com/abilityai/trinity/v0.9.5-rc4/scripts/deploy/trinity-do-create.sh)
    • It asks for your password (twice), the token from step 3, a region, and a name for the server.
    • It shows the monthly cost and asks before creating anything.
    • It creates an Ubuntu 24.04 server (4 vCPU, 8 GB), installs Trinity, and waits until the site answers. It checks for up to 15 minutes.
    • Your password is set before the server exists, so nobody else can claim the new instance.

    If it times out: open the server's Console in DigitalOcean and read /var/log/trinity-install.log.

  6. Open the address it prints

    Sign in as admin with your password. The site is on HTTPS with a real certificate, and the server's internal ports are closed to the internet.

  7. Optional: put a domain in front of it

    An IP address works but is awkward to share, and its certificate only lasts a few days before it renews. The first-run Secure this instance step suggests adding a domain.

    • Point your domain's A record at the server's IP. On Cloudflare, set the record to DNS only (grey cloud).
    • In Trinity: Settings → General → Public URL, enter https://your-domain.com, and save.
    • Open the domain in a new tab. The first load takes a few seconds while the certificate is issued.
Remember

The server costs about $48/month until you delete it. To remove it:

doctl compute droplet delete <name>

07 · While it installs

Map what you run today, then give it one target.

List everything your agency runs on: Claude Code and Codex agents, n8n flows, and the scripts holding them together. Many agencies find five tools spread over three accounts, with nobody holding the full picture. Fill in one row per item.

What it isagent, flow or script, and its job Where it livesmachine, service, whose account What it touchessystems, data, client accounts Who depends on itpeople, clients, other automations Decisionkeep · wrap · rebuild
Proposal writer (Claude Code agent)a founder's laptopDrive, client briefssales, every new clientkeep
Lead enrichment (n8n flow)n8n cloud, the ops lead's accountCRM, enrichment APIbusiness developmentwrap
Weekly client report (Python script)a cron job on an old VManalytics, Sheetsthree clients, nobody who remembers itrebuild

The three example rows are illustrations, not a real agency's stack.

askWhere does it run, and on whose account?
askWhat breaks if it stops tonight?
askWho would notice, and how soon?
askDoes it need memory or judgment?

Keep

Coded agents on Claude Code or Codex move over without a rewrite. The analysis below lists what to tidy first. Each gets its own container and keys, a seat in a department, and a person who receives its work.

Wrap

Flows and scripts that work stay. An agent owns and calls them, and they become playbooks.

Rebuild

Anything with no owner, or that needs memory and judgment, is rebuilt as an agent.

The targetEverything that survives the map gets a seat in one instance you own, grouped into departments, each seat with a person attached. Session 2 moves your existing agents in and builds the departments.
Let an agent do the first pass

Run the analysis with the marketplace plugins

Point one skill at the folders where your agents live. It finds every agent however it was built, scores it, and writes the plan to fix it. It sees what lives in folders; accounts, owners and who depends on what stay on your worksheet.

  1. Add the marketplace and the plugin in Claude Code
    /plugin marketplace add abilityai/abilities
    /plugin install agent-dev@abilityai
  2. Analyze the folders your agents live in one or more paths
    /agent-dev:agent-fleet-analysis ~/agents ~/flows
  3. Fix it: copy each agent into a Trinity-ready version your originals are never changed
    /agent-dev:agent-fleet-migrate
  4. Deploy what passed review Session 2
    /trinity:onboard

What it finds

Claude Code agents, n8n workflow exports, LangChain / CrewAI / AutoGen apps, and hand-coded agents, up to three folders deep.

What you get

  • A PDF report: a score for each agent, its gaps (credentials, memory, structure), and how the agents should be organized.
  • A markdown twin your agent can work through as a to-do list. Every fix maps to a skill in the marketplace.

Works without Trinity

The report is useful on its own. Trinity is where the fixed agents run.

Workshop recording: Make Claude Code agents run autonomously on TrinityWorkshop, July 30 · the full run on six old agents, about an hour

08 · Your servers

On your own servers, your clients' data stays within walls you control.

The instance you just started runs on your own cloud account. For an agency that is a selling point: you can say exactly where a client's data lives and who can reach it.

Their data stays put

One instance, one owner, no shared tenancy. Install it in a client's own cloud account and their data never passes through yours; or run it for them on yours.

Secure by default

HTTPS with a real certificate, internal ports closed to the internet, credentials encrypted at rest, and automatic database backups.

Nothing sent without consent

Usage telemetry is off until you opt in, and you can see the payload before anything is shared. Air-gapped setups can turn off outbound calls to Ability.

Apache 2.0

Trinity is open source under Apache 2.0, with an explicit patent grant. The platform in the public repository is complete on its own: self-hosted, commercial use included, free, no license key. Enterprise modules are an optional, separate add-on.

09 · Next

You have a running instance. Next session, your agents move in.

Before Session 2: sign in, complete the first-run checklist, add a domain if you have one, and finish your map. Bring it with you.

Sep 17 · today

Map it, stand it up

Your stack mapped, your instance running.

Oct 1

Bring your agents, build the departments

Marketing, BD, delivery, finance, legal.

Oct 8

One shared brain

A knowledge base and data layer every agent uses.

Oct 15

Orchestration

One agent to run them all, and the hand-offs between them.

Oct 22

Workspace for your team

Chat, files, voice, canvas and loops, for people who don't code.

Oct 29

Operations and the commercial model

Running unattended, monitoring, and pricing client work.

Thursdays · 12 PM ET / 9 AM PT

Build along

The platform

The open-source repository, with the deploy guides and the DevOps agent.

Trinity on GitHubDevOps agent
The series

Six sessions, one registration

Session pages, dates and what each one builds.

Workshop page