pm-claude-skills 63.0.0 → 64.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (111) hide show
  1. package/README.md +10 -9
  2. package/exports/README.md +1 -1
  3. package/exports/aider/README.md +7 -1
  4. package/exports/aider/other/pixel-gif-maker/pixel-gif-maker.md +68 -0
  5. package/exports/aider/pm-tabletop/board-game-designer/board-game-designer.md +94 -0
  6. package/exports/aider/pm-tabletop/game-night-planner/game-night-planner.md +89 -0
  7. package/exports/aider/pm-tabletop/rules-lawyer/rules-lawyer.md +89 -0
  8. package/exports/aider/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +91 -0
  9. package/exports/aider/pm-tabletop/teach-the-game/teach-the-game.md +83 -0
  10. package/exports/chatgpt/README.md +7 -1
  11. package/exports/chatgpt/other/pixel-gif-maker/SYSTEM_PROMPT.md +68 -0
  12. package/exports/chatgpt/pm-tabletop/board-game-designer/SYSTEM_PROMPT.md +94 -0
  13. package/exports/chatgpt/pm-tabletop/game-night-planner/SYSTEM_PROMPT.md +89 -0
  14. package/exports/chatgpt/pm-tabletop/rules-lawyer/SYSTEM_PROMPT.md +89 -0
  15. package/exports/chatgpt/pm-tabletop/tabletop-negotiator/SYSTEM_PROMPT.md +91 -0
  16. package/exports/chatgpt/pm-tabletop/teach-the-game/SYSTEM_PROMPT.md +83 -0
  17. package/exports/cline/README.md +7 -1
  18. package/exports/cline/other/pixel-gif-maker/pixel-gif-maker.md +68 -0
  19. package/exports/cline/pm-tabletop/board-game-designer/board-game-designer.md +94 -0
  20. package/exports/cline/pm-tabletop/game-night-planner/game-night-planner.md +89 -0
  21. package/exports/cline/pm-tabletop/rules-lawyer/rules-lawyer.md +89 -0
  22. package/exports/cline/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +91 -0
  23. package/exports/cline/pm-tabletop/teach-the-game/teach-the-game.md +83 -0
  24. package/exports/continue/README.md +7 -1
  25. package/exports/continue/other/pixel-gif-maker/pixel-gif-maker.md +73 -0
  26. package/exports/continue/pm-tabletop/board-game-designer/board-game-designer.md +99 -0
  27. package/exports/continue/pm-tabletop/game-night-planner/game-night-planner.md +94 -0
  28. package/exports/continue/pm-tabletop/rules-lawyer/rules-lawyer.md +94 -0
  29. package/exports/continue/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +96 -0
  30. package/exports/continue/pm-tabletop/teach-the-game/teach-the-game.md +88 -0
  31. package/exports/cursor/README.md +7 -1
  32. package/exports/cursor/other/pixel-gif-maker/pixel-gif-maker.mdc +74 -0
  33. package/exports/cursor/pm-tabletop/board-game-designer/board-game-designer.mdc +100 -0
  34. package/exports/cursor/pm-tabletop/game-night-planner/game-night-planner.mdc +95 -0
  35. package/exports/cursor/pm-tabletop/rules-lawyer/rules-lawyer.mdc +95 -0
  36. package/exports/cursor/pm-tabletop/tabletop-negotiator/tabletop-negotiator.mdc +97 -0
  37. package/exports/cursor/pm-tabletop/teach-the-game/teach-the-game.mdc +89 -0
  38. package/exports/gemini/README.md +7 -1
  39. package/exports/gemini/other/pixel-gif-maker/GEM_INSTRUCTIONS.md +72 -0
  40. package/exports/gemini/pm-tabletop/board-game-designer/GEM_INSTRUCTIONS.md +98 -0
  41. package/exports/gemini/pm-tabletop/game-night-planner/GEM_INSTRUCTIONS.md +93 -0
  42. package/exports/gemini/pm-tabletop/rules-lawyer/GEM_INSTRUCTIONS.md +93 -0
  43. package/exports/gemini/pm-tabletop/tabletop-negotiator/GEM_INSTRUCTIONS.md +95 -0
  44. package/exports/gemini/pm-tabletop/teach-the-game/GEM_INSTRUCTIONS.md +87 -0
  45. package/exports/kilocode/README.md +7 -1
  46. package/exports/kilocode/other/pixel-gif-maker/pixel-gif-maker.md +68 -0
  47. package/exports/kilocode/pm-tabletop/board-game-designer/board-game-designer.md +94 -0
  48. package/exports/kilocode/pm-tabletop/game-night-planner/game-night-planner.md +89 -0
  49. package/exports/kilocode/pm-tabletop/rules-lawyer/rules-lawyer.md +89 -0
  50. package/exports/kilocode/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +91 -0
  51. package/exports/kilocode/pm-tabletop/teach-the-game/teach-the-game.md +83 -0
  52. package/exports/obsidian/README.md +7 -1
  53. package/exports/obsidian/other/pixel-gif-maker/pixel-gif-maker.md +83 -0
  54. package/exports/obsidian/pm-tabletop/board-game-designer/board-game-designer.md +109 -0
  55. package/exports/obsidian/pm-tabletop/game-night-planner/game-night-planner.md +104 -0
  56. package/exports/obsidian/pm-tabletop/rules-lawyer/rules-lawyer.md +104 -0
  57. package/exports/obsidian/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +106 -0
  58. package/exports/obsidian/pm-tabletop/teach-the-game/teach-the-game.md +98 -0
  59. package/exports/openclaw/README.md +7 -1
  60. package/exports/openclaw/board-game-designer/SKILL.md +104 -0
  61. package/exports/openclaw/game-night-planner/SKILL.md +99 -0
  62. package/exports/openclaw/pixel-gif-maker/SKILL.md +78 -0
  63. package/exports/openclaw/rules-lawyer/SKILL.md +99 -0
  64. package/exports/openclaw/tabletop-negotiator/SKILL.md +101 -0
  65. package/exports/openclaw/teach-the-game/SKILL.md +93 -0
  66. package/exports/roo/README.md +7 -1
  67. package/exports/roo/other/pixel-gif-maker/pixel-gif-maker.md +68 -0
  68. package/exports/roo/pm-tabletop/board-game-designer/board-game-designer.md +94 -0
  69. package/exports/roo/pm-tabletop/game-night-planner/game-night-planner.md +89 -0
  70. package/exports/roo/pm-tabletop/rules-lawyer/rules-lawyer.md +89 -0
  71. package/exports/roo/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +91 -0
  72. package/exports/roo/pm-tabletop/teach-the-game/teach-the-game.md +83 -0
  73. package/exports/windsurf/README.md +7 -1
  74. package/exports/windsurf/other/pixel-gif-maker/pixel-gif-maker.md +73 -0
  75. package/exports/windsurf/pm-tabletop/board-game-designer/board-game-designer.md +99 -0
  76. package/exports/windsurf/pm-tabletop/game-night-planner/game-night-planner.md +94 -0
  77. package/exports/windsurf/pm-tabletop/rules-lawyer/rules-lawyer.md +94 -0
  78. package/exports/windsurf/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +96 -0
  79. package/exports/windsurf/pm-tabletop/teach-the-game/teach-the-game.md +88 -0
  80. package/exports/zed/README.md +7 -1
  81. package/exports/zed/other/pixel-gif-maker/pixel-gif-maker.md +68 -0
  82. package/exports/zed/pm-tabletop/board-game-designer/board-game-designer.md +94 -0
  83. package/exports/zed/pm-tabletop/game-night-planner/game-night-planner.md +89 -0
  84. package/exports/zed/pm-tabletop/rules-lawyer/rules-lawyer.md +89 -0
  85. package/exports/zed/pm-tabletop/tabletop-negotiator/tabletop-negotiator.md +91 -0
  86. package/exports/zed/pm-tabletop/teach-the-game/teach-the-game.md +83 -0
  87. package/package.json +2 -2
  88. package/skills/board-game-designer/SKILL.md +99 -0
  89. package/skills/game-night-planner/SKILL.md +94 -0
  90. package/skills/pixel-gif-maker/SKILL.md +73 -0
  91. package/skills/pixel-gif-maker/scripts/pixel_gif.py +214 -0
  92. package/skills/rules-lawyer/SKILL.md +94 -0
  93. package/skills/tabletop-negotiator/SKILL.md +96 -0
  94. package/skills/teach-the-game/SKILL.md +88 -0
  95. package/web/benchmark.html +1 -1
  96. package/web/cheatsheet.html +4 -4
  97. package/web/city.html +1 -1
  98. package/web/compare.html +1 -1
  99. package/web/galaxy.html +1 -1
  100. package/web/galaxy3d.html +2 -2
  101. package/web/guide.html +5 -5
  102. package/web/handbook.html +4 -4
  103. package/web/holo.html +2 -2
  104. package/web/index.html +9 -9
  105. package/web/learn.html +1 -1
  106. package/web/remix.html +1 -1
  107. package/web/semantic.html +2 -2
  108. package/web/skills.json +1 -1
  109. package/web/starter-pack.html +2 -2
  110. package/web/voice.html +1 -1
  111. package/web/what-are-agent-skills.html +3 -3
