Directories
¶
| Path | Synopsis |
|---|---|
|
control-plane
|
|
|
api
Package api is the control-plane HTTP surface.
|
Package api is the control-plane HTTP surface. |
|
api/middleware
Package middleware holds the control-plane HTTP plumbing: request context, bearer authentication, idempotency-key enforcement, and RFC 9457 problem rendering.
|
Package middleware holds the control-plane HTTP plumbing: request context, bearer authentication, idempotency-key enforcement, and RFC 9457 problem rendering. |
|
cmd/palai-capability-worker
command
Command palai-capability-worker is the macOS FIXTURE capability worker (E17 Task 9, spec §31, WRK-001..007).
|
Command palai-capability-worker is the macOS FIXTURE capability worker (E17 Task 9, spec §31, WRK-001..007). |
|
cmd/palai-control-plane
command
Command palai-control-plane serves the LP-0 HTTP surface over the durable spine.
|
Command palai-control-plane serves the LP-0 HTTP surface over the durable spine. |
|
internal/artifacts
Package artifacts is the control-plane's boundary over the S3-compatible object store (SeaweedFS locally).
|
Package artifacts is the control-plane's boundary over the S3-compatible object store (SeaweedFS locally). |
|
internal/automation
Package automation is the control-plane domain logic for the E11 automation layer.
|
Package automation is the control-plane domain logic for the E11 automation layer. |
|
internal/botcreds
Package botcreds joins two inventories that deliberately know nothing about each other: the kind-agnostic bot registry (internal/bots, whose charter is that no method of its own decodes a bot's `config`) and the secret store (internal/identity, whose charter is that a sealed value has no read-back path).
|
Package botcreds joins two inventories that deliberately know nothing about each other: the kind-agnostic bot registry (internal/bots, whose charter is that no method of its own decodes a bot's `config`) and the secret store (internal/identity, whose charter is that a sealed value has no read-back path). |
|
internal/bots
Package bots is the kind-agnostic bot registry (migration 000061, 2026-08-03 plan Task 4): a project's registered bots, one row per relay process the console can create.
|
Package bots is the kind-agnostic bot registry (migration 000061, 2026-08-03 plan Task 4): a project's registered bots, one row per relay process the console can create. |
|
internal/execution
Package execution's orchestrator is the single response kernel: it drives a run through the canonical state machine and a live engine channel, committing every provider and tool result before it reaches the engine.
|
Package execution's orchestrator is the single response kernel: it drives a run through the canonical state machine and a live engine channel, committing every provider and tool result before it reaches the engine. |
|
internal/execution/tools
Package tools defines the built-in model-facing tool surface (file, shell) that runs behind the sandbox-backed execution seam (spec §28.7-28.8).
|
Package tools defines the built-in model-facing tool surface (file, shell) that runs behind the sandbox-backed execution seam (spec §28.7-28.8). |
|
internal/extensions
Package extensions is the control-plane domain logic for the E12 extensibility registry.
|
Package extensions is the control-plane domain logic for the E12 extensibility registry. |
|
internal/fleet
Package fleet is the runner registry: which machines have enrolled, under which pool, holding which certificate, and when each was last seen.
|
Package fleet is the runner registry: which machines have enrolled, under which pool, holding which certificate, and when each was last seen. |
|
internal/identity
This file adds the ENVIRONMENT surface to the identity package (E25 T3): a named group of key→value pairs an agent's shell receives.
|
This file adds the ENVIRONMENT surface to the identity package (E25 T3): a named group of key→value pairs an agent's shell receives. |
|
internal/knowledge
Package knowledge is the E17 Task 4 knowledge spine (17b): an IMMUTABLE ingestion -> index -> retrieval spine on PostgreSQL full-text search (tsvector/tsquery + GIN, migration 000035 in-tree — assigned 000036, renumbered at merge per the fixed order; see the migration's MERGE NOTE).
|
Package knowledge is the E17 Task 4 knowledge spine (17b): an IMMUTABLE ingestion -> index -> retrieval spine on PostgreSQL full-text search (tsvector/tsquery + GIN, migration 000035 in-tree — assigned 000036, renumbered at merge per the fixed order; see the migration's MERGE NOTE). |
|
internal/metering
Package metering is the durable store behind the usage surface (spec §43, E13 Task 6, BIL-001/BIL-003/QUO-001): the read half of the append-only usage_ledger, and the write half of the budgets/quotas limits the ADMISSION transaction enforces.
|
Package metering is the durable store behind the usage surface (spec §43, E13 Task 6, BIL-001/BIL-003/QUO-001): the read half of the append-only usage_ledger, and the write half of the budgets/quotas limits the ADMISSION transaction enforces. |
|
internal/metrics
Package metrics exposes the control plane's operational signals in Prometheus text-exposition format on an unauthenticated, internal-network GET /metrics (mounted beside /healthz — the production edge path-matches `reverse_proxy /v1/*` in deploy/compose/production.yml, so it never proxies this; Prometheus reaches it on the internal Compose network).
|
Package metrics exposes the control plane's operational signals in Prometheus text-exposition format on an unauthenticated, internal-network GET /metrics (mounted beside /healthz — the production edge path-matches `reverse_proxy /v1/*` in deploy/compose/production.yml, so it never proxies this; Prometheus reaches it on the internal Compose network). |
|
internal/store
Journal reads the durable session journal for the control-plane's live event stream.
|
Journal reads the durable session journal for the control-plane's live event stream. |
|
internal/workers
Package workers is the CapabilityWorker contract (spec §31.2-31.6, E17 Task 9, WRK-001..007): the outbound-enrolled, lease/fenced execution surface for typed CAPABILITY jobs that run OUTSIDE the control plane's process/network — the same enrollment + lease/fencing semantics a runner uses (packages/runner + coordinator), applied to a macOS host toolchain the container cannot reach.
|
Package workers is the CapabilityWorker contract (spec §31.2-31.6, E17 Task 9, WRK-001..007): the outbound-enrolled, lease/fenced execution surface for typed CAPABILITY jobs that run OUTSIDE the control plane's process/network — the same enrollment + lease/fencing semantics a runner uses (packages/runner + coordinator), applied to a macOS host toolchain the container cannot reach. |
|
internal/workspacestore
Package workspacestore is the control plane's half of the workspace inversion: the object-store layout a workspace is published into, and the durable head that says which manifest it is at.
|
Package workspacestore is the control plane's half of the workspace inversion: the object-store layout a workspace is published into, and the durable head that says which manifest it is at. |
|
Command slack-bot is a Palai bot process: one instance per registered row in the control plane's bot registry (POST/GET /v1/bots, apps/control-plane/api/bots.go).
|
Command slack-bot is a Palai bot process: one instance per registered row in the control plane's bot registry (POST/GET /v1/bots, apps/control-plane/api/bots.go). |
|
internal/config
Package config loads the slack-bot process's environment.
|
Package config loads the slack-bot process's environment. |
|
internal/relay
This file is Task 10 (2026-08-03 plan): the approval bridge.
|
This file is Task 10 (2026-08-03 plan): the approval bridge. |
|
internal/socket
Package socket is the slack-bot's Socket Mode connect loop (2026-08-03 plan, Task 12.5): the one piece of genuinely new code the wiring task needed, because every other piece already existed and only lacked a caller.
|
Package socket is the slack-bot's Socket Mode connect loop (2026-08-03 plan, Task 12.5): the one piece of genuinely new code the wiring task needed, because every other piece already existed and only lacked a caller. |
|
internal/store
Package store is the slack-bot's own durable state: the mapping from a Slack thread to a Palai session (2026-08-03 plan, Task 8).
|
Package store is the slack-bot's own durable state: the mapping from a Slack thread to a Palai session (2026-08-03 plan, Task 8). |
|
migrations
Package migrations embeds the slack-bot's own forward-only schema — one small table so far (thread_sessions, Task 8) — kept separate from storage.OrderedMigrations (storage/migrations.go) because the two are unrelated schemas: this one lives in the bot's own database, has no down files (nothing here has ever needed a rollback), and versions from 1, not from wherever storage's chain happens to be.
|
Package migrations embeds the slack-bot's own forward-only schema — one small table so far (thread_sessions, Task 8) — kept separate from storage.OrderedMigrations (storage/migrations.go) because the two are unrelated schemas: this one lives in the bot's own database, has no down files (nothing here has ever needed a rollback), and versions from 1, not from wherever storage's chain happens to be. |
Click to show internal directories.
Click to hide internal directories.