v0.5.0 — in-sandbox action discovery
In-sandbox action discovery
Discovery is now a first-class part of the sandbox. Inside runline exec, an actions object lets the agent explore the catalog without leaving the sandbox boot.
actions.list() // every "plugin.action" path
actions.list("github") // filter by plugin
actions.find("create issue") // ranked fuzzy search (MiniSearch)
actions.describe("github.issue.create")
// → { path, plugin, action, description, signature, inputs }
actions.check("github.issue.create", { owner: "a" })
// → { ok, missing, unknown, typeErrors, signature } (does NOT call)Unknown paths throw with did-you-mean suggestions, so typos are self-correcting. Recommended flow: find → describe → check → call.
Also
- Plugin globals and
actions.<plugin>.<action>(...)are now both legal forms of the same call. - MiniSearch is bundled into the sandbox source for fuzzy ranking.
Breaking
- Removed
help(),<plugin>.help(), and the proxy's.helpshortcut. Useactions.list/find/describeinstead. HelpEntry.inputsshape changed from formatted string to{ type, required, description }.
pi-runline
- Removed the
list_runline_actionstool — discovery happens insideexecute_runlinenow. - Session-start primer rewritten: instead of dumping the full catalog into the system prompt, it names the enabled plugins and teaches the
actions.*discovery flow. Real token win on projects with many plugins enabled.