package/README.md CHANGED
@@ -1,8 +1,8 @@
1
- # 🧠 PM Skills — 776 Professional Agent Skills for Claude, ChatGPT, Gemini, Cursor, Codex & Hermes
1
+ # 🧠 PM Skills — 782 Professional Agent Skills for Claude, ChatGPT, Gemini, Cursor, Codex & Hermes
2
2
 
3
3
  <p align="center">
4
4
  <a href="https://mohitagw15856.github.io/pm-claude-skills/">
5
- <img src="web/docs-assets/hero.svg" width="100%" alt="PM Skills — 776 professional skills your AI assistant can read. Plain markdown, works with Claude, ChatGPT, Gemini, Cursor, and Codex. MIT licensed." />
5
+ <img src="web/docs-assets/hero.svg" width="100%" alt="PM Skills — 782 professional skills your AI assistant can read. Plain markdown, works with Claude, ChatGPT, Gemini, Cursor, and Codex. MIT licensed." />
6
6
  </a>
7
7
  </p>
8
8
 
@@ -23,7 +23,7 @@
23
23
  ## What is PM Skills?
24
24
 
25
25
  <!-- AEO Answer Capsule — 68 words -->
26
- PM Skills is an open-source library of 776 Agent Skills — plain-markdown SKILL.md files that teach an AI assistant to do one professional task to a senior professional's standard, from writing a PRD to decoding a lease or running a blameless postmortem. Each skill bundles the framework, an output template, quality checks, and anti-patterns. It is MIT-licensed and works with Claude, ChatGPT, Gemini, Cursor, and Codex.
26
+ PM Skills is an open-source library of 782 Agent Skills — plain-markdown SKILL.md files that teach an AI assistant to do one professional task to a senior professional's standard, from writing a PRD to decoding a lease or running a blameless postmortem. Each skill bundles the framework, an output template, quality checks, and anti-patterns. It is MIT-licensed and works with Claude, ChatGPT, Gemini, Cursor, and Codex.
27
27
  <!-- End AEO Capsule -->
28
28
 
29
29
  **Decode a lease before you sign it. Write a PRD your team can execute. Simulate the promotion committee before the real one meets. Check the weather with zero API keys.** Generic AI gives you filler; these give you the structure a senior professional actually uses.
@@ -70,7 +70,7 @@ Anything below is a real ask that activates a real skill — say it in your own
70
70
  | 🛂 *"prep me for the visa interview"* → [the-visa-interview](skills/the-visa-interview/SKILL.md) | 🔨 *"is this contractor quote fair?"* → [home-contractor-quote-decoder](skills/home-contractor-quote-decoder/SKILL.md) | 🏡 *"should we rent or buy?"* → [rent-vs-buy](skills/rent-vs-buy/SKILL.md) |
71
71
  | 📝 *"draft my self-review honestly"* → [performance-review](skills/performance-review/SKILL.md) | 🚀 *"are we ready to launch?"* → [product-launch-checklist](skills/product-launch-checklist/SKILL.md) | 📬 *"my inbox is 4,000 deep"* → [email-triage-system](skills/email-triage-system/SKILL.md) |
72
72
 
73
- …all 776 asks live in **[the catalog](SKILLS.md)**.
73
+ …all 782 asks live in **[the catalog](SKILLS.md)**.
74
74
 
75
75
  ## ⚡ Quick start
76
76
 
@@ -86,7 +86,7 @@ No `npm install` needed — `npx pm-claude-skills …` always runs the latest. `
86
86
 
87
87
  ## 📚 The skills
88
88
 
89
- Every skill follows the same discipline: what it produces, the inputs it needs, a real framework (severity scales, decision rules — not vibes), a concrete output template, quality checks, and anti-patterns. All 776 pass the [SkillSpec](SKILLSPEC.md) L3 gate and a security audit in CI.
89
+ Every skill follows the same discipline: what it produces, the inputs it needs, a real framework (severity scales, decision rules — not vibes), a concrete output template, quality checks, and anti-patterns. All 782 pass the [SkillSpec](SKILLSPEC.md) L3 gate and a security audit in CI.
90
90
 
91
91
  <table align="center">
92
92
  <tr align="center">
@@ -122,6 +122,7 @@ Every skill follows the same discipline: what it produces, the inputs it needs,
122
122
  | 🏠 **Life admin** | The unglamorous logistics, done in order | [relocation](skills/relocation-planner/SKILL.md) · [new parent](skills/new-parent-logistics/SKILL.md) · [caregiving](skills/caregiver-coordination/SKILL.md) · [doctor visits](skills/doctor-visit-prep/SKILL.md) · [records requests](skills/medical-records-request/SKILL.md) |
123
123
  | 💼 **Career moments** | The weeks that decide years | [layoff kit](plugins/pm-layoff/) · [resignation kit](plugins/pm-resignation/) · [PIP response](skills/pip-responder/SKILL.md) · [first 90 days as manager](skills/manager-first-90-days/SKILL.md) · [interview gauntlet](plugins/pm-jobsearch/) |
124
124
  | 🏛 **Dead mentors** (5) 🆕 | History's sharpest operators, resurrected — the *real* methods from public-domain classics, applied to modern work | [Machiavelli on office politics](skills/machiavelli-counsel/SKILL.md) · [Sun Tzu on picking your fights](skills/sun-tzu-strategy-brief/SKILL.md) · [Franklin's decision algebra](skills/franklin-decision-ledger/SKILL.md) · [Marcus Aurelius on bad days](skills/stoic-setback-debrief/SKILL.md) · [Bennett's 1908 time audit](skills/bennett-time-audit/SKILL.md) |
125
+ | 🎲 **Tabletop** (5) 🆕 | Game night, upgraded — teach, judge, plan, design, and practice the trades | [teach-the-game](skills/teach-the-game/SKILL.md) · [rules-lawyer](skills/rules-lawyer/SKILL.md) · [game-night-planner](skills/game-night-planner/SKILL.md) · [board-game-designer](skills/board-game-designer/SKILL.md) · [tabletop-negotiator](skills/tabletop-negotiator/SKILL.md) |
125
126
  | 🧾 **Freelance & renters & parents** | Small bundles for specific lives | [pricing your services](skills/pricing-your-services/SKILL.md) · [late invoices](skills/late-invoice-escalation/SKILL.md) · [deposit recovery](skills/security-deposit-recovery/SKILL.md) · [IEP meetings](skills/iep-504-meeting-kit/SKILL.md) · [students](plugins/pm-students/) |
126
127
  | 🤝 **Cowork** (100) | The office knowledge work an AI coworker actually does — the *frameworks* — [the whole bundle](plugins/pm-cowork/) | [email triage](skills/email-triage-system/SKILL.md) · [spreadsheet audit](skills/spreadsheet-audit/SKILL.md) · [meeting cost meter](skills/meeting-cost-meter/SKILL.md) · [deck outline first](skills/deck-outline-first/SKILL.md) · [saying no kindly](skills/saying-no-kindly/SKILL.md) · [delegation brief](skills/delegation-brief/SKILL.md) |
127
128
  | ⚡ **Cowork · Live** (12) | The same jobs, *done* — Claude Cowork acts on your **real data** via connectors + sandbox and returns an artifact — [the whole bundle](plugins/pm-cowork-live/) | [inbox triage (live)](skills/inbox-triage-live/SKILL.md) · [meeting prep (live)](skills/meeting-prep-live/SKILL.md) · [spreadsheet audit (live)](skills/spreadsheet-audit-live/SKILL.md) · [deck from doc](skills/deck-from-doc/SKILL.md) · [thread → decision](skills/thread-to-decision-live/SKILL.md) · [PR description (live)](skills/pr-description-live/SKILL.md) |
@@ -135,7 +136,7 @@ Every skill follows the same discipline: what it produces, the inputs it needs,
135
136
  | <img src="web/docs-assets/logos/pm-design.svg" width="20" alt=""/> [Design & UX](plugins/pm-design/) | <img src="web/docs-assets/logos/pm-legal.svg" width="20" alt=""/> [Legal](plugins/pm-legal/) | <img src="web/docs-assets/logos/pm-finance.svg" width="20" alt=""/> [Finance](plugins/pm-finance/) |
136
137
  | <img src="web/docs-assets/logos/pm-founders.svg" width="20" alt=""/> [Founders](plugins/pm-founders/) | <img src="web/docs-assets/logos/pm-security.svg" width="20" alt=""/> [Security](plugins/pm-security/) | <img src="web/docs-assets/logos/pm-gov.svg" width="20" alt=""/> [Government](plugins/pm-gov/) |
137
138
 
138
- …plus HR, sales, operations, research, healthcare, educators, writers, social media, and more — **[the full profession index](SKILLS.md)**, or by bundle in [`plugins/`](plugins/) (95 bundles). Install any bundle: `/plugin install pm-decoders@pm-skills`.
139
+ …plus HR, sales, operations, research, healthcare, educators, writers, social media, and more — **[the full profession index](SKILLS.md)**, or by bundle in [`plugins/`](plugins/) (96 bundles). Install any bundle: `/plugin install pm-decoders@pm-skills`.
139
140
 
140
141
  ### Meta
141
142
 
@@ -239,13 +240,13 @@ The whole library on one poster — start path, standout features, and install o
239
240
 
240
241
  ## 🆕 Latest
241
242
 
242
- **v63.0.0 — the dead mentors:** history's sharpest operators, resurrected as skills — **[Machiavelli](skills/machiavelli-counsel/SKILL.md)** reads your reorg (with the honest counterweight built in), **[Sun Tzu](skills/sun-tzu-strategy-brief/SKILL.md)** decides fight/reshape/decline, **[Franklin's decision algebra](skills/franklin-decision-ledger/SKILL.md)** settles the offer you keep flip-flopping on, **[Marcus Aurelius](skills/stoic-setback-debrief/SKILL.md)** debriefs the day that went badly, and **[Arnold Bennett (1908)](skills/bennett-time-audit/SKILL.md)** finds your inner day — real methods from public-domain classics, chapter-cited, never misquoted. *Earlier — v62.2, the distribution wave* (SkillScan, telemetry, SkillBench v2, quiz, wins, WhatsApp); *v62.1, nine frontiers.* Full history: **[CHANGELOG](CHANGELOG.md)** · [releases](https://github.com/mohitagw15856/pm-claude-skills/releases)
243
+ **v64.0.0 — game night:** [pm-tabletop](plugins/pm-tabletop) — teach any board game in 5 minutes, settle rules arguments fairly, plan the lineup, design your own game, and [spar the Catan trade](skills/tabletop-negotiator/SKILL.md) against a hidden agenda with a scored debrief; 782 skills, 96 bundles. *v63.1 — pixel confetti:* [pixel-gif-maker](skills/pixel-gif-maker/SKILL.md) — custom retro Slack GIFs (scroll, pulse, party, sparkle) from a pure-stdlib deterministic encoder; 782 skills. *And v63.0.0 — the dead mentors:* history's sharpest operators, resurrected as skills — **[Machiavelli](skills/machiavelli-counsel/SKILL.md)** reads your reorg (with the honest counterweight built in), **[Sun Tzu](skills/sun-tzu-strategy-brief/SKILL.md)** decides fight/reshape/decline, **[Franklin's decision algebra](skills/franklin-decision-ledger/SKILL.md)** settles the offer you keep flip-flopping on, **[Marcus Aurelius](skills/stoic-setback-debrief/SKILL.md)** debriefs the day that went badly, and **[Arnold Bennett (1908)](skills/bennett-time-audit/SKILL.md)** finds your inner day — real methods from public-domain classics, chapter-cited, never misquoted. *Earlier — v62.2, the distribution wave* (SkillScan, telemetry, SkillBench v2, quiz, wins, WhatsApp); *v62.1, nine frontiers.* Full history: **[CHANGELOG](CHANGELOG.md)** · [releases](https://github.com/mohitagw15856/pm-claude-skills/releases)
243
244
 
244
245
  ## ❓ First-timer questions, straight answers
245
246
 
246
247
  <details>
247
248
  <summary><b>Is it actually free?</b></summary>
248
- Yes — MIT, all 776 skills, forever. The skills are markdown; there is nothing to gate. Sponsors fund the playground's free model runs, not access.
249
+ Yes — MIT, all 782 skills, forever. The skills are markdown; there is nothing to gate. Sponsors fund the playground's free model runs, not access.
249
250
  </details>
250
251
 
251
252
  <details>
@@ -288,4 +289,4 @@ MIT — use them, fork them, ship them at work. Skills are judgment, and judgmen
288
289
 
289
290
  ---
290
291
 
291
- *Built by [Mohit](https://github.com/mohitagw15856) with Claude. 776 skills · 95 bundles · 35 professions · every commit gated. The long version of this README — every feature, wave, and frontier bet — lives in the **[Showcase](docs/SHOWCASE.md)**.*
292
+ *Built by [Mohit](https://github.com/mohitagw15856) with Claude. 782 skills · 96 bundles · 35 professions · every commit gated. The long version of this README — every feature, wave, and frontier bet — lives in the **[Showcase](docs/SHOWCASE.md)**.*
package/exports/README.md CHANGED
@@ -8,7 +8,7 @@ by hand; edit the source skill and run:
8
8
  node scripts/build-exports.mjs
9
9
  ```
10
10
 
11
- Currently exporting **776 skills** to:
11
+ Currently exporting **782 skills** to:
12
12
 
13
13
  - **ChatGPT — Custom GPT instructions** → `exports/chatgpt/`
14
14
  - **Google Gemini — Gem instructions** → `exports/gemini/`
@@ -3,7 +3,7 @@
3
3
  > Auto-generated from `skills/*/SKILL.md` by `scripts/build-exports.mjs`.
4
4
  > **Do not edit these files by hand** — edit the source skill and regenerate.
5
5
 
6
- 776 skills exported. Copy a `.md rule` into the tool to use it.
6
+ 782 skills exported. Copy a `.md rule` into the tool to use it.
7
7
 
8
8
  | Skill | Bundle | Path |
9
9
  |---|---|---|
@@ -61,6 +61,7 @@
61
61
  | Bid / Tender Review | `pm-construction` | `pm-construction/bid-tender-review/bid-tender-review.md` |
62
62
  | Blast Radius Drill | `pm-seatbelt` | `pm-seatbelt/blast-radius-drill/blast-radius-drill.md` |
63
63
  | Board Deck Narrative | `pm-business` | `pm-business/board-deck-narrative/board-deck-narrative.md` |
64
+ | Board Game Designer | `pm-tabletop` | `pm-tabletop/board-game-designer/board-game-designer.md` |
64
65
  | Board Minutes | `pm-business` | `pm-business/board-minutes/board-minutes.md` |
65
66
  | Board Pre-Read | `pm-business` | `pm-business/board-pre-read/board-pre-read.md` |
66
67
  | BOM Cost Review | `pm-hardware` | `pm-hardware/bom-cost-review/bom-cost-review.md` |
@@ -321,6 +322,7 @@
321
322
  | Freelance Rate | `pm-calculators` | `pm-calculators/freelance-rate/freelance-rate.md` |
322
323
  | Frontend Design | `pm-design` | `pm-design/frontend-design/frontend-design.md` |
323
324
  | Fundraising FAQ | `pm-founders` | `pm-founders/fundraising-faq/fundraising-faq.md` |
325
+ | Game Night Planner | `pm-tabletop` | `pm-tabletop/game-night-planner/game-night-planner.md` |
324
326
  | Gantt / Roadmap | `pm-visuals` | `pm-visuals/gantt-roadmap/gantt-roadmap.md` |
325
327
  | GDPR Compliance | `pm-compliance` | `pm-compliance/gdpr-compliance/gdpr-compliance.md` |
326
328
  | Git Troubleshooter | `pm-engineering` | `pm-engineering/git-troubleshooter/git-troubleshooter.md` |
@@ -493,6 +495,7 @@
493
495
  | PIP Responder | `pm-career` | `pm-career/pip-responder/pip-responder.md` |
494
496
  | Pitch Vs Teach | `pm-cowork` | `pm-cowork/pitch-vs-teach/pitch-vs-teach.md` |
495
497
  | Pivot Analysis Planner | `pm-cowork` | `pm-cowork/pivot-analysis-planner/pivot-analysis-planner.md` |
498
+ | Pixel GIF Maker | `other` | `other/pixel-gif-maker/pixel-gif-maker.md` |
496
499
  | Plain Language Rewrite | `pm-cowork` | `pm-cowork/plain-language-rewrite/plain-language-rewrite.md` |
497
500
  | PM Weekly Review | `pm-rituals` | `pm-rituals/pm-weekly-review/pm-weekly-review.md` |
498
501
  | Policy Drafter | `pm-cowork` | `pm-cowork/policy-drafter/policy-drafter.md` |
@@ -599,6 +602,7 @@
599
602
  | Rollback Plan | `pm-engineering` | `pm-engineering/rollback-plan/rollback-plan.md` |
600
603
  | RSS Digest | `pm-live` | `pm-live/rss-digest/rss-digest.md` |
601
604
  | Rubric Builder | `pm-education` | `pm-education/rubric-builder/rubric-builder.md` |
605
+ | Rules Lawyer | `pm-tabletop` | `pm-tabletop/rules-lawyer/rules-lawyer.md` |
602
606
  | Runbook Writer | `pm-engineering` | `pm-engineering/runbook-writer/runbook-writer.md` |
603
607
  | Runway Calculator | `pm-calculators` | `pm-calculators/runway-calculator/runway-calculator.md` |
604
608
  | Runway Monte Carlo | `pm-calculators` | `pm-calculators/runway-monte-carlo/runway-monte-carlo.md` |
@@ -698,9 +702,11 @@
698
702
  | Sycophancy Challenger | `pm-cross` | `pm-cross/sycophancy-challenger/sycophancy-challenger.md` |
699
703
  | Synthetic User Research | `pm-research` | `pm-research/synthetic-user-research/synthetic-user-research.md` |
700
704
  | System Design Interview | `pm-engineering` | `pm-engineering/system-design-interview/system-design-interview.md` |
705
+ | Tabletop Negotiator | `pm-tabletop` | `pm-tabletop/tabletop-negotiator/tabletop-negotiator.md` |
701
706
  | Task Triage Matrix | `pm-cowork` | `pm-cowork/task-triage-matrix/task-triage-matrix.md` |
702
707
  | Tax Planning Checklist | `pm-finance` | `pm-finance/tax-planning-checklist/tax-planning-checklist.md` |
703
708
  | TDD Workflow | `pm-craft` | `pm-craft/tdd-workflow/tdd-workflow.md` |
709
+ | Teach The Game | `pm-tabletop` | `pm-tabletop/teach-the-game/teach-the-game.md` |
704
710
  | Teaching Lesson Plan | `pm-cross` | `pm-cross/teaching-lesson-plan/teaching-lesson-plan.md` |
705
711
  | Team Budget Tracker | `pm-cowork` | `pm-cowork/team-budget-tracker/team-budget-tracker.md` |
706
712
  | Team Health Check | `pm-people` | `pm-people/team-health-check/team-health-check.md` |
@@ -0,0 +1,68 @@
1
+ # Pixel GIF Maker Skill
2
+
3
+ The most-reacted message in any Slack channel is never the status update — it's the
4
+ GIF. This skill makes custom ones in a retro pixel style: your words, four
5
+ animations, eight colors, and a file small enough to drag anywhere. The whole
6
+ encoder is a bundled pure-stdlib Python script — this library's calculators are
7
+ dependency-free and deterministic, and so is its confetti.
8
+
9
+ ## What This Skill Produces
10
+
11
+ - A `.gif` file (GIF89a, looping) with the user's text in chunky 5×7 pixel type
12
+ - One of four animations: **scroll** (marquee), **pulse** (heartbeat zoom),
13
+ **party** (hue-cycling text + confetti), **sparkle** (twinkling stars)
14
+ - Sized for chat: typically 10–60KB, well under any upload limit
15
+
16
+ ## Required Inputs
17
+
18
+ Ask for (if not already provided):
19
+ - The text — **under 24 characters**; pixel fonts are for punchlines
20
+ ("SHIP IT", "1000 STARS", "GG TEAM", "V63 IS LIVE"). Type `*` for a ♥.
21
+ - The mood → mode: victory lap = `party` · announcement = `scroll` ·
22
+ emphasis = `pulse` · appreciation = `sparkle`
23
+ - Optional: colors (`night, plum, teal, mint, gold, coral, white, ink, violet`)
24
+ and `--scale 1-4` (default 3)
25
+
26
+ ## Process
27
+
28
+ 1. Run the bundled script — no installs, Python 3 stdlib only:
29
+ ```bash
30
+ python3 scripts/pixel_gif.py --text "SHIP IT" --mode party --out shipit.gif
31
+ python3 scripts/pixel_gif.py --text "GG TEAM *" --mode sparkle --fg gold --bg night --out gg.gif
32
+ python3 scripts/pixel_gif.py --self-test # verify all four modes, print hashes
33
+ ```
34
+ 2. Uppercase renders best (the font is A–Z, 0–9, and common punctuation; unknown
35
+ characters become `?` — warn the user rather than surprise them).
36
+ 3. Same arguments + same `--seed` → byte-identical file; change `--seed` to
37
+ reshuffle confetti/star positions.
38
+ 4. Hand back the file path and one line on which mode was chosen and why.
39
+
40
+ ## Output Format
41
+
42
+ The `.gif` itself, plus:
43
+
44
+ ```
45
+ 🎉 shipit.gif — 159×57, 10 frames, party mode (confetti for a launch).
46
+ Drag it into Slack. Want it calmer (sparkle) or bigger (--scale 4)?
47
+ ```
48
+
49
+ ## Quality Checks
50
+
51
+ - [ ] Text length checked BEFORE generating — over 24 characters, ask them to cut
52
+ (offer the punchline edit: "SHIPPED THE MIGRATION" → "SHIPPED IT")
53
+ - [ ] Mode matches the moment — a layoff-week channel does not get confetti;
54
+ when in doubt, sparkle
55
+ - [ ] Script ran without error and the reported file size is under ~200KB
56
+ - [ ] Any character outside the font set was flagged to the user, not silently
57
+ turned into `?`
58
+
59
+ ## Anti-Patterns
60
+
61
+ - [ ] Do not reach for image libraries or external services — the point of the
62
+ bundled encoder is zero dependencies and deterministic output
63
+ - [ ] Do not generate GIFs containing colleagues' names in mocking contexts —
64
+ celebration tool, not a roast tool; decline and suggest the kind version
65
+ - [ ] Do not cram sentences in — if the user insists past 24 characters, use
66
+ scroll mode and say why
67
+ - [ ] Do not promise Slack emoji-size rendering — this makes message GIFs;
68
+ custom emoji have their own size rules the user handles in Slack settings
@@ -0,0 +1,94 @@
1
+ # Board Game Designer Skill
2
+
3
+ Everyone has a board game idea; almost nobody has a *prototype*, because the gap
4
+ between theme ("it's about deep-sea heists!") and game (what do I DO on my
5
+ turn?) is where ideas stall. This skill forces the designer's questions in the
6
+ order working designers ask them — loop before theme-decoration, tension before
7
+ content, cardboard before art — and ships the user toward a playtest this week
8
+ with ugly components and honest kill criteria.
9
+
10
+ ## What This Skill Produces
11
+
12
+ - A **design one-pager**: hook, core loop, tension source, end condition,
13
+ player count/length targets
14
+ - A **prototype spec** buildable tonight: index cards, dice, cubes — counts and
15
+ what's written on each; zero art
16
+ - **Balance starting-points**: first-pass numbers with the reasoning, labelled
17
+ as guesses to tune, never as solved math
18
+ - A **3-session playtest protocol** with what to watch, what to ask, and kill
19
+ criteria — the honest thresholds for pivot-or-persevere
20
+
21
+ ## Required Inputs
22
+
23
+ Ask for (if not already provided):
24
+ - The idea as they'd pitch it to a friend, plus what inspired it
25
+ - The feeling the best turn should produce (clever? tense? gleeful betrayal?)
26
+ - Target: players, minutes, audience (family? hobbyists? their own group?)
27
+ - If mid-design: what's working, and where it drags
28
+
29
+ ## Process
30
+
31
+ 1. **Find the loop.** One sentence: "On your turn you [verb] to get [resource]
32
+ to [convert] toward [goal]." No loop sentence, no game yet — iterate here
33
+ before anything else.
34
+ 2. **Name the tension.** Every game that works has a recurring painful choice
35
+ (this OR that, now OR better-later, me OR blocking-you). Identify the one
36
+ this design offers; if every option is good, there's no game in the loop yet.
37
+ 3. **Steal structure honestly.** Name 2–3 existing games whose *mechanisms*
38
+ neighbour this design and what each does with them — designers study prior
39
+ art; note where this design genuinely differs (its one new twist) and where
40
+ it shouldn't bother differing.
41
+ 4. **Spec the ugliest playable version.** Index cards and cubes, tonight. Every
42
+ component count written down. The rule: nothing gets art until it survives
43
+ five plays.
44
+ 5. **First-pass the numbers.** Costs, income, end-trigger pacing — pick values
45
+ with stated reasoning ("end triggers around turn 8 so the engine peaks once"),
46
+ marked TUNE. Balance comes from plays, not spreadsheets; the spreadsheet just
47
+ picks where to start.
48
+ 6. **Protocol the playtests.** Session 1 (solo, all seats): does the loop
49
+ function? Session 2 (friendly table): where does attention die? Watch for the
50
+ tells — checking phones, analysis stalls, kingmaking, runaway leader. Session
51
+ 3 (someone who owes you nothing): would they play again *unprompted*? Kill
52
+ criteria stated up front: if the same drag survives two fixes, the mechanism
53
+ goes, however loved.
54
+
55
+ ## Output Format
56
+
57
+ ```
58
+ ## Design one-pager
59
+ [Hook · loop sentence · the tension · end condition · count/length targets]
60
+
61
+ ## Neighbouring designs
62
+ [2-3 games, the mechanism borrowed/varied, the one honest twist here]
63
+
64
+ ## Prototype spec (build tonight)
65
+ [Component list with counts and card text · setup · turn structure v0.1]
66
+
67
+ ## Numbers v0.1 (all marked TUNE)
68
+ [Table of starting values + one line of reasoning each]
69
+
70
+ ## Playtest protocol
71
+ [3 sessions: goal, what to watch, questions to ask AFTER not during]
72
+ Kill criteria: [the honest thresholds]
73
+ ```
74
+
75
+ ## Quality Checks
76
+
77
+ - [ ] The loop fits in one sentence and contains a decision, not just an action
78
+ - [ ] The tension is a *recurring* choice, named concretely
79
+ - [ ] Prototype is buildable from household stationery in an evening — if it
80
+ needs printing services, it's overdesigned for v0.1
81
+ - [ ] Every number carries reasoning and a TUNE flag — no false precision
82
+ - [ ] Kill criteria exist and are specific enough to actually trigger
83
+
84
+ ## Anti-Patterns
85
+
86
+ - [ ] Do not start with theme, art, or a Kickstarter plan — loop, tension,
87
+ cardboard, in that order
88
+ - [ ] Do not claim the idea is original without the prior-art pass, and do not
89
+ copy a game wholesale with the theme swapped — name the twist
90
+ - [ ] Do not present first-pass numbers as balanced — playtesting owns balance
91
+ - [ ] Do not let the designer explain rules during playtests — confusion IS the
92
+ data
93
+ - [ ] Do not promise market outcomes ("this would sell!") — the promise is a
94
+ playtest by Friday
@@ -0,0 +1,89 @@
1
+ # Game Night Planner Skill
2
+
3
+ Game nights don't fail because the games are bad — they fail because someone
4
+ brought a 3-hour economic engine to a table that wanted snacks and laughing, or
5
+ because choosing took 40 minutes, or because seven people showed up for a
6
+ 4-player game. This skill plans like a good host thinks: who is actually coming,
7
+ what's their tolerance, sequence light-to-heavy, and always know what happens
8
+ when the count changes at 7pm.
9
+
10
+ ## What This Skill Produces
11
+
12
+ - A **sequenced lineup** (opener → main event → optional nightcap) with
13
+ per-game: player count fit, realistic time *including the teach*, and why it
14
+ suits this table
15
+ - **Plan B branches**: someone bails / someone brings a friend / running late
16
+ - A **from-their-shelf first** selection when the user lists what they own, with
17
+ 1–3 to-buy/borrow suggestions only if the shelf can't cover the night
18
+ - The **house logistics**: teach order, who teaches (pair with teach-the-game),
19
+ when to call the last game
20
+
21
+ ## Required Inputs
22
+
23
+ Ask for (if not already provided):
24
+ - Headcount (and how firm it is), plus ages and the experience mix
25
+ - The vibe wanted: competitive, cooperative, social/party, "just talking with
26
+ something to do"
27
+ - Hard limits: total hours, any player's complexity ceiling, themes to avoid
28
+ - What they own or can borrow — plan from the shelf before the shop
29
+
30
+ ## Process
31
+
32
+ 1. **Plan for the people, not the games.** The least-enthusiastic guest sets the
33
+ weight ceiling for the main event; the most-enthusiastic one gets the
34
+ nightcap. Say who each pick serves.
35
+ 2. **Sequence by energy.** Opener: ≤20 minutes, teachable in one, works while
36
+ people arrive. Main event: the night's centrepiece, started while energy is
37
+ high — never after 9pm for a heavy game. Nightcap: low-rules, high-laughs,
38
+ quittable anytime.
39
+ 3. **Budget honest time.** A "45-minute" game with a teach and a first play is
40
+ 90; say the real number per slot and total. If the lineup exceeds the stated
41
+ window, cut a game, don't compress the estimates.
42
+ 4. **Branch the plan.** Player counts are fiction until the doorbell stops: for
43
+ each lineup slot, name the swap when N±1 shows up (many great games break at
44
+ exactly one count — flag those).
45
+ 5. **Recommend honestly.** Suggest well-known games by name where they genuinely
46
+ fit, note "check availability/price" rather than asserting either, and if
47
+ the user's shelf covers the night, say so — the best recommendation is often
48
+ already owned.
49
+
50
+ ## Output Format
51
+
52
+ ```
53
+ ## The night at a glance
54
+ [Who's coming, the vibe, total window · one-line theme of the plan]
55
+
56
+ ## Lineup
57
+ 1. OPENER — [game] ([count] players, ~[real minutes] incl. teach)
58
+ Why for this table: … · Who it serves: …
59
+ 2. MAIN EVENT — [game] …
60
+ 3. NIGHTCAP (optional) — [game] …
61
+ Total honest time: [X]h[Y]m of your [window]
62
+
63
+ ## When reality edits the guest list
64
+ - One fewer: … · One extra: … · Running an hour late: cut […], start at […]
65
+
66
+ ## Logistics
67
+ [Who teaches what · setup while people arrive · the "last game" call time]
68
+ ```
69
+
70
+ ## Quality Checks
71
+
72
+ - [ ] Every pick names who at the table it serves — a lineup with no named
73
+ beneficiary is a list, not a plan
74
+ - [ ] Times include teach + setup, and the total fits the stated window without
75
+ wishful compression
76
+ - [ ] Player-count edge cases flagged (games that break at exactly this N±1)
77
+ - [ ] Shelf games considered before purchases; buys capped at three and marked
78
+ "check availability"
79
+ - [ ] The weight ceiling respects the least-enthusiastic guest, not the host
80
+
81
+ ## Anti-Patterns
82
+
83
+ - [ ] Do not build the host's dream lineup — the guest who came reluctantly
84
+ decides whether there's a next game night
85
+ - [ ] Do not schedule a heavy teach late in the evening
86
+ - [ ] Do not recommend obscure games as if universally available, and never
87
+ state prices as fact
88
+ - [ ] Do not plan zero slack — the gap between games is where game night
89
+ actually happens
@@ -0,0 +1,89 @@
1
+ # Rules Lawyer Skill
2
+
3
+ Every game group has The Argument: two players, two readings of one sentence, and
4
+ a fun evening curdling while someone scrolls a forum from 2011. This skill plays
5
+ the judge the table actually needs: reconstruct the disputed situation precisely,
6
+ rule on the text, show the reasoning, name what's rules-as-written versus what's
7
+ a house rule the table is free to adopt — and give everyone a face-saving way
8
+ back into the game. The ruling matters less than the game night surviving it.
9
+
10
+ ## What This Skill Produces
11
+
12
+ - A **table ruling**: the answer, with the rule text or principle it rests on
13
+ - A **RAW vs house rule** split: what the rules actually say vs what this table
14
+ may prefer — both legitimate, never confused
15
+ - A **confidence label**: ruled from text (paste provided) · ruled from general
16
+ knowledge of the game (verify if it's for money/tournament) · genuinely
17
+ ambiguous (here's the fairest tiebreak)
18
+ - A **keep-the-peace line** to read aloud, and a suggestion for logging it as a
19
+ standing house rule so the argument never repeats
20
+
21
+ ## Required Inputs
22
+
23
+ Ask for (if not already provided):
24
+ - The game (edition matters — rules change between printings)
25
+ - The exact situation: who did what, in what order, and what's contested
26
+ - The rulebook passage in dispute, pasted, if anyone has it to hand — text beats
27
+ memory, including this skill's
28
+ - What each side claims (steelman both)
29
+
30
+ ## Process
31
+
32
+ 1. **Reconstruct before ruling.** Restate the situation as a sequence of game
33
+ events until both sides agree that's what happened — half of all disputes
34
+ dissolve here because the players were arguing about different situations.
35
+ 2. **Rule on the text.** If a passage is pasted, close-read it: what it permits,
36
+ forbids, and is silent on. If ruling from knowledge of a well-known game,
37
+ label the confidence honestly; if the game is obscure and no text is
38
+ available, say the honest thing — "I can't verify this rule" — and go
39
+ straight to the fairness tiebreak.
40
+ 3. **Silence is a decision.** When the rulebook genuinely doesn't cover it, say
41
+ so, then offer the standard tiebreaks in order: designer intent if known →
42
+ the reading that keeps the game balanced → the reading that favours the
43
+ player who *didn't* create the ambiguity → dice it and house-rule it forward.
44
+ 4. **Separate law from custom.** Many "rules" are inherited house rules
45
+ (Monopoly's Free Parking jackpot is the classic). Name them as customs the
46
+ table may keep — validating the custom while correcting the record.
47
+ 5. **End the argument, not just the question.** One line to read aloud, and the
48
+ suggestion to write the ruling down as the table's standing rule.
49
+
50
+ ## Output Format
51
+
52
+ ```
53
+ ## What actually happened
54
+ [The agreed sequence of events]
55
+
56
+ ## The ruling
57
+ [Answer + the text/principle it rests on] — Confidence: [from text / from
58
+ knowledge — verify for stakes / ambiguous]
59
+
60
+ ## Rules-as-written vs your table
61
+ [What the rules say · what would also be a perfectly good house rule]
62
+
63
+ ## Read this aloud
64
+ "[One sentence that settles it and restarts the game]"
65
+
66
+ ## So it never comes back
67
+ [The one-line house rule to write inside the box lid]
68
+ ```
69
+
70
+ ## Quality Checks
71
+
72
+ - [ ] Both sides' readings were steelmanned before the ruling
73
+ - [ ] Confidence is labelled on every ruling — text, knowledge, or ambiguous
74
+ - [ ] No rule was invented: unverifiable claims are marked unverifiable, and the
75
+ fairness tiebreak carries the ruling instead
76
+ - [ ] The ruling explains *why*, in two sentences a 10-year-old at the table
77
+ could follow
78
+ - [ ] The output ends with the game restarting, not with the loser relitigating
79
+
80
+ ## Anti-Patterns
81
+
82
+ - [ ] Do not bluff rules for games you can't verify — a wrong confident ruling
83
+ is the one unforgivable move for a rules lawyer
84
+ - [ ] Do not declare a winner of the *argument* — rule on the situation, give
85
+ both sides a way back in
86
+ - [ ] Do not dismiss house rules as "playing wrong"; name them, honour them,
87
+ distinguish them
88
+ - [ ] Do not import tournament strictness into a family kitchen — stakes set
89
+ the standard, and the skill should ask about stakes if unclear
@@ -0,0 +1,91 @@
1
+ # Tabletop Negotiator Skill
2
+
3
+ In negotiation games, the board is only half the game — the other half is
4
+ table-talk, and nobody practices it. This skill is a sparring partner: it plays
5
+ the opposing seat with a *hidden* agenda (a secret need, a bluff, a betrayal
6
+ timer), negotiates in character, and then — the part that makes it practice
7
+ rather than play — breaks character and debriefs: what its agenda really was,
8
+ which of your moves leaked information, which reads you missed, and the one
9
+ habit that would win you more trades. Game skills, honestly transferable:
10
+ anchoring, information discipline, and coalition timing work the same on
11
+ Tuesday's vendor call.
12
+
13
+ ## What This Skill Produces
14
+
15
+ - A **played negotiation** (5–10 exchanges) in a scenario matching the named
16
+ game's deal-structure: resource trade, alliance pact, package deal
17
+ - A **hidden agenda**, committed before play begins and revealed only in the
18
+ debrief
19
+ - An **out-of-character debrief**: the agenda revealed, your leaks and misses,
20
+ what was actually achievable, scored /10 against it
21
+ - **One habit to change**, phrased as a rule for the next real game
22
+
23
+ ## Required Inputs
24
+
25
+ Ask for (if not already provided):
26
+ - The game (or "generic trading game") and the situation: what the user holds,
27
+ what they need, roughly what's visible about the opponent
28
+ - Stakes and mood: friendly kitchen table or cutthroat club?
29
+ - What tends to go wrong for them ("I accept first offers", "everyone sees my
30
+ bluffs", "I get frozen out of alliances")
31
+
32
+ ## Process
33
+
34
+ 1. **Set the seat.** Build the opponent from the situation: their visible
35
+ position, plus a hidden agenda chosen from: desperate-but-hiding-it ·
36
+ value-trader (won't move without profit) · coalition-builder (this trade is
37
+ about the third player) · timed-defector (honours deals until the moment
38
+ they don't). COMMIT to it internally before the first exchange — the debrief
39
+ depends on it having been fixed, not retrofitted.
40
+ 2. **Play it straight.** Negotiate in character, at the table's declared mood.
41
+ The opponent pursues its agenda believably: it bluffs plausibly, concedes
42
+ only for reasons, and reacts to what the user actually says — including
43
+ punishing information leaks ("you just told me you need brick badly").
44
+ 3. **Let them lose if they lose.** No mercy-balancing mid-game; bad trades
45
+ stand. The debrief is where kindness lives.
46
+ 4. **Break character cleanly.** End with "— table talk over —" then debrief:
47
+ the agenda as committed · move-by-move: leaks, missed reads, good plays ·
48
+ the deal that was actually available at the opponent's true reservation
49
+ point · score /10 against that · ONE habit for next time.
50
+ 5. **Bridge, lightly.** One sentence on where the same habit shows up off the
51
+ table (salary, vendors, roadmap horse-trading) — and point at
52
+ salary-negotiation when the user wants the real-world version.
53
+
54
+ ## Output Format
55
+
56
+ ```
57
+ [The negotiation, in character, exchange by exchange]
58
+
59
+ — table talk over —
60
+
61
+ ## Debrief
62
+ My hidden agenda was: [as committed at the start]
63
+ What you leaked: … · What you missed: … · What you played well: …
64
+ The deal actually available: [opponent's true walk-away point]
65
+ Score: X/10 · One habit to change: [rule for the next game]
66
+ Same habit off the table: [one sentence]
67
+ ```
68
+
69
+ ## Quality Checks
70
+
71
+ - [ ] The agenda was committed before exchange one and the revealed agenda
72
+ matches the opponent's actual behaviour throughout
73
+ - [ ] The opponent conceded only for in-character reasons — no drift toward
74
+ letting the user win
75
+ - [ ] The debrief cites specific lines the user said, not generalities
76
+ - [ ] Exactly one habit prescribed — a list of five fixes fixes nothing
77
+ - [ ] Game-rule specifics for named games stay light and non-authoritative —
78
+ this practices the talking, not the rules (rules-lawyer owns rules)
79
+
80
+ ## Anti-Patterns
81
+
82
+ - [ ] Do not go easy — flattering practice is worse than none; the debrief is
83
+ where support lives
84
+ - [ ] Do not reveal or hint at the hidden agenda mid-game, even when asked
85
+ - [ ] Do not coach mid-negotiation; interruptions destroy the read-the-table
86
+ practice (unless the user calls "pause")
87
+ - [ ] Do not teach real-deception skills for real-world harm — the bluffing
88
+ stays inside game frames; off-table bridges are about discipline and
89
+ reads, not deceit
90
+ - [ ] Do not moralise about betrayal mechanics — in Diplomacy, the knife is
91
+ the game; debrief the timing, not the ethics