nookins / docs

Extensions and add-ons

Install packages, attach the right capabilities and keep permissions explicit.

Documentation for Nookins 0.42.1-alpha.1 · Public alpha

What each part means

A feature is built into Nookins and enabled on an agent. An extension package is installed code or reference material. An add-on is an independently attachable capability within that package; an instance supplies its settings. A skill teaches a procedure. Installing a package attaches nothing, and reading a skill grants nothing.

nookins feature catalog
nookins feature inspect mcp
nookins extension catalog
nookins capability status

Use the catalogs to check the actual installation. A documented tool still needs its assets, provider, account, grants and approvals to be ready.

Install a reviewed local package

Review the package source, executables, destinations, dependencies and declared secrets before installing. Given a real package directory you have reviewed:

nookins extension pack ./my-package
nookins extension install ./my-package
nookins extension catalog

pack validates; install installs without attaching. Compact authors use addon.yaml; Nookins generates package.yaml in the immutable installed package. Do not hand-edit that generated lock. Authoring manifests covers fields and runtime versions.

Configure an instance and attach it

For a package whose actual ID is acme_weather and add-on ID is weather, create config/addons.d/weather.yaml:

package: acme_weather
addon: weather
audience: owner_only
settings: {}

These are illustrative IDs, not a bundled weather package. Use the installed manifest's IDs and required settings. Add weather to the intended agent's addons list:

addons: [weather]

Keep the rest of that agent file. Validate, preview and apply through configuration, then inspect the instance:

nookins extension inspect weather

owner_only is the default. agent_callers makes the ability available to the attached agent's legitimate callers, subject to all remaining authority and approval checks. A tool's human-approval policy is separate from its audience.

Git-backed sources and updates

For an extension repository you have reviewed, replace the sample URL and ID:

nookins extension source add example https://example.com/your/extensions.git --ref main
nookins extension source plan example
nookins extension source sync example
nookins extension source sync example --apply

Planning/sync without --apply is a preview. Inspect the resolved commit, packages and proposed changes before applying. Public third-party packages require their declared provenance and licensing. Local private wrappers are not a public package registry.

An already-installed immutable version can be selected with nookins extension activate PACKAGE_ID VERSION. Review compatibility and instance settings first, then inspect and test the affected agent. A version selection does not restore old external service state.

Disable or detach

Remove the instance ID from the agent's addons list and use configuration preview/apply. Review any remaining attachments before removing an unused instance file. The primary agent can also propose attachment changes for separate owner review. Detachment does not delete package data or undo completed external effects.

There is no generic extension uninstall command in this release. Do not invent one or recursively delete live extension directories. For a package-specific data removal requirement, inspect its contract and preserve needed data first.

Agent-authored extensions

The forge feature lets an authorized agent author supported managed scripts, validate them, and propose installation. The owner reviews the exact source, manifest, destinations, secret names and attachment before approval. The model cannot approve itself. A crash after installation resumes from the approved transaction; unrelated configuration changes require a new proposal.

Managed scripts need the verified workspace runtime and supported Linux isolation. They fail with setup-required when isolation is unavailable. They do not fall back to unrestricted host execution. Paid workflows that become ambiguous after a restart must not be replayed blindly.

Connect MCP and hooks or inspect every extension CLI option.

On this page