MCP Server Builder
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
Produces a functional cartography of the Packmind application (domains × features × usage signals) as product-map.md at the project root.
$ npx skills add PackmindHub/packmind --skill product-map -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install PackmindHub/packmind product-map --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/product-map .claude/skills/product-map && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "product-map" agent skill from https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-map into .claude/skills/product-map/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "product-map", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-mapType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add PackmindHub/packmind --skill product-map -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install PackmindHub/packmind product-map --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/product-map .agents/skills/product-map && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "product-map" agent skill from https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-map into .agents/skills/product-map/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "product-map", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add PackmindHub/packmind --skill product-map -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install PackmindHub/packmind product-map --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/product-map .cursor/skills/product-map && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "product-map" agent skill from https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-map into .cursor/skills/product-map/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "product-map", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/PackmindHub/packmind.git --path .agents/skills/product-map--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add PackmindHub/packmind --skill product-map -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install PackmindHub/packmind product-map --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/product-map .gemini/skills/product-map && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "product-map" agent skill from https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-map into .gemini/skills/product-map/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "product-map", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install PackmindHub/packmind product-mapInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add PackmindHub/packmind --skill product-map -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/product-map .github/skills/product-map && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "product-map" agent skill from https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-map into .github/skills/product-map/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "product-map", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add PackmindHub/packmind --skill product-map -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install PackmindHub/packmind product-map --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/PackmindHub/packmind.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/product-map .opencode/skills/product-map && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "product-map" agent skill from https://github.com/PackmindHub/packmind/tree/main/.agents/skills/product-map into .opencode/skills/product-map/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "product-map", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
product-mapProduces a functional cartography of the Packmind application (domains × features × usage signals) as product-map.md at the project root.
Product Map is an agent skill from PackmindHub/packmind. Produces a functional cartography of the Packmind application (domains × features × usage signals) as product-map.md at the project root. Manual-only skill — invoke ONLY when the user explicitly runs /product-map or asks to "map the application", "cartographier l'application", "list every feature", or "find decommission candidates". Do NOT auto-load on generic mentions of features, domains, spaces, or standards.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows. The repository describes itself as: Packmind seamlessly captures your engineering playbook and turns it into AI context, guardrails, and governance. The licence is Apache-2.0.
6 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 8a10541. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Product Map loads about 2.4k tokens when it runs. Until then it costs about 108 tokens; SKILL.md has 861 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from PackmindHub/packmind at commit 8a10541, republished under its Apache-2.0 licence (© PackmindHub). 861 words, ~2,412 tokens.
.claude/skills/product-map/SKILL.md (or your agent's skills folder).Build a point-in-time functional map of the Packmind application by scanning the backend (use cases + endpoints), the frontend (routes + pages), and the CLI (commands). Aggregate features by functional domain, compute a usage signal per feature, and write a single Markdown report at product-map.md (project root). The report supports decommission decisions: features with weak signals (no frontend entry, no recent activity, no tests) become candidates for removal.
Manual-only. Run only when the user explicitly invokes /product-map or asks for a functional cartography. The description above intentionally avoids generic trigger keywords.
This skill only maps — it does not delete anything. Decommission decisions stay with the user.
Before scanning, confirm with the user:
product-map.md at project root; offer to override.apps/api, apps/frontend, apps/cli, and packages/*. Ask if any package should be excluded (e.g., infra-only packages like migrations, logger, node-utils).If the user invoked the skill with explicit instructions, skip confirmation and proceed with stated parameters.
Before launching subagents, read packages/ and apps/ to discover the domain taxonomy. Use folder names as the seed list — do NOT invent domains.
The seed domains in this codebase (verify by ls packages/ at run time, this list may drift):
packages/spaces, packages/spaces-managementpackages/standards, packages/linter, packages/linter-ast, packages/linter-executionpackages/skillspackages/recipespackages/playbook-change-applier, packages/playbook-change-managementpackages/accountspackages/coding-agentpackages/gitpackages/amplitudepackages/crisppackages/deploymentspackages/llmpackages/import-practices-legacyCross-cutting infra packages (logger, node-utils, migrations, types, ui, frontend, editions, test-utils, integration-tests, plugins) are NOT user-facing domains — exclude from the map unless they expose user-facing features (e.g., editions may expose subscription/edition selection).
Pass this seed taxonomy to all subagents so they classify consistently.
Launch three Agent(general-purpose) subagents simultaneously. Each scans one source and returns a structured feature list classified by domain.
| Subagent | Source | Scans |
|---|---|---|
| 1. Backend | Use cases + API endpoints | packages/*/src/application/useCases/**/*.ts, NestJS controllers in apps/api/src/**/*.controller.ts |
| 2. Frontend | Routes + pages | apps/frontend/src router config + page components |
| 3. CLI | Commander commands | apps/cli/src command definitions |
Each subagent receives:
You are mapping the Packmind application. Your scope: <SOURCE_NAME>.
# Domain taxonomy (use these labels — do not invent new domains unless you find a clear standalone area):
<seed taxonomy>
# Your task
Scan <PATHS> and produce a list of every user-facing feature exposed through this source.
Group features under their domain. A "feature" is a user-meaningful capability (e.g.
"create a space", "invite a member", "archive a standard"), not a technical implementation
detail (e.g. "TypeORM repository method").
For each feature, return:
- domain: <one of the seed labels, or "Other (justify)">
- feature: short imperative phrase (≤ 8 words)
- evidence: file path(s) + relevant export/route/command name
- visibility: "user-facing" or "admin-only" or "internal"
Skip:
- Pure infra plumbing (logging, config loading, health checks)
- Cross-cutting middleware (auth guards, rate limiters) — list them once under "Auth"
- Test utilities
# Output format
Markdown list grouped by domain. One bullet per feature. End with a 2-line summary
(total features, anything unclassifiable).Backend subagent: scan use cases first (they map 1:1 to features), then controllers to confirm the endpoint exists. A use case with no controller binding is an "orphan" — flag it as visibility: internal.
Frontend subagent: scan the router config first to enumerate routes, then read each route's page component to determine what the user actually does there. A route that only renders a placeholder or 404 is a candidate for decommission — flag it.
CLI subagent: enumerate every Commander .command(...) registration. Subcommands count as separate features (e.g. playbook add and playbook submit are two features under "Change Proposals").
If the Agent tool is unavailable, perform the three scans sequentially in the current session using Grep + Read. Maintain the same output structure.
After subagents return, merge their lists into a single feature table. Two source entries belong to the same feature when:
space create CLI command)For each unified feature row, record which sources cover it:
| Domain | Feature | Backend | Frontend | CLI | Evidence |
|---|---|---|---|---|---|
| Spaces | Create a space | ✓ | ✓ | ✓ | packages/spaces/src/.../createSpace.ts, /spaces/new, space create |
If a feature exists in only one source, that is a signal — keep the row, leave the missing sources blank.
For each feature row, compute additional signal columns. These power the decommission section.
| Signal | How to compute |
|---|---|
| Tests | Grep for the use case class or controller path in **/*.spec.ts and **/*.test.ts. Mark ✓ if at least one test references it. |
| Amplitude | Grep for the feature's domain prefix in packages/amplitude/src/application/AmplitudeEventListener.ts. Mark ✓ if any event for this domain is subscribed AND the event name plausibly matches the feature. |
| Recent activity | git log --since="6 months ago" --pretty=format:%H -- <evidence path>. Mark ✓ if at least one commit. |
A feature is a decommission candidate when ANY of the following holds:
Do NOT auto-delete — only flag.
Write product-map.md at the project root with this structure:
# Packmind Product Map — <YYYY-MM-DD>
> Snapshot of every user-facing feature, grouped by functional domain.
> Generated by the `product-map` skill. Manual invocation only.
## Scope
- Sources scanned: backend use cases & endpoints, frontend routes & pages, CLI commands
- Packages excluded: <list>
- Git revision: <short SHA>
## Functional Map
| Domain | Feature | Backend | Frontend | CLI | Tests | Amplitude | Recent | Notes |
|--------|---------|:-:|:-:|:-:|:-:|:-:|:-:|-------|
| Spaces | Create a space | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | |
| Spaces | Archive a space | ✓ | – | – | – | – | – | backend-only orphan |
| ...
## Decommission Candidates
Features matching at least one decommission heuristic (see methodology). Sorted by
weakest signal first.
| Feature | Reason | Evidence |
|---------|--------|----------|
| Archive a space | backend-only, no tests, no commits in 6 months | `packages/spaces/src/.../archiveSpace.ts` |
| ...
## Methodology
- A feature = a user-meaningful capability, not a technical implementation detail.
- Sources merged when same domain + same capability across backend/frontend/CLI.
- Signal heuristics: see SKILL.md Phase 4.
- This is a point-in-time snapshot — re-run to refresh.End by printing to the user:
© PackmindHub, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/product-map of PackmindHub/packmind.
Open the folder on GitHubat commit 8a10541
Product Map next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Product Map this skillPackmindHub/packmind | 317 | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| MCP Server Builderanthropics/skills | 180k | 64 repos | ~2.3k | Automated safety check: Pass | Apache-2.0 | |
| Hook Development for Claude Code Pluginsanthropics/claude-plugins-official | 38k | 11 repos | ~4.1k | Automated safety check: Notes | Apache-2.0 | |
| Using Superpowersfarm-fe/farm | 5.6k | 35 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Executing Plans Inlineobra/superpowers | 296k | 2 repos | ~5.1k | Automated safety check: Pass | MIT | |
| Claude Code Agent Developmentanthropics/claude-plugins-official | 38k | 8 repos | ~2.8k | Automated safety check: Pass | Apache-2.0 |
anthropics/skills
Guides the design and implementation of Model Context Protocol servers in TypeScript or Python, from tool naming and error messages to evaluation.
anthropics/claude-plugins-official
Explains how to write Claude Code plugin hooks, both prompt-based checks and bash commands, for events such as PreToolUse, Stop and SessionStart.
farm-fe/farm
A skill your agent uses when starting any conversation - establishes how to find and use skills, requiring Skill tool invocation before ANY response including clarifying questions
obra/superpowers
Has the agent carry out an implementation plan itself, task by task in the current session, keeping a ledger, proving each step with a test and ending with one whole-branch review.
anthropics/claude-plugins-official
Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.
Azure/azqr
Create new skills, modify and improve existing skills, and measure skill performance.
PackmindHub/packmind
Produce proof-of-execution demos of the Packmind CLI (packmind-cli) as terminal-styled images (colors and formatting preserved exactly), for embedding in a GitHub PR.
PackmindHub/packmind
Record polished UI demo videos and screenshots of a running web app using Playwright MCP — for client deliverables, release notes, feature walkthroughs, or bug repros.
PackmindHub/packmind
Guide for creating effective skills. An agent skill from PackmindHub/packmind.
PackmindHub/packmind
Audit Packmind end-user documentation (apps/doc/) for broken links, outdated CLI references, non-existent concepts, misleading information, and missing coverage.
PackmindHub/packmind
Execute the implementation plan produced by /feature-spec. An agent skill from PackmindHub/packmind.
PackmindHub/packmind
Review an implemented GitHub issue the way a senior Packmind engineer would — the human-judgment checks that ESLint, the TypeScript compiler, and e2e tests cannot catch (authorization scoping…
Categories
Produces a functional cartography of the Packmind application (domains × features × usage signals) as product-map.md at the project root. Product Map is an agent skill from PackmindHub/packmind.md at the project root.
Product Map fits situations like: explicitly runs /product-map; asks to map the application; cartographier lapplication; list every feature.
Run `npx skills add PackmindHub/packmind --skill product-map -a claude-code`. Or copy the skill folder (.agents/skills/product-map in PackmindHub/packmind) into .claude/skills/product-map in your project. Claude Code loads it when a task matches its description.
Run `npx skills add PackmindHub/packmind --skill product-map -a codex`. Or copy the skill folder (.agents/skills/product-map in PackmindHub/packmind) into .agents/skills/product-map in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add PackmindHub/packmind --skill product-map -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/product-map, .gemini/skills/product-map, .github/skills/product-map and .opencode/skills/product-map in your project.
Going by SKILL.md and its folder, Product Map needs the command-line tools its instructions call (git).
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Product Map is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Product Map: MCP Server Builder (anthropics/skills, 180k stars), Hook Development for Claude Code Plugins (anthropics/claude-plugins-official, 38k stars), Using Superpowers (farm-fe/farm, 5.6k stars) and Executing Plans Inline (obra/superpowers, 296k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
PackmindHub (a GitHub organization) maintains it in PackmindHub/packmind, which has 317 GitHub stars. The repository holds 35 skills in this directory. The repository was last updated on October 8, 2026.
Source: PackmindHub/packmind on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.