You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Coding agents are one operator type. The kernel is not built around prompts,
29
+
language models, or coding-agent semantics.
30
+
28
31
> [!WARNING]
29
32
> Boatstack is alpha software for experimentation. The CLI, Control Program
30
33
> ABI, configuration schema, generated skills, and state format may change
@@ -71,28 +74,55 @@ can discover the generated skills. See [Getting started](docs/getting-started.md
71
74
for the lower-level CLI path and [Configuration](docs/configuration.md) for the
72
75
repository policy schema.
73
76
77
+
## What Boatstack controls
78
+
79
+
| Concept | Meaning |
80
+
| --- | --- |
81
+
|**Control Program**| The complete executable control law: transitions, gates, authority requirements, recovery paths, objective rules, and marked states. The product-facing name for one complete program is a **Flow**. |
82
+
|**Supervisory state**| The small durable state owned by the kernel: program identity, control mode, exact objective binding, revision, and recovery state. Domain state stays outside the kernel. |
83
+
|**Objective**| External intent identified by an exact immutable revision and fingerprint. Changing intent requires an explicit control transition. |
84
+
|**Operator**| The component that performs one admitted operation. It may be an agent, human-mediated command, workflow, service, or deterministic program. |
85
+
|**Effect**| A registered state-changing operation with explicit capabilities and owned facets. |
86
+
|**Evidence**| Fresh observation and verification facts used to decide whether a transition may commit. |
87
+
88
+
## Software delivery is the first domain
89
+
90
+
Boatstack is not a generic platform for every agent system. Its first concrete
91
+
domain is software delivery, where StandardFlow governs repositories, plans,
92
+
worktrees, tests, reviews, publication, updates, and recovery. Git and
93
+
coding-agent concepts live in this domain layer, not in the general kernel.
94
+
74
95
## What ships today
75
96
76
97
Boatstack currently compiles 63 registered transitions into one executable
77
98
control graph. The complete list is generated from the registry in the
|**Programs and relation**| Domain-neutral programs, control instances, objective bindings, observations, operators, marked states, targeted and untargeted resolution, priorities, and prerequisite selection. One immutable fingerprint binds each program's executable semantics. |
106
+
|**Admission and authority**| Typed capabilities and separate human, autonomy, repository-policy, and external-provider receipts. Programs declare their maximum capability surface but cannot grant themselves authority. |
107
+
|**Transactions**| Prescriptions bind the exact control instance, state revision, program, objective binding, observation, transition, and authority. Apply rechecks that boundary before execution. |
108
+
|**Verification and receipts**| Fresh postcondition verification, atomic state-and-receipt commits, immutable transition facts, and idempotent replay. |
109
+
|**Recovery**| A durable effect attempt precedes execution. Interrupted or uncertain outcomes enter explicit recovery instead of blindly repeating an effect. |
110
+
111
+
### Software delivery
112
+
80
113
| Surface | Shipped functionality |
81
114
| --- | --- |
82
-
|**General kernel**| Domain-neutral programs, control instances, objective bindings, observations, capabilities, operators, verification, recovery, marked states, and receipts. The kernel does not require Git or a coding agent. |
83
-
|**Control Programs**| One immutable program fingerprint binds executable semantics, objective contracts, resource ownership, capabilities, and transition IDs. |
84
115
|**StandardFlow**| A first-party product-delivery Flow covering installation, repository attachment, configuration, objectives, planning, worktrees, build/test/review evidence, publication, cleanup, and recovery. |
85
-
|**Deterministic supervisor**| Targeted and untargeted resolution, explicit accepted objectives, transition priorities, prerequisite selection, and typed `PRESCRIBED`, `CANDIDATE`, `FRONTIER`, `BLOCKED`, `REFUSED`, `UNRESOLVED`, and `TERMINAL` decisions. |
86
-
|**Authority and capabilities**| Separate human, autonomy, repository-policy, and external-provider receipts. Programs declare a maximum capability surface but cannot grant themselves authority. |
87
-
|**Transactional effects**| Prescriptions bind the exact state revision, program fingerprint, snapshot fingerprint, transition, and correlation. Apply rechecks that compare-and-swap boundary under a repository lock before any managed effect. |
88
-
|**Durable state ownership**| Installation, program, control, and product state are separate facets. A transition fails closed if it attempts to mutate a facet outside its Kernel-owned policy. |
89
-
|**Verification and receipts**| Fresh postcondition checks, revision-bound build/test/review evidence, immutable transition facts, idempotent replay, and privacy-safe JSONL event projections. |
90
-
|**Recovery**| Restart-safe journals, reversible local mutations, explicit resume/rollback/escalation paths, and preserved unknown settlement for external effects. |
91
116
|**Repository topology**| Embedded, detached, and linked-worktree identity; verified state transfer when a workspace is cut; cleanup only after proved landing or explicit abandonment. |
92
117
|**Publication**| Preview, provider-authorized execution, observation, correction, and reconciliation. Boatstack does not infer provider authority from `gh` authentication and never grants merge authority. |
93
118
|**Runtime updates**| Per-repository immutable runtime pins, checksum verification, atomic program-drift reconciliation, rollback, and multiple repository versions in one host store. |
94
-
|**Safety guard**| One command-intent classifier for supported hosts. High-confidence destructive commands are denied and managed effects are routed through Kernel admission. |
95
-
|**Integrations**| One versioned protocol shared by the CLI, RPC, MCP, Go SDK, Cursor, Codex, Claude Code, and Gemini CLI. Hosts do not maintain independent delivery state machines. |
119
+
|**Safety guard**| One command-intent classifier for supported hosts. High-confidence destructive commands are denied and managed effects are routed through kernel admission. |
120
+
121
+
### Developer surfaces
122
+
123
+
| Surface | Shipped functionality |
124
+
| --- | --- |
125
+
|**Protocol and SDK**| One versioned protocol shared by the CLI, RPC, MCP, Go SDK, Cursor, Codex, Claude Code, and Gemini CLI. Hosts do not maintain independent delivery state machines. |
96
126
|**Extensions**| Additive, checksum-bound subprocess extensions with declarative manifests, JSON-schema settings, bounded I/O, deadlines, capability checks, and exact-byte execution. |
97
127
|**Analysis**| Passive retrospective analysis, generated Markdown and Mermaid catalogs, privacy-safe events, and checked Locus safety/liveness models. Formal whole-system claims remain advisory. |
98
128
@@ -123,11 +153,24 @@ commands such as `plan-create`, `workspace-cut`, `record-test`, and `publish-pr`
123
153
resolve and consume one exact prescription in the same invocation.
124
154
125
155
Untargeted resolution selects
126
-
only a transition that advances the configured objective. Maintenance, correction,
127
-
abandonment, provider actions, and merge authority are never invented as a way
128
-
around a frontier. After an operation is selected, generated host drivers keep
129
-
one command-scoped objective, repository, worktree, flow, actor, and authority
130
-
context through every resolution, effect, recovery, and re-resolution.
156
+
only a transition that advances the configured objective. Maintenance,
157
+
correction, abandonment, provider actions, and merge authority are never
158
+
invented as a way around a frontier. After an operation is
159
+
selected, generated host drivers keep one command-scoped objective, repository,
160
+
worktree, flow, actor, and authority context through every resolution, effect,
161
+
recovery, and re-resolution.
162
+
163
+
## Objectives and control state
164
+
165
+
Objectives are external intent. Boatstack stores only an exact objective
166
+
binding—identity, revision, and fingerprint—in supervisory state. A new prompt
167
+
or command cannot silently reinterpret that state: binding, replacing, or
168
+
clearing an objective is an explicit transition governed by the active Control
169
+
Program.
170
+
171
+
Domain state remains outside the kernel. The kernel retains only the minimum
172
+
state needed to control progress: program identity, control mode, objective
The README now separates the general supervisory kernel from the software-delivery domain and explains Control Programs, Flows, objectives, operators, effects, evidence, and the state-and-receipt control loop.
0 commit comments