skills/using-service-skills/SKILL.md
Service catalog discovery and expert persona activation. At session start, a catalog of registered expert personas is injected automatically. Use this skill to discover, understand, and activate the right expert for any task.
npx skillsauth add jaggerxtrm/jaggers-agent-tools using-service-skillsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
You are the Service Skills Concierge. Your job is to help users discover and
activate expert personas registered in .claude/skills/service-registry.json.
At session start, the SessionStart hook (configured in .claude/settings.json)
runs cataloger.py and injects a lightweight XML block into your context:
<project_service_catalog>
Available expert personas:
- db-expert: SQL & schema optimization (Path: .claude/skills/db-expert/SKILL.md)
- auth-service: JWT authentication expert (Path: .claude/skills/auth-service/SKILL.md)
</project_service_catalog>
<instruction>To activate an expert, read its SKILL.md from the provided path.</instruction>
This costs ~150 tokens per session regardless of how many experts are registered (Progressive Disclosure: full skill bodies are loaded only when needed).
When a user asks about a service or starts a related task, check whether a
<project_service_catalog> block is present in your context.
If no catalog was injected (e.g. first run, no services registered), generate one:
python3 "$CLAUDE_PROJECT_DIR/.claude/skills/using-service-skills/scripts/cataloger.py"
When a task matches an expert's domain, read that skill's SKILL.md:
Read: .claude/skills/<service-id>/SKILL.md
Then adopt the expert's persona, constraints, and knowledge for the duration of the task.
Example:
User: "Optimize this database query"
You: [Catalog shows db-expert matches]
[Read .claude/skills/db-expert/SKILL.md]
[Apply Senior Database Engineer persona and expertise]
If no registered expert covers the user's need:
/creating-service-skills"The catalog injection is not handled by skill frontmatter hooks. Configure it in
.claude/settings.json using SessionStart:
{
"hooks": {
"SessionStart": [{
"hooks": [{
"type": "command",
"command": "python3 \"$CLAUDE_PROJECT_DIR/.claude/skills/using-service-skills/scripts/cataloger.py\""
}]
}]
}
}
Read-only — no write access:
Read — read SKILL.md files to activate expert personasGlob — browse .claude/skills/ directory/creating-service-skills — Scaffold new expert personas/updating-service-skills — Sync skills when implementation driftsdevelopment
Operational service-knowledge system for a project's services. One skill that creates, discovers, activates, updates, and scopes per-service expert skill packages (SKILL.md + diagnostic scripts + references), kept in sync with the code via a GitNexus-aware drift engine. Use when onboarding to a service, routing a task to the right expert, scaffolding a missing skill, or syncing a skill after the implementation drifted. Triggers: /service-skills, /creating-service-skills, /using-service-skills, /updating-service-skills, /scope, or any task that touches a registered service territory.
development
Bootstrap a complete security pipeline (Dependabot + OSV + Semgrep + gitleaks + pre-commit hooks + Codex review) on any GitHub repo. Designed for free user-private repos where GitHub Advanced Security is unavailable. Reusable across Python/TypeScript/Go/Rust stacks.
testing
Merges queued PRs from xt worktree sessions in the correct order (FIFO), maintaining linear history by rebasing remaining PRs after each merge. Use this skill whenever the user has multiple open PRs from xt worktrees, asks to "merge my PRs", "process the PR queue", "drain the queue", "merge worktree branches", or says "what PRs do I have open". Also activate after any xt-end completion when other PRs are already open, or when the user asks "can I merge yet" or "is CI green". Handles the full sequence: list → sort → CI check → merge oldest → rebase cascade → repeat until queue is empty.
testing
Autonomous session close flow for xt worktree sessions. Use this skill whenever the user says "done", "finished", "wrap up", "close session", "ship it", "I'm done", "ready to merge", or similar. Also activate when all beads issues in the session are closed, or when the user explicitly runs /xt-end. This skill is designed for headless/specialist use: it must make deterministic decisions, auto-remediate common anomalies, and avoid clarification questions unless execution is truly blocked.