create-claude-rails 0.1.2 → 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.
Files changed (37) hide show
  1. package/README.md +3 -3
  2. package/lib/cli.js +103 -17
  3. package/lib/copy.js +16 -2
  4. package/lib/metadata.js +3 -2
  5. package/lib/reset.js +193 -0
  6. package/package.json +1 -1
  7. package/templates/EXTENSIONS.md +32 -32
  8. package/templates/README.md +3 -3
  9. package/templates/skills/{upgrade → cor-upgrade}/SKILL.md +23 -23
  10. package/templates/skills/{upgrade → cor-upgrade}/phases/apply.md +3 -3
  11. package/templates/skills/{upgrade → cor-upgrade}/phases/detect-current.md +14 -14
  12. package/templates/skills/{upgrade → cor-upgrade}/phases/diff-upstream.md +3 -3
  13. package/templates/skills/extract/SKILL.md +168 -0
  14. package/templates/skills/link/SKILL.md +52 -0
  15. package/templates/skills/onboard/SKILL.md +55 -22
  16. package/templates/skills/onboard/phases/detect-state.md +21 -39
  17. package/templates/skills/onboard/phases/generate-context.md +1 -1
  18. package/templates/skills/onboard/phases/interview.md +86 -72
  19. package/templates/skills/onboard/phases/modularity-menu.md +21 -18
  20. package/templates/skills/onboard/phases/options.md +98 -0
  21. package/templates/skills/onboard/phases/post-onboard-audit.md +20 -2
  22. package/templates/skills/onboard/phases/summary.md +1 -1
  23. package/templates/skills/onboard/phases/work-tracking.md +231 -0
  24. package/templates/skills/perspectives/_groups-template.yaml +1 -1
  25. package/templates/skills/perspectives/architecture/SKILL.md +275 -0
  26. package/templates/skills/perspectives/box-health/SKILL.md +8 -8
  27. package/templates/skills/perspectives/data-integrity/SKILL.md +2 -2
  28. package/templates/skills/perspectives/documentation/SKILL.md +4 -5
  29. package/templates/skills/perspectives/historian/SKILL.md +250 -0
  30. package/templates/skills/perspectives/process/SKILL.md +3 -3
  31. package/templates/skills/perspectives/skills-coverage/SKILL.md +294 -0
  32. package/templates/skills/perspectives/system-advocate/SKILL.md +191 -0
  33. package/templates/skills/perspectives/usability/SKILL.md +186 -0
  34. package/templates/skills/publish/SKILL.md +72 -0
  35. package/templates/skills/seed/phases/scan-signals.md +7 -3
  36. package/templates/skills/unlink/SKILL.md +35 -0
  37. /package/templates/skills/{upgrade → cor-upgrade}/phases/merge.md +0 -0
