pi-package-creator
Pi Package Creator
Overview
Use this skill to design and ship Pi packages with a narrow public promise and a real install/validation loop. Focus on package surface, installability, and dogfooding, not just folder scaffolding.
Read:
references/surface-design.mdbefore deciding what the package should shipreferences/validation.mdbefore calling the package done
For advanced surface-specific details, inspect the installed Pi docs only after
you have a resolved local docs path. Use the same pi binary you will validate
with when checking pi --help for CLI flags. Do not guess where Pi's installed
package tree lives on disk.
If skill-creator is available and the package includes multiple skills or a
skill with bundled resources beyond a single SKILL.md, use it for the
internal skill design. Otherwise keep the work inside this skill and focus on
package boundary, manifest, install flow, README, and proof.
Workflow
1. Lock the package promise
Start by answering:
- What is the package for in one sentence?
- What should a user be able to install and use immediately?
- Which Pi resources does that require:
extensions,skills,prompts, orthemes? - What should explicitly stay out of scope for
v1?
Prefer one narrow package promise over a kitchen-sink bundle.
2. Choose the smallest package surface
Pick only the resource types that the package actually needs:
extensionsfor commands, hooks, tools, ambient behavior, UI, or plumbingskillsfor reusable workflows and domain instructionspromptsfor reusable prompt templatesthemesfor visual presentation only
Do not add a second surface without a real user-facing reason.
3. Build the package shape
Create or tighten:
package.json- only the resource directories that are actually used
- a README that explains what the package is, how to install it, how to prove it works, and what its limits are
For package.json:
- include
name,version,license - include
keywordswithpi-package - use the exact
pimanifest keys Pi supports:extensions,skills,prompts,themes - point manifest entries at relative paths
- ship only needed files
Keep public metadata honest:
- if the package is Pi-only, say so
- if install is local-path-only today, say so
- do not point homepage/repository/bugs at URLs that are not ready
4. Validate with the package manager, not just direct paths
The release gate is not "the files look right." The gate is "Pi can install and use this package."
Always validate in this order:
- repo-local tests/build checks
- install into a temporary Pi agent dir
- confirm the package is listed
- smoke the actual public surface
- dogfood in a real repo only after the temp install works
Use the validation flow in references/validation.md.
Do not rely only on --extension, --skill, or ad hoc file loading. Those are
fine for inner-loop debugging of one component, but the package promise is
still pi install.
- Keep package docs and package behavior in sync.
- Use scratch repos or temp agent dirs before touching real agent state.
- If the package mutates repo files, prove it in a scratch repo first.
- If the package is still private or unpublished, avoid public-install copy that implies otherwise.
More from mylesmcook/mcook-skills
adversarial-review
Use this skill when you need a serious code review, diff review, or implementation-plan review from independent reviewers. In Codex hosts, prefer a fresh Codex subagent for the Codex reviewer; otherwise use the Codex, Claude Code, and Gemini reviewer paths when available. Return a PASS, CONTESTED, or REJECT verdict.
13subagent-driven-development
Use after an implementation plan is approved to execute mostly independent tasks through fresh subagents with scoped context, harness-aware model routing, proportional review gates, and mandatory controller verification.
10brainerd
>
10simple-code
Reduce incidental complexity in code and design. Use when shaping APIs, module boundaries, refactors, tests, naming, and architecture tradeoffs with a bias toward concrete, local, reversible solutions.
7git-it-out
Use this skill when the user explicitly wants final end-of-session closeout and no more branch or PR limbo: proper verification, proper commits, main/mainline landing, push, repo-native merge/release/deploy/publish steps, tracker updates, Entire/checkpoint handling when configured, and a concise handoff. Reach for it on prompts like 'git it out', 'get it out', 'ship this', 'I'm done', 'I'm going to bed', 'take this off my plate', 'finish the session', or 'get this into production'. Do not use it for greenfield implementation, open-ended debugging, broad refactors, or inventing a release process from scratch.
7laws-of-taste
>-
6