Individual skill
prompt-engineer
Use when the user asks to improve, optimize, rewrite, debug, or shorten a prompt, or asks why a prompt is producing bad output. Do NOT use for writing a Claude Code SKILL.md — that needs skill structure rules, not prompt techniques.
skills/prompt-engineer/SKILL.md
Source commit 64deebf681e1438c489609f1fa7000dfb331eabe
What was checked
- Matches the observed repository HEAD
- Yes
- Scanner rules are current
- Yes
- Repository scan complete
- Yes
- Skill scan complete
- Yes
- Observed behavior
- Instructions only
- Last checked
- Nov 11, 2026
These are observations at the recorded commit, not a guarantee of safety. Review the source before running it.
Install this skill
Choose an agent in your Stack or copy a command below. Commands fetch the pinned commit and copy only this skill directory. Existing destinations are refused. Copying a command does not install anything.
Claude Code
Destination .claude/skills/prompt-engineer
(
set -euo pipefail
destination='./.claude/skills/prompt-engineer'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/aakashg/pm-claude-skills.git' "$work/repo"
git -C "$work/repo" checkout --detach 64deebf681e1438c489609f1fa7000dfb331eabe
git -C "$work/repo" archive --format=tar '64deebf681e1438c489609f1fa7000dfb331eabe:skills/prompt-engineer' > "$work/skill.tar"
mkdir -p -- './.claude/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Codex
Destination .agents/skills/prompt-engineer
(
set -euo pipefail
destination='./.agents/skills/prompt-engineer'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/aakashg/pm-claude-skills.git' "$work/repo"
git -C "$work/repo" checkout --detach 64deebf681e1438c489609f1fa7000dfb331eabe
git -C "$work/repo" archive --format=tar '64deebf681e1438c489609f1fa7000dfb331eabe:skills/prompt-engineer' > "$work/skill.tar"
mkdir -p -- './.agents/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Cursor
Destination .cursor/skills/prompt-engineer
(
set -euo pipefail
destination='./.cursor/skills/prompt-engineer'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/aakashg/pm-claude-skills.git' "$work/repo"
git -C "$work/repo" checkout --detach 64deebf681e1438c489609f1fa7000dfb331eabe
git -C "$work/repo" archive --format=tar '64deebf681e1438c489609f1fa7000dfb331eabe:skills/prompt-engineer' > "$work/skill.tar"
mkdir -p -- './.cursor/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Gemini CLI
Destination .gemini/skills/prompt-engineer
(
set -euo pipefail
destination='./.gemini/skills/prompt-engineer'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/aakashg/pm-claude-skills.git' "$work/repo"
git -C "$work/repo" checkout --detach 64deebf681e1438c489609f1fa7000dfb331eabe
git -C "$work/repo" archive --format=tar '64deebf681e1438c489609f1fa7000dfb331eabe:skills/prompt-engineer' > "$work/skill.tar"
mkdir -p -- './.gemini/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)GitHub Copilot
Destination .github/skills/prompt-engineer
(
set -euo pipefail
destination='./.github/skills/prompt-engineer'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/aakashg/pm-claude-skills.git' "$work/repo"
git -C "$work/repo" checkout --detach 64deebf681e1438c489609f1fa7000dfb331eabe
git -C "$work/repo" archive --format=tar '64deebf681e1438c489609f1fa7000dfb331eabe:skills/prompt-engineer' > "$work/skill.tar"
mkdir -p -- './.github/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)OpenCode
Destination .opencode/skills/prompt-engineer
(
set -euo pipefail
destination='./.opencode/skills/prompt-engineer'
if [ -e "$destination" ] || [ -L "$destination" ]; then printf '%s\n' 'Destination already exists; nothing overwritten.' >&2; exit 1; fi
work=$(mktemp -d)
trap 'rm -rf -- "$work"' EXIT
git clone --filter=blob:none --no-checkout -- 'https://github.com/aakashg/pm-claude-skills.git' "$work/repo"
git -C "$work/repo" checkout --detach 64deebf681e1438c489609f1fa7000dfb331eabe
git -C "$work/repo" archive --format=tar '64deebf681e1438c489609f1fa7000dfb331eabe:skills/prompt-engineer' > "$work/skill.tar"
mkdir -p -- './.opencode/skills'
mkdir -- "$destination"
tar -xf "$work/skill.tar" -C "$destination"
)Repository context
- Repository stars (not skill ratings)
- 116
- Repository last updated
- Aug 8, 2026
- License
- MIT
Observed agent integration: No specific integration evidence. Standard SKILL.md installation does not imply verified compatibility.
- ai-agents Repository topic
- ai-skills Repository topic
- claude-code Repository topic
- pm-tools Repository topic
- product-management Repository topic
- ai Repository topic
- automation Repository topic
- claude Repository topic
- skills Repository topic
- writing Derived category
Files and excerpt
File metadata and permitted, redacted excerpts come from the recorded scan. Source links are pinned to that commit.
Browse files
SKILL.mdcore · 9,036 bytesreferences/techniques.mddoc · 6,003 bytes
Read excerpt
# Prompt Engineer
Diagnose a prompt, rewrite it, and show exactly what changed and why.
## Step 0 — Read first
| Source | Path | What to extract |
|--------|------|-----------------|
| The prompt | whatever the user pasted | Actual wording — never paraphrase before diagnosing |
| Failing output | the output they got, if provided | The failure mode; this determines the fix |
| Project context | `CLAUDE.md` | Audience, product, banned words, output preferences |
| Technique reference | `references/techniques.md` | Full before/after examples for each technique |
If the user pasted a prompt but no failing output, ask for one example of what it produced. Diagnosing from the prompt alone guesses at the failure mode.