workbooks docs

The Dock & capabilities

WASM has no ambient authority — no syscalls, no sockets, no filesystem. When a toolkit needs to do something it can't do alone, it asks the host through the Dock: a typed capability surface where each power is an explicit import.

A toolkit declares the capabilities it needs in its manifest:

#+CAPS: vfs llm browse

The host provides only the granted capabilities. A toolkit that imports a capability its profile doesn't grant simply fails to instantiate — enforcement is by construction, not by runtime check.

The capabilities

capwhat it grants
vfsa sandboxed SQLite store (no host filesystem)
commandscall another registered command (composition)
llma model completion (the host holds the key)
browsefetch + extract a URL (the host opens the socket)
netgated outbound HTTP
parallelfan work across isolated instances (the fabric)

The pattern that makes this safe: the host holds the credential and owns the egress. A toolkit that calls browse never sees the key and never opens a socket — it calls the capability, and the host does the work behind it.