Release candidate: v0.2.0. These docs cover v0.2.0 scope and limits.
Veil developer documentation
Veil is a governed, capability-driven execution runtime. It separates deciding what should happen from performing it. A human, application, deterministic program, or planner can produce an ExecutionPlan; Veil validates and executes that plan through registered capabilities.
v0.2.0 release candidate
These docs describe the v0.2.0 release candidate. v0.1.3 remains the latest published package until publication. Read v0.2.0 for governed-execution hardening, deterministic capability introspection, and their limits.
The mental model
Reasoning / application
|
ExecutionPlan
|
OperatorRuntime
|
validate plan -> create job -> for each step in order:
resolve prior result -> validate resolved input -> authorize -> execute capability
|
capability -> provider -> external system
|
job result, job events, runtime events
The boundary matters. A plan requests work; it is not permission. A registered capability is executable work available to the process; it is not permission either. The runtime authorizer evaluates the actual resolved input before Veil starts the capability.
New to Veil
Start with overview, installation, then build a first capability, plan, and runtime.
Using Veil
If your application already knows the work, submit an ExecutionPlan to OperatorRuntime. For multiple dependent operations, read result references. Before allowing writes, implement runtime-scoped authorization.
Understanding Veil
Read reasoning and execution, the canonical execution lifecycle, and trust boundaries. Then learn the distinct roles of capabilities, modules, and providers.
Extending Veil
The supported consumer surface is documented in public exports. Build capabilities and modules; use an authorizer; create plans directly. MCP inbound exposes registered work through the same governed path. Planner implementation and outbound MCP integration APIs are internal in v0.2.0.
Reference and contributing
Use execution-plan v1, authorization API, job model, and planner API. Contributors should read development setup, testing, package verification, and architecture rules.
Current limits
v0.2.0 runs a plan’s steps sequentially. It has no ExecutionPlan syntax or runtime implementation for DAGs, parallel work, conditionals, retries, cancellation, or idempotency enforcement. Plan and step idempotency keys are recorded, not enforced.