List registered trigger instances (the link rows between trigger types and target functions). Filter by trigger_type, function_id, worker, or free-text search.
registered_triggersobject[]*required
config_summarystring*required
Truncated (~80 chars) JSON preview of `config` so listings stay scannable. Use `directory::registered-trigger-info` for the full payload.
function_idstring*required
trigger_typestring*required
Download skills + prompts into skills_folder. Pass {repo, skill} to clone a single skill folder from a GitHub repo (git clone --depth 1), or {worker, version|tag} to pull from the workers registry. Files in the destination namespace are overwritten file-by-file.
repostring
Source A: GitHub repo URL. Pair with `skill`.
skillstring
Source A: subfolder under `skills/` inside the repo. Doubles as the destination namespace inside `skills_folder`.
tagstring
Source B: registry tag to pull (e.g. `latest`). Mutually exclusive with `version`.
versionstring
Source B: explicit semver to pull. Mutually exclusive with `tag`.
workerstring
Source B: workers registry name. Pair with exactly one of `version` / `tag`.
prompts_writtenstring[]*required
skills_writtenstring[]*required
Fetches the content of one or more skill resources identified by iii:// URIs. When you encounter iii:// links in skill instructions, use this tool to retrieve their contents (batch with `uris` when helpful).
uristring
A single iii:// URI to read. Must start with "iii://".
urisstring[]
One or more iii:// URIs to read in order. When both `uri` and `uris` are provided, `uris` wins (matches the TS reference implementation).
skills::fetch_skill
functionFetches the content of one or more skill resources identified by iii:// URIs. When you encounter iii:// links in skill instructions, use this tool to retrieve their contents (batch with `uris` when helpful).
uristring
A single iii:// URI to read. Must start with "iii://".
urisstring[]
One or more iii:// URIs to read in order. When both `uri` and `uris` are provided, `uris` wins (matches the TS reference implementation).
directory::worker-info
functionWorker envelope plus the lists of functions, trigger types, and registered triggers it owns. The `worker` field has the same shape as registry::worker-info so callers can switch between local + registry surfaces with the same parser.
functionsobject[]*required
function_idstring*required
registered_triggersobject[]*required
function_idstring*required
trigger_typestring*required
trigger_typesobject[]*required
descriptionstring*required
workerall of*required
Same shape as `worker-list` rows (and `registry::worker-info.worker`).
all of (1)
variant 1
active_invocationsinteger· uint*requiredmin 0
connected_at_msinteger· uint64*requiredmin 0
descriptionstring
Engine-side workers carry no description; field present for shape parity with `registry::Worker.description`. Always `None`.
function_countinteger· uint*requiredmin 0
idstring*required
Engine-assigned connection id (directory-specific).
namestring
Worker name as registered with the engine.
statusstring*required
Connection state (e.g. `"connected"`, `"disconnected"`).
versionstring
Worker version string from the worker's published manifest.
Fetch one filesystem-backed prompt by name. Returns the raw markdown body plus name, description, and modified_at — no envelope, no templating.
bodystring*required
Raw markdown body (post-frontmatter) from disk.
descriptionstring*required
modified_atstring*required
File mtime as RFC 3339.
directory::function-info
functionFull detail for one function: schemas, owning worker, registered triggers that target it, and any matching how-to skill from skills_folder.
function_idstring*required
function_idstring*required
how_guideany of
any of (2)
variant 1
frontmatterobject*required
Subset of frontmatter fields the scanner cares about. Anything else in the YAML block is preserved verbatim by `split_frontmatter` but ignored here.
… expand 4 nestedcollapse
function_idstring
Optional single function id (alternative to `functions`).
functionsstring[]
Optional list of function ids this how-to covers.
titlestring
Optional human-readable title (mirrors what an `# H1` would give).
typestring
Required marker — only `type: how-to` files are considered.
registered_triggersobject[]*required
trigger_typestring*required
registry::worker-info
functionFetch full registry metadata for one worker: worker envelope (same shape as registry::worker-list rows and directory::worker-info), readme, full API reference (functions + triggers schemas), and tree of skill/prompt file paths. Pass either `version` or `tag` (defaults to tag="latest"). Results are cached for `registry_cache_ttl_ms`.
namestring*required
Worker name in the registry (e.g. `"resend"`).
versionstring
Mutually exclusive with `tag`. If neither is provided we fall back to `tag: "latest"`.
api_referenceobject*required
skills_treeobject*required
workerall of*required
Same shape as `worker-list` rows (and `directory::worker-info.worker`).
all of (1)
variant 1
authorany of
… expand 2 nestedcollapse
versionstring
Latest published version (worker-list) or the resolved version (worker-info, when called with `version` / `tag`).
directory::function-list
functionList every function registered with the engine. Filter by free-text search, namespace prefix, and/or worker name.
prefixstring
Exact prefix match on `function_id` (e.g. `"mem::"`).
searchstring
Case-insensitive substring match against `function_id` and `description`.
workerstring
Exact worker-name match (the worker that registered the function).
functionsobject[]*required
function_idstring*required
namestring*required
Last `::` segment of `function_id`.
worker_namestring
Worker that registered it (resolved via `WorkerInfo.functions[]`), or the first `::` segment of `function_id` as fallback.
directory::worker-list
functionList every worker currently connected to the engine. Filter by name substring, runtime, or status. Same row shape as registry::worker-list so callers learn one envelope.
runtimestring
Exact runtime match (e.g. `"rust"`, `"node"`).
searchstring
Case-insensitive substring match against `name`.
statusstring
Exact status match (e.g. `"connected"`).
workersobject[]*required
active_invocationsinteger· uint*requiredmin 0
connected_at_msinteger· uint64*requiredmin 0
descriptionstring
Engine-side workers carry no description; field present for shape parity with `registry::Worker.description`. Always `None`.
function_countinteger· uint*requiredmin 0
idstring*required
Engine-assigned connection id (directory-specific).
namestring
Worker name as registered with the engine.
statusstring*required
Connection state (e.g. `"connected"`, `"disconnected"`).
versionstring
Worker version string from the worker's published manifest.
directory::trigger-info
functionFull detail for one trigger type: configuration schema, return schema, owning worker, and current instance count.
configuration_schemaunknown
SDK 0.11.3 surfaces a single `trigger_request_format` that doubles as the per-instance configuration shape; expose it explicitly so callers don't have to know the alias.
descriptionstring*required
instance_countinteger· uint*requiredmin 0
List filesystem-backed prompts (name, description, modified_at) from skills_folder.
promptsobject[]*required
descriptionstring*required
modified_atstring*required
File mtime as RFC 3339.
Full denormalized detail for one registered trigger: instance config + trigger-type detail + function detail.
functionany of
Full function detail for `function_id`. `None` if the function has been unregistered between calls.
any of (2)
variant 1
function_idstring*required
how_guideany of
… expand 2 nestedcollapse
any of (2)
variant 1
frontmatterobject*required
Subset of frontmatter fields the scanner cares about. Anything else in the YAML block is preserved verbatim by `split_frontmatter` but ignored here.
… expand 4 nestedcollapse
function_idstring
Optional single function id (alternative to `functions`).
functionsstring[]
Optional list of function ids this how-to covers.
titlestring
Optional human-readable title (mirrors what an `# H1` would give).
typestring
Required marker — only `type: how-to` files are considered.
registered_triggersobject[]*required
… expand 3 nestedcollapse
trigger_typestring*required
function_idstring*required
triggerany of
Full trigger-type detail for `trigger_type`. `None` if the type has been unregistered between calls.
any of (2)
variant 1
configuration_schemaunknown
SDK 0.11.3 surfaces a single `trigger_request_format` that doubles as the per-instance configuration shape; expose it explicitly so callers don't have to know the alias.
descriptionstring*required
instance_countinteger· uint*requiredmin 0
trigger_typestring*required
List filesystem-backed skills (id, body length, modified_at) from skills_folder.
skillsobject[]*required
bytesinteger· uint*requiredmin 0
modified_atstring*required
File mtime as RFC 3339 (best effort; empty if unavailable).
directory::trigger-list
functionList every trigger TYPE registered with the engine. Filter by search, prefix, worker. (For registered trigger instances, use directory::registered-trigger-list.)
triggersobject[]*required
descriptionstring*required
registry::worker-list
functionList workers from the public registry (api.workers.iii.dev) matching the free-text term `search`. Same row shape as directory::worker-list so callers learn one envelope. Results are cached for `registry_cache_ttl_ms` (default 60s).
limitinteger· uint32min 0
Max results to return. Defaults to 20; capped at 100.
searchstring
Free-text query forwarded to the registry as `?q=…`. Required — the public registry doesn't support an unscoped browse endpoint.
workersobject[]*required
versionstring
Latest published version (worker-list) or the resolved version (worker-info, when called with `version` / `tag`).