Skills — the immutable catalog and pinned assignments
Skills (modules/skills, olivares.skills) is a separately selectable module. It owns the
immutable skills catalog and its pinned assignments: a skill pack is
installed once, validated entry by entry against its manifest digest, and published
as an immutable revision — it is never edited in place afterwards. What a target (an
agent, a group, a workspace) may use is an assignment that pins a pack revision,
and every pin is written to the audit ledger (skills.assignment.pin).
On by default on fresh installations, Skills remains optional and has no required module. Upgrades preserve the saved module selection. In Skills (/skills), browse the built-in catalog and install a pack with an optional workspace assignment, or choose From Git. The CLI uses the same immutable, digest-validated import:
olivares skills ls --builtinolivares skills install --builtin ecc-securityolivares skills install --git https://github.com/owner/skills --ref <commit> --subdir skillsolivares skills assign <pack-id> --revision <revision-id> --workspace <workspace-id>olivares skills update <pack-id> # read the recorded source again and review the diffolivares skills update <pack-id> --apply --expected-digest <digest>olivares skills pin <pack-id> [--revision <older-revision-id>]olivares skills enable tdd-workflow code-review --folder <folder-ref>olivares skills selection --workspace <workspace-id> --folder <folder-ref>See the CLI reference for installation, revision and assignment options.
What it ships
Section titled “What it ships”- The catalog. Installed packs under
/v1/m/skills/packs, each immutable revision records its manifest digest; retiring a pack that is still assigned or used by recorded conversations is refused, not silently cascade-deleted. - The built-in catalog. A vendored set of upstream skill packs pinned by commit
and archive digest (
builtin/PIN.json), validated on install exactly like an uploaded archive. Nothing in it runs at install. - Assignments.
GET/POST /v1/m/skills/assignmentsandPUT/DELETE /v1/m/skills/assignments/{id}pin a revision to a target, scoped to a workspace where one is active. Two targets of one kind that pin different content under one skill name are refused before a session starts; a narrower target (folder, template, agent, session) replaces a broader target’s skill of that name, so a project overrides a generic pack without editing it. - Git import. An operator-scoped importer can fetch a skills pack from a Git source under a pinned policy; the import lands in the catalog as another immutable revision, not as a live checkout the engine reads.
Surfaces and permissions
Section titled “Surfaces and permissions”The module’s routes live in its beta namespace (/v1/m/skills/…), documented in the
module-route reference and rendered in the console’s Skills
view. Catalog reads require skills:catalog:read, installs and revisions require
skills:catalog:write, retirement requires skills:catalog:admin, and assignment
changes require skills:assignment:write. Target authorization also applies. A session resolves its
skills only through recorded assignments — a folder that changes on disk never
changes what an already-pinned launch will run.
Related
Section titled “Related”- Modules catalog — the selectable modules and where this module sits among them.
- MCP, skills & capabilities — the governing view over tools and capabilities this catalog feeds.
- Internal catalog & marketplace — the curated marketplace of approved agents, MCP servers and skills.
- Module routes (beta) — the
/v1/m/skills/operations. - Honesty & limits — why immutability is stated, not implied.