How to Use PM Skills with Gemini, OpenCode, and Other AI Assistants
PM Skills are universal Markdown-based skill files that work with any AI assistant by copying them into the assistant's designated skills directory.
The phuryn/pm-skills repository delivers product management frameworks as portable, self-contained Markdown documents. These skill files follow a universal format that Gemini, OpenCode, Cursor, and Kiro CLI can consume without modification, requiring only a simple copy operation to the appropriate directory.
Understanding the PM Skills Architecture
The repository organizes content into three distinct components, though only one is required for non-Claude assistants according to the source code:
-
Skills (
*/skills/*/SKILL.md): Self-contained Markdown files containing prompts, examples, and optional JSON schemas. These files reside in paths likepm-toolkit/skills/review-resume/SKILL.mdandpm-product-strategy/skills/value-proposition/SKILL.md. -
Commands (
*/commands/*.md): Claude-specific slash-commands that chain multiple skills. Other assistants ignore these files. -
Plugin manifest (
.claude-plugin/plugin.json): Lists skills and commands for Claude Desktop. Other assistants do not require this file.
Since the skill format is plain Markdown, assistants like Gemini CLI and OpenCode can load them directly as plugins without compilation or packaging.
Installing PM Skills for Gemini CLI
Gemini CLI watches for skills in the ~/.gemini/skills/ directory. Copy all skill directories from the nine plugins into this location to make them available globally.
# Copy every skill from each plugin into the global Gemini skills folder
for plugin in pm-*/; do
cp -r "$plugin/skills/"* ~/.gemini/skills/ 2>/dev/null
done
After copying, restart Gemini CLI to force a rescan of the skills directory.
Installing PM Skills for OpenCode
OpenCode supports project-level skill installation using a .opencode/skills/ directory. Create this directory in your project root and copy the skill folders there.
# Create a local .opencode/skills directory and copy the skills there
mkdir -p .opencode/skills/
for plugin in pm-*/; do
cp -r "$plugin/skills/"* .opencode/skills/ 2>/dev/null
done
This approach keeps the skills version-controlled with your project repository rather than installing them globally.
Using Skills After Installation
Once copied, invoke skills using each assistant's native prompt syntax. The skill name derives from the folder name containing SKILL.md.
With Gemini CLI:
# Ask Gemini to run the resume review skill
gemini review-resume "Please review my product-manager resume attached."
With OpenCode:
# In an OpenCode session, reference the skill by its filename
/skill review-resume "My resume needs feedback on impact statements."
Key Skill Files and Examples
The repository includes specialized skills across multiple domains that demonstrate the universal format:
pm-toolkit/skills/review-resume/SKILL.md: Resume review functionality usable by any assistantpm-product-strategy/skills/value-proposition/SKILL.md: Value proposition development workflowspm-data-analytics/skills/sql-queries/SKILL.md: Data analytics query generation
These files contain the prompts and optional JSON schemas that drive assistant behavior, making them portable across AI platforms.
Summary
- PM Skills use universal Markdown: Any assistant that reads Markdown can consume the
SKILL.mdfiles without modification, as implemented inphuryn/pm-skills. - Copy to assistant directories: Place skills in
~/.gemini/skills/for Gemini CLI or.opencode/skills/for OpenCode project-level access. - Ignore Claude-specific files: The
.claude-plugin/plugin.jsonmanifest and*/commands/*.mdfiles are only required for Claude Desktop integration. - Invoke by skill name: Use the directory name (e.g.,
review-resume) as the command identifier after installation. - Restart after copying: Assistants must rescan their skills directories to recognize newly copied files.
Frequently Asked Questions
Can I use PM Skills with Claude Desktop?
Yes. While PM Skills work with any assistant, the repository includes a .claude-plugin/plugin.json manifest specifically for Claude Desktop that automatically registers all skills and commands. For Gemini, OpenCode, Cursor, and Kiro CLI, you manually copy the skill files to the appropriate directory as described in the README.md.
Do I need to modify the SKILL.md files for different assistants?
No. The SKILL.md files follow a universal format using plain Markdown with optional JSON schemas. Because they contain no assistant-specific code, they work identically in Gemini, OpenCode, Cursor, and Kiro CLI without compilation or packaging.
Where should I copy the skills for a project-specific setup?
Create a .opencode/skills/ directory in your project root and copy the skill folders from all nine plugins there. This keeps the skills scoped to your project rather than installing them globally in ~/.gemini/skills/.
How do I know if a skill is loading correctly?
Restart your assistant after copying the files to force a rescan of the skills directory. Then attempt to invoke the skill using the directory name (e.g., review-resume). If the assistant recognizes the command and executes the prompt defined in the SKILL.md file, the installation succeeded.
Have a question about this repo?
These articles cover the highlights, but your codebase questions are specific. Give your agent direct access to the source. Share this with your agent to get started:
curl -s "https://instagit.com/install.md" Maintain an open-source project? Get it listed too →