@lifeaitools/rdc-skills 0.25.5 → 0.25.10

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 (66) hide show
  1. package/.claude-plugin/plugin.json +1550 -1550
  2. package/.github/workflows/self-test.yml +34 -34
  3. package/CHANGELOG.md +319 -319
  4. package/MANIFEST.md +224 -224
  5. package/README.md +367 -367
  6. package/commands/build.md +181 -181
  7. package/commands/collab.md +180 -180
  8. package/commands/deploy.md +148 -148
  9. package/commands/fixit.md +150 -150
  10. package/commands/handoff.md +173 -173
  11. package/commands/overnight.md +220 -220
  12. package/commands/plan.md +158 -158
  13. package/commands/preplan.md +131 -131
  14. package/commands/prototype.md +145 -145
  15. package/commands/report.md +99 -99
  16. package/commands/review.md +120 -120
  17. package/commands/status.md +86 -86
  18. package/commands/workitems.md +127 -127
  19. package/git-sha.json +1 -1
  20. package/guides/agent-bootstrap.md +195 -195
  21. package/guides/agents/backend.md +102 -102
  22. package/guides/agents/content.md +94 -94
  23. package/guides/agents/cs2.md +56 -56
  24. package/guides/agents/data.md +86 -86
  25. package/guides/agents/design.md +77 -77
  26. package/guides/agents/frontend.md +91 -91
  27. package/guides/agents/infrastructure.md +81 -81
  28. package/guides/agents/setup.md +272 -272
  29. package/guides/agents/verify.md +119 -119
  30. package/guides/agents/viz.md +106 -106
  31. package/hooks/check-rdc-environment.js +378 -164
  32. package/hooks/lib/box-lock.js +207 -0
  33. package/package.json +1 -1
  34. package/scripts/install-rdc-skills.js +97 -8
  35. package/scripts/local-install-with-stop.sh +41 -0
  36. package/scripts/probe-box-lock.mjs +179 -0
  37. package/scripts/probe-installed-hooks.mjs +60 -0
  38. package/scripts/probe-lock-holders.mjs +36 -0
  39. package/scripts/self-test.mjs +1459 -1459
  40. package/scripts/validate-publish-manifests.js +502 -502
  41. package/skills/build/SKILL.md +578 -578
  42. package/skills/channel-formatter/SKILL.md +538 -538
  43. package/skills/collab/SKILL.md +239 -239
  44. package/skills/convert/SKILL.md +138 -138
  45. package/skills/deploy/SKILL.md +541 -541
  46. package/skills/design/SKILL.md +205 -205
  47. package/skills/env/SKILL.md +139 -139
  48. package/skills/fixit/SKILL.md +203 -203
  49. package/skills/handoff/SKILL.md +236 -236
  50. package/skills/housekeeping/SKILL.md +189 -189
  51. package/skills/onramp/SKILL.md +1459 -1459
  52. package/skills/overnight/SKILL.md +251 -251
  53. package/skills/plan/SKILL.md +345 -345
  54. package/skills/preplan/SKILL.md +90 -90
  55. package/skills/prototype/SKILL.md +150 -150
  56. package/skills/regen-media/SKILL.md +94 -94
  57. package/skills/release/SKILL.md +140 -140
  58. package/skills/report/SKILL.md +100 -100
  59. package/skills/review/SKILL.md +151 -151
  60. package/skills/self-test/SKILL.md +108 -108
  61. package/skills/status/SKILL.md +99 -99
  62. package/skills/tests/MATRIX.md +55 -55
  63. package/skills/tests/onramp.test.json +87 -87
  64. package/skills/tests/rdc-regen-media.test.json +29 -29
  65. package/skills/watch/SKILL.md +84 -84
  66. package/skills/workitems/SKILL.md +151 -151
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Read-only probe: which PM2 processes hold the global rdc-skills package dir?
4
+ *
5
+ * Mirrors processesHoldingPackage() in hooks/check-rdc-environment.js so the
6
+ * matcher can be verified WITHOUT running a real repair (which would stop the
7
+ * MCP and reinstall the package).
8
+ *
9
+ * `npm install -g` upgrades by renaming that directory; Windows refuses to rename
10
+ * a live process's cwd, which is the EBUSY that hard-blocked sessions.
11
+ */
12
+ import { execSync } from 'node:child_process';
13
+ import path from 'node:path';
14
+
15
+ const shell = (c) => execSync(c, { encoding: 'utf8', timeout: 15000 }).trim();
16
+ const norm = (p) => String(p || '').toLowerCase().replace(/\\/g, '/');
17
+
18
+ const root = shell('npm root -g');
19
+ const pkgDir = norm(path.join(root, '@lifeaitools', 'rdc-skills'));
20
+
21
+ const all = JSON.parse(shell('pm2 jlist'));
22
+ const holders = all.filter((p) => {
23
+ const cwd = norm(p?.pm2_env?.pm_cwd);
24
+ return cwd && (cwd === pkgDir || cwd.startsWith(`${pkgDir}/`));
25
+ });
26
+
27
+ console.log(`package dir : ${pkgDir}`);
28
+ console.log(`pm2 procs : ${all.length}`);
29
+ for (const p of holders) {
30
+ console.log(` HOLDS LOCK: ${p.name} status=${p.pm2_env.status} cwd=${norm(p.pm2_env.pm_cwd)}`);
31
+ }
32
+ console.log(
33
+ holders.length
34
+ ? `\nMATCHED ${holders.length} — these are stopped before npm -g, so EBUSY is avoided.`
35
+ : '\nNO MATCH — nothing holds the dir; npm -g would have been safe anyway.',
36
+ );