@@ -0,0 +1,72 @@
1
+ ---
2
+ name: publish
3
+ description: |
4
+ Publish a new version of Claude on Rails to npm. Analyzes changes since
5
+ last release, suggests a version bump (patch/minor/major), updates
6
+ package.json, commits, tags, and publishes. Use when: "publish",
7
+ "release", "ship it", "/publish".
8
+ ---
9
+
10
+ # /publish — Release to npm
11
+
12
+ ## Purpose
13
+
14
+ Handle the full publish flow for the `create-claude-rails` package:
15
+ analyze what changed, suggest a version, get confirmation, and ship.
16
+
17
+ This skill only runs from the CoR source repo (`package.json` has
18
+ `name: "create-claude-rails"`). If run elsewhere, say so and stop.
19
+
20
+ ## Workflow
21
+
22
+ ### 1. Analyze Changes
23
+
24
+ Run `git log` from the last version tag (e.g., `v0.2.0`) to HEAD.
25
+ Summarize what changed in plain language — group by category:
26
+
27
+ - **Breaking** — renames, removed features, changed file formats
28
+ - **Features** — new flags, new skills, new modules
29
+ - **Fixes** — bug fixes, UX improvements
30
+ - **Internal** — refactors, template updates that don't change behavior
31
+
32
+ ### 2. Suggest Version
33
+
34
+ Based on the changes:
35
+
36
+ - **Patch** (0.x.Y) — fixes only, no new features, no breaking changes
37
+ - **Minor** (0.X.0) — new features, backward-compatible
38
+ - **Major** (X.0.0) — breaking changes (renames, removed APIs, format changes)
39
+
40
+ Note: while pre-1.0, minor can include breaking changes per semver
41
+ convention. Call this out when recommending.
42
+
43
+ Present the suggestion with reasoning:
44
+
45
+ > "Since the last release (v0.2.0), there are N breaking changes
46
+ > (list them), N new features, and N fixes. I'd suggest **0.3.0**
47
+ > because [reason]. Want to go with that, or a different version?"
48
+
49
+ ### 3. Pre-Publish Checks
50
+
51
+ Before publishing, verify:
52
+
53
+ - `node -c lib/cli.js` passes (syntax check)
54
+ - Working tree is clean (no uncommitted changes) — if dirty, ask
55
+ whether to commit first
56
+ - Current branch is main
57
+ - `npm whoami` succeeds (logged in to npm)
58
+
59
+ ### 4. Publish
60
+
61
+ With user confirmation:
62
+
63
+ 1. Update `version` in `package.json`
64
+ 2. Commit: `Bump to <version>`
65
+ 3. Tag: `git tag v<version>`
66
+ 4. `npm publish`
67
+ 5. `git push && git push --tags`
68
+
69
+ ### 5. Post-Publish
70
+
71
+ - Update `system-status.md` if it exists
72
+ - Report the published version and npm URL
@@ -52,14 +52,18 @@ For each signal source, provide:
52
52
 
53
53
  | Signal | Suggested Perspective |
54
54
  |--------|----------------------|
55
- | React / Vue / Svelte in deps | accessibility, mobile-responsiveness |
56
- | UI framework (Mantine, MUI, Chakra, etc.) | framework-quality (project-specific) |
55
+ | React / Vue / Svelte in deps | usability, accessibility, mobile-responsiveness |
56
+ | UI framework (Mantine, MUI, Chakra, etc.) | usability, framework-quality (project-specific) |
57
57
  | SQLite / PostgreSQL / MySQL | data-integrity |
58
- | Docker / Railway / Fly.io / Vercel | deployment, security |
58
+ | Docker / Railway / Fly.io / Vercel | architecture, security |
59
59
  | Express / Fastify / Hono | security, performance |
60
60
  | Test framework (jest, vitest, mocha) | qa |
61
61
  | TypeScript | boundary-conditions |
62
62
  | CI/CD configs (.github/workflows, etc.) | process |
63
+ | Complex architecture (3+ services, monorepo) | architecture |
64
+ | Long-running project (6+ months of git history) | historian |
65
+ | Many skills (5+ in .claude/skills/) | skills-coverage |
66
+ | Features shipping regularly | system-advocate |
63
67
 
64
68
  These mappings are starting points, not prescriptions. A project may
65
69
  already cover a signal through an existing broader perspective (e.g.,
@@ -0,0 +1,35 @@
1
+ ---
2
+ name: unlink
3
+ description: |
4
+ Remove local development linking for Claude on Rails. Returns the
5
+ project to using the published npm version. Use when: "unlink",
6
+ "stop using local CoR", "use published version", "/unlink".
7
+ ---
8
+
9
+ # /unlink — Remove Local Development Link
10
+
11
+ ## Purpose
12
+
13
+ Disconnect from a local Claude on Rails checkout and return to using
14
+ the published npm version.
15
+
16
+ ## Context Detection
17
+
18
+ **CoR source repo** (`package.json` has `name: "create-claude-rails"`):
19
+ - Run `npm unlink` to remove the global registration
20
+ - Warn: "This will break the link for all consuming projects that depend
21
+ on it. They'll need to `npm unlink create-claude-rails` too, or
22
+ they'll get resolution errors."
23
+
24
+ **Any other project**:
25
+ - Run `npm unlink create-claude-rails`
26
+ - The project returns to using the published npm version
27
+ - Tell the user: "Unlinked. `npx create-claude-rails` will now pull
28
+ from npm instead of your local checkout."
29
+
30
+ ## When to Use
31
+
32
+ - Before testing against the published npm version
33
+ - When done with a local development cycle
34
+ - When the local CoR checkout is moving to a branch you don't want
35
+ consuming projects to track