Skip to content

Sidekick Pack

The Sidekick Pack adds a compact, workspace-local productivity surface to the kernel. It manages tasks, memory, named channels, routines, and status data under .sidekick/, while keeping every tool call inside the normal kernel policy, scope, and evidence pipeline.

Tasks

Create, update, schedule, complete, and cancel personal or team-local tasks without leaving the governed runtime.

Memory

Store, edit, and recall workspace knowledge, notes, snippets, and lightweight context that agents can reuse later.

Routines

Define reusable multi-step sequences, stop them with routine:update, and inspect the plan before anything runs.

Channels

Use named channels for lightweight communication, discovery, and local cleanup inside the workspace.

The pack currently exposes 23 tools across five groups:

GroupTools
Tasktask:create, task:list, task:update, task:cancel, task:complete, task:schedule
Memorymemory:store, memory:recall, memory:update, memory:forget
Channelchannel:configure, channel:list, channel:delete, channel:send, channel:receive
Routineroutine:create, routine:list, routine:update, routine:delete, routine:run
Systemsidekick:init, sidekick:status, sidekick:export
  • routine:run is still plan-only.
  • routine:update with enabled: false is the stop flow for routines.
  • task:cancel is the task terminal destructive action; it is distinct from task:complete.
  • task:cancel, memory:forget, channel:delete, and routine:delete are approval-gated destructive tools. The kernel pauses them with APPROVAL_REQUIRED until the host resolves the approval.
  • All write-capable and destructive Sidekick tools support dry_run.

All Sidekick state stays under .sidekick/ in the workspace root. The pack treats that directory as its owned state boundary and keeps the data model simple enough to inspect and export.

.sidekick/
  audit/
    events.jsonl
  channels/
    channels.json
    messages.json
  memory/
    memories.json
  routines/
    routines.json
  tasks/
    tasks.json