Skip to content
Helmsman
Menu

Product

The product

Helmsman holds the records for applications and their delivery, and for agents and the multi-agent processes that use them. It hands the real work to pluggable providers.

Delivery records

An Application is one deployable service. It carries Quotas (CPU, memory and jobs per Cluster), Namespaces, Ownership links to other Applications, Extended resources and an LDAP-group Permission list that is always replaced whole.

Pipelines, Pipeline runs, Deployments, Stages, Events from delivery sources and Commit statuses are tracked alongside it. An Application can be jailed, delete-protected or soft-deleted, and only an org admin can release a Jail.

Agentic workloads

An Agent is a governed resource that names its kind, Runtime, model, instructions and MCP servers. Invoking one needs write access, because it spends tokens. Every Invoke records an Agent run with its input, output, status and token usage.

The openai and claude-mcp Runtimes call real model APIs and are picked per Agent; noop does nothing on purpose. Other runtimes are registered as unsupported until they are built, and an unknown Runtime fails the Agent run rather than falling back.

Multi-agent processes

A Process is an ordered set of Steps under one Topology: sequential, concurrent, handoff or supervisor. Each Step invokes an Agent or is an Approval gate.

A Worker drives every Process run. An Approval gate pauses the run with status awaiting_approval; approving resumes it and rejecting cancels it. Without a live Worker, new Process runs and approvals are refused instead of hanging.

Tools behind one checkpoint

MCP servers are registry entries with their own Mode. Every tool call from an Agent run passes through the Tool broker, which re-checks the Agent’s allow-list, validates the input, keeps secret headers server-side and records an Audit event.

Access, audit and search

Each member holds one Org role: org:admin, org:contributor or org:viewer. Automation uses a Service account with a PAT and may carry the ci:agent Machine role.

Each resource has unix-style ugo×rwx bits, where the execute bit means delete. No Mode may grant write or delete to everyone, and Search lists only what everyone may read.

Mobile and desktop

The repo contains an Expo mobile app for monitoring and acting on Approval gates, with push notifications for pending approvals. Its builds go to TestFlight through a manual release workflow; this site does not offer a store download.

A Tauri desktop shell is built by a release workflow, but no public download is published, so there is nothing to download here yet.

What a Mode grants

The default Mode for a new resource is 0o740: the Owner user may read, write and delete, the Owner group may read, and everyone else gets nothing. 0o744 adds read for everyone, which makes the resource Public.

What a Mode grants
BitOwner userOwner groupEveryone else
Read (r)YesYesOnly if Public
Write (w)YesIf grantedNever
Delete (x)YesIf grantedNever

Write includes Invoke for Agents and starting a Process run. An Owner group must be one of the caller’s own Organizations.

At a glance

API
REST under /api/v1, Hono with OpenAPI
Response envelope
{ total, next, prev, items[] }, offset paging
Error shape
{ code, error, traceback }
Sign-in
Zitadel (OIDC), the shared Fleetworks identity provider
Machine access
Service account PAT, prefix wl_
Default Mode
0o740 (rwxr-----)
Database
PostgreSQL through Drizzle ORM

See every deployment and every Agent run in one place

Sign in with your Fleetworks account, or start with the public endpoints of the API.