Skills Bridge
Auto-discovers Claude Code plugin skills from plugins/*/skills/ directories and registers them as pi skills. One install bridges all 19+ plugin skills into pi.
Overview
Auto-discovers Claude Code plugin skills from plugins/*/skills/ directories and registers them as pi skills. One install bridges all 19+ plugin skills into pi.
Package docs also remain available on the package summary page at /docs/skills-bridge, but this page focuses on the Pi-native extension surface: commands, tools, environment variables, packaged skills, and extension files.
Extension Files
Primary extension path: pi-packages/skills-bridge/extensions/skills-bridge
index.ts
Installation
# From the monolith root
pi install "$PWD/agent-skills-marketplace/pi-packages/skills-bridge" Local test or verification snippet:
cd /path/to/monolith
node -e "
const { existsSync, readdirSync, statSync } = require('node:fs');
const { join } = require('node:path');
function findSkillDirs(root, depth=0) {
const results = [];
if (depth > 5) return results;
let entries;
try { entries = readdirSync(root); } catch { return results; }
for (const entry of entries) {
const full = join(root, entry);
let isDir;
try { isDir = statSync(full).isDirectory(); } catch { continue; }
if (!isDir) continue;
if (existsSync(join(full, 'SKILL.md'))) { results.push(full); continue; }
results.push(...findSkillDirs(full, depth+1));
}
return results;
}
const pluginsDir = 'agent-skills-marketplace/plugins';
const plugins = readdirSync(pluginsDir);
let total = 0;
for (const p of plugins) {
const sd = join(pluginsDir, p, 'skills');
if (!existsSync(sd)) continue;
const found = findSkillDirs(sd);
total += found.length;
}
console.log('Skills discovered:', total);
" What it does
The Diversio team has 21 Claude Code skills (release-manager, monty-code-review, backend-atomic-commit, etc.) in the shared repo. Claude Code and Codex users see them automatically. Pi users don't — pi only discovers skills from ~/.pi/agent/skills/ and pi-packages//skills/, not from plugins//skills/.
This extension bridges that gap. It uses pi's resources_discover hook to scan the plugins directory and register skill paths. One pi install per team member, then /reload, and all 21 skills appear.
Context safety: The extension only exposes skill names + descriptions (~5-10KB total) at startup. Full SKILL.md bodies load on demand when a skill is invoked. No context bloat.
How it finds the skills
The extension uses three-tier resolution to find the agent-skills-marketplace root:
for a plugins/ directory (repo-agnostic) or an agent-skills-marketplace/plugins/ child (monolith submodule convenience).
For most developers in the monolith, tier 3 works automatically. No config needed.
For developers who keep skills at a non-standard path or want extra skill sources:
Create ~/.config/pi/skills-bridge.json:
- skillsPath — primary skills root (optional; falls through to cwd walk-up if absent)
- additionalPaths — extra skills roots to also scan (optional)
- Both fields are optional; an empty file {} means "use cwd walk-up only"
- The config file lives outside the package repo, so updating the repo never overwrites local config
- When PI_SKILLS_PATH env var is set, the config file is ignored (env var is an explicit override)
mkdir -p ~/.config/pi {
"skillsPath": "/absolute/path/to/agent-skills-marketplace",
"additionalPaths": [
"/another/checkout/agent-skills-marketplace",
"/path/to/experimental-skills"
]
} Skills bridged
The extension discovers all 21 skills from these plugins:
release-manager, monty-code-review, backend-atomic-commit, backend-pr-workflow, plan-directory, backend-ralph-plan, pr-description-writer, process-code-review, bruno-api, code-review-digest-writer, mixpanel-analytics, clickup-ticket, github-ticket, repo-docs-generator, visual-explainer, dependabot-remediation, terraform-atomic-commit, terraform-pr-workflow, login-cta-attribution-skill, monolith-review-orchestrator, frontend