@open-product-primer/cli 0.2.0 → 0.3.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.
@@ -74,6 +74,16 @@ function installAgentSkills(agent, projectRoot) {
74
74
  (0, scaffold_1.writeFile)(path.join(cmdsDir, filename), content);
75
75
  console.log(chalk_1.default.green('✓') + ` .claude/commands/oprim/${filename}`);
76
76
  }
77
+ // Tombstone cleanup: remove command wrappers deleted in v0.2.0 (bet/criteria/pdr/review
78
+ // became skills-only). Safe to remove this block once the user base has migrated past v0.2.0.
79
+ const tombstones = ['bet.md', 'criteria.md', 'pdr.md', 'review.md'];
80
+ for (const filename of tombstones) {
81
+ const filepath = path.join(cmdsDir, filename);
82
+ if (fs.existsSync(filepath)) {
83
+ fs.unlinkSync(filepath);
84
+ console.log(chalk_1.default.dim(` removed legacy command .claude/commands/oprim/${filename}`));
85
+ }
86
+ }
77
87
  if (dirCreated) {
78
88
  console.log(chalk_1.default.dim(' .claude/ created — Claude Code will discover these files automatically.'));
79
89
  }
@@ -107,10 +117,6 @@ exports.CLAUDE_SKILLS = {
107
117
  exports.CLAUDE_COMMANDS = {
108
118
  'promote.md': claudeWrapper('OPRIM: Promote', 'Promote a prioritized bet to an OpenSpec change', promoteContent()),
109
119
  'sequence.md': claudeWrapper('OPRIM: Sequence', 'Validate and update the primer sequencing board', sequenceContent()),
110
- 'pdr.md': claudeWrapper('OPRIM: PDR', 'Create a new Product Decision Record with auto-assigned ID', 'Use the Skill tool to invoke the `oprim-pdr` skill.'),
111
- 'bet.md': claudeWrapper('OPRIM: Bet', 'Create a new bet decision and register it on the sequencing board', 'Use the Skill tool to invoke the `oprim-bet` skill.'),
112
- 'criteria.md': claudeWrapper('OPRIM: Criteria', 'Create or append to a criteria.yaml contract for a bet', 'Use the Skill tool to invoke the `oprim-criteria` skill.'),
113
- 'review.md': claudeWrapper('OPRIM: Review', "Create a KPI review artifact pre-filled from a bet's criteria contract", 'Use the Skill tool to invoke the `oprim-review` skill.'),
114
120
  };
115
121
  // ─── Cursor skill playbooks ───────────────────────────────────────────────────
116
122
  exports.CURSOR_SKILLS = {
@@ -293,7 +299,7 @@ Create or append to \`oprim/bets/BET-NNN/criteria.yaml\`.
293
299
  If not provided, ask: "Which bet are you adding criteria for? (e.g. BET-042)"
294
300
 
295
301
  ### 2. Verify bet exists
296
- If \`oprim/bets/BET-NNN/\` not found: report and stop — advise \`/oprim:bet\` first.
302
+ If \`oprim/bets/BET-NNN/\` not found: report and stop — advise using the \`oprim-bet\` skill first.
297
303
 
298
304
  ### 3. Gather metric details
299
305
  Ask: metric ID (snake_case), metric name, baseline (numeric), target (numeric), timeframe, launch date (YYYY-MM-DD or TBD), segment (optional).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@open-product-primer/cli",
3
- "version": "0.2.0",
3
+ "version": "0.3.0",
4
4
  "description": "Open Product Primer CLI — product decisions, sequencing, and KPI tracking for repositories",
5
5
  "keywords": [
6
6
  "product",