paseo.cafe
All plugins

Paseo plugin: lists the skills an agent can use, shows where each comes from, renders its SKILL.md, and invokes it

v0.4.0 Requires Paseo >=0.9.0

Gallery

Install

npmjs · Paseo 0.9+

paseo plugin add npm:@gpambrozio/paseo-skills@0.4.0

GitHub · Paseo 0.8 fallback

paseo plugin add gpambrozio/paseo-plugins --ref 09509ce55ab06758623262e6aa71522ade6fda0c --path skills

Git security status and fallback installation are pinned to commit 09509ce55ab0.

From the plugin's README

Requires the Paseo CLI and a running daemon, both 0.9.0 or newer — as well as the app you view the panel in, which checks the version itself.

paseo plugin install npm:@gpambrozio/paseo-skills

That is the shortest route on Paseo 0.9 or newer, which installs plugins straight from npm; add @<version> to pin one. On 0.8, install the last release that supported it from this repository instead:

paseo plugin add gpambrozio/paseo-plugins --path skills

This repository holds five plugins, hence --path. The daemon clones it under $PASEO_HOME/plugins and runs no package manager — the plugin is source only, and everything it imports at runtime the host provides. Pin a release with --ref <tag>; later, paseo plugin status and paseo plugin update skills follow the branch.

To hack on it instead, install from a clone of your own:

git clone https://github.com/gpambrozio/paseo-plugins.git
cd paseo-plugins/skills
npm install
npm run typecheck && npm test
paseo plugin install "$PWD"

install records the directory, so keep that clone where it is — the daemon loads the plugin from that path every time it starts. npm install is for the typecheck and the tests; installing needs none of it.

The daemon needs "pluginsEnabled": true in its config.json. Run paseo reload after changing it. Plugin code is trusted and unsandboxed: the server half reads the daemon machine's filesystem and the client half runs inside th…

README

paseo-skills

A Paseo plugin that lists the agent skills available to an agent session, shows where each one comes from, renders its SKILL.md, and invokes it.

Works with every provider. Claude, Codex, and Hermes additionally get their skill files scanned off disk, which is what gives a skill a source, a path, and a rendered body; every other provider shows what its running session reports.

Install

Requires the Paseo CLI and a running daemon, both 0.9.0 or newer — as well as the app you view the panel in, which checks the version itself.

paseo plugin install npm:@gpambrozio/paseo-skills

That is the shortest route on Paseo 0.9 or newer, which installs plugins straight from npm; add @<version> to pin one. On 0.8, install the last release that supported it from this repository instead:

paseo plugin add gpambrozio/paseo-plugins --path skills

This repository holds five plugins, hence --path. The daemon clones it under $PASEO_HOME/plugins and runs no package manager — the plugin is source only, and everything it imports at runtime the host provides. Pin a release with --ref <tag>; later, paseo plugin status and paseo plugin update skills follow the branch.

To hack on it instead, install from a clone of your own:

git clone https://github.com/gpambrozio/paseo-plugins.git
cd paseo-plugins/skills
npm install
npm run typecheck && npm test
paseo plugin install "$PWD"

install records the directory, so keep that clone where it is — the daemon loads the plugin from that path every time it starts. npm install is for the typecheck and the tests; installing needs none of it.

The daemon needs "pluginsEnabled": true in its config.json. Run paseo reload after changing it. Plugin code is trusted and unsandboxed: the server half reads the daemon machine's filesystem and the client half runs inside the Paseo app. Read the source before installing this or any other plugin.

Use

Press the Skills pill above an agent's composer — its badge counts what it will list. It opens a popover over the composer with the agent's skills: pick one to read it and invoke it with arguments, or press Open tab at its top right for the full Skills panel. The Command Center reaches the same panel: focus a workspace tab holding an agent, press ⌘K, and pick Skills.

Demo

https://github.com/user-attachments/assets/cbb0166e-d981-4367-a5b4-5b12d2e7c14c

Develop

npm test                     # vitest, resolvers only
npm run typecheck
paseo plugin reload skills   # after any source change
paseo plugin logs skills     # load errors and stderr

A failed reload stays failed; Paseo does not restore the previous code.

Layout

File Owns
index.client.tsx Client wiring: the panel, the Command Center item, the pills.
index.server.ts Server wiring: the two RPC handlers.
shared/skills.ts zod RPC contracts, imported by both runtimes.
server/skills.ts RPC handlers; resolves the agent, dispatches by provider.
server/resolve/claude.ts Claude project, repository, personal, and plugin skills.
server/resolve/codex.ts Codex project, repository, personal, and admin skills.
server/resolve/repo-root.ts Walks up for .git, and lists the directories in between.
server/resolve/skill-directory.ts Scans one skills directory, and a whole search path.
server/resolve/skill-entry.ts Entry types, skill id construction, first-wins dedupe.
server/resolve/frontmatter.ts SKILL.md frontmatter parsing.
server/resolve/reported.ts Splits session-reported entries discovery did not find.
client/browser.tsx List, search, detail, invoke — drawn by the panel and the popover.
client/panel.tsx The panel: the browser as a whole tab.
client/popover.tsx The pill's popover: the browser, plus a button to the panel.
client/pill.tsx The composer pill and the registration loop that owns it.
client/skills-query.tsx The skills.list query the panel and the pill share.

docs/design.md records why it is shaped this way. Read it before changing discovery.

License

MIT — see LICENSE.

Scanned 15 Oct 2026, 12:34 UTC from gpambrozio/paseo-plugins/skills.