Execution moves through clear boundaries.
The application shell never talks directly to tools. Calls pass through a local gateway, durable runtime and governed capability adapter.
The current state is derived from evidence.
Instead of overwriting state, LibreTask records an append-only sequence of decisions and results. The thread can be replayed, explained and recovered.
task.createdContract version one and the initial intent.
plan.generatedTask graph and candidate capabilities with explanations.
capability.invokedNormalized request, idempotency key and data destination.
checkpoint.reachedThe pending human decision and the path that continues after it.
deliverable.producedAn immutable package containing result, evidence and unresolved issues.
The client controls tasks, not tools directly.
A compact local API exposes task actions and capability routing while keeping execution internals replaceable.
/tasks/{id}/delegateValidate the contract and start the execution thread./tasks/{id}/contractCreate a new contract version with an explicit reason./tasks/{id}/decisionResume a waiting workflow with a human decision./tasks/{id}/eventsStream the execution trail through paginated events or SSE./capabilities/matchReturn candidates and the reasons they passed or failed policy./tasks/{id}/deliverableRetrieve the immutable delivery package.Boring foundations for ambitious automation.
The MVP deliberately avoids custom durable state, premature cloud sync and unnecessary application weight.
Tauri v2
Small packages, low memory use and native tray, shortcut and notification plugins.
React / TypeScript
A web interface isolated from runtime concerns by an adapter boundary.
Temporal
Durable workflows, replayable history and safe multi-day human waits.
MCP first
Discovery and invocation through MCP, with OpenAPI and CLI adapters alongside it.
SQLite
Portable local events, contracts and projections with explicit exports.
CRDT · later
Cross-device continuity follows a stable data model, not a rushed MVP dependency.
Contracts, policy, event history and delivery evidence live outside model context and remain inspectable.