Sidekick Runtime Boundary
The Sidekick Pack is a first-party pack for lightweight workspace productivity. It does not replace the kernel, and it does not own framework-level orchestration. Instead, it contributes a narrow set of tools and evidence-bearing state transitions within its own .sidekick/ data boundary.
Design Rules
Section titled “Design Rules”.sidekick/is the pack-owned storage root.routine:runis plan-only. It resolves and returns the ordered routine steps but does not execute them.routine:updatewithenabled: falseis the supported stop flow for routines.task:cancelis the task cancellation primitive; it adds a terminalcanceledstate instead of hard-deleting the task.sidekick:exportis read-only. It returns stored data as JSON and does not write export artifacts.- Every write-capable and destructive tool supports
dry_runso callers can validate the action without persistence. - The manifest is the public contract for tools, scopes, evidence types, and policies.
Scope and Evidence
Section titled “Scope and Evidence”Like every other pack, Sidekick tools still pass through:
- scope intersection
- policy evaluation
- tool execution
- evidence recording
That means task creation, memory writes, channel updates, and routine definitions all receive the same governance treatment as any other kernel tool call.
Sidekick now also uses pack-authored approval rules for destructive lifecycle actions:
task:cancelmemory:forgetchannel:deleteroutine:delete
When those tools are invoked through the kernel runtime, policy evaluation returns
approval_required before execution until the host resolves the approval request.
What Sidekick Does Not Do
Section titled “What Sidekick Does Not Do”- It does not execute autonomous workflow DAGs.
- It does not bypass kernel policy enforcement.
- It does not expand into every possible provider or external integration.
- It does not move generic agent-turn execution into Sidekick; that belongs to the Agent Runtime Pack.
Typical Usage
Section titled “Typical Usage”Use Sidekick when you need a compact, governed workspace productivity layer:
- track local tasks
- update or cancel those tasks without leaving the governed runtime
- keep reusable notes, memories, and snippets
- exchange small messages through named channels and list local channel state
- define repeatable routines, stop them with
routine:update, and inspect the resulting plan - export the current workspace-local state for debugging or handoff