noah-cursor 1.5.2 → 1.5.3

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.
package/README.md CHANGED
@@ -112,6 +112,7 @@ presets/
112
112
  - **skill** `larastan-fix` — run Larastan on Laravel, fix findings, verify no regressions
113
113
  - **skill** `nestjs-knip-fix` — run Knip on NestJS, fix unused code/deps, verify no regressions
114
114
  - **skill** `node-doctor-fix` — bundled node-doctor (Knip + package hygiene) for generic Node
115
+ - **skill** `generate-readme` — generate project README (stack, deps, setup guide)
115
116
  - **rule** `test`
116
117
 
117
118
  Add curated Noah assets under those folders and register them in `manifest.json`. Presets are supported by the CLI but none are published in this registry yet.
@@ -39,6 +39,12 @@
39
39
  "version": "1.0.0",
40
40
  "description": "Run bundled node-doctor (Knip + hygiene), fix findings, verify features still work",
41
41
  "tags": ["node", "knip", "doctor", "qa", "cli"]
42
+ },
43
+ {
44
+ "id": "generate-readme",
45
+ "version": "1.0.0",
46
+ "description": "Generate a project README with stack, deps, prerequisites, and setup guide",
47
+ "tags": ["docs", "readme", "documentation", "setup"]
42
48
  }
43
49
  ],
44
50
  "rules": [
@@ -0,0 +1,166 @@
1
+ ---
2
+ name: generate-readme
3
+ description: >-
4
+ Generates a project README with title, description, tech stack, dependencies,
5
+ prerequisites, installation, and setup guide from the real codebase. Use when
6
+ the user runs /generate-readme, asks for a project README, docs for setup, or
7
+ to rewrite/improve README.md.
8
+ disable-model-invocation: true
9
+ ---
10
+
11
+ # /generate-readme
12
+
13
+ Generate (or rewrite) a **project `README.md`** from the actual repository — not generic filler.
14
+
15
+ Infer title, description, tech stack, dependencies, prerequisites, and setup steps from real config and scripts. Prefer accuracy over marketing. Do not invent APIs, env vars, or commands that are not in the project.
16
+
17
+ ## Workflow
18
+
19
+ Copy this checklist and track progress:
20
+
21
+ ```
22
+ README Progress:
23
+ - [ ] 1. Inspect project identity and stack
24
+ - [ ] 2. Collect prerequisites, deps, and scripts
25
+ - [ ] 3. Draft README from the template
26
+ - [ ] 4. Write README.md (preserve intentional extras)
27
+ - [ ] 5. Sanity-check commands and report
28
+ ```
29
+
30
+ ### 1. Inspect project identity and stack
31
+
32
+ From the project root, gather facts (read only what exists):
33
+
34
+ | Source | Extract |
35
+ |--------|---------|
36
+ | `package.json` / `composer.json` / `pyproject.toml` / `go.mod` / `Cargo.toml` | name, description, version, scripts, engines, deps |
37
+ | `nest-cli.json`, `next.config.*`, `vite.config.*`, `angular.json`, `nuxt.config.*` | framework |
38
+ | `artisan`, `manage.py`, `Dockerfile`, `docker-compose*.yml` | runtime / services |
39
+ | `.env.example`, `.env.sample`, `*.env.example` | required env vars (names only — never real secrets) |
40
+ | existing `README.md` | keep badges, license links, or sections the user clearly wants |
41
+
42
+ Detect primary stack (examples): Node/TypeScript, NestJS, Next.js, React/Vite, Laravel/PHP, Python, Go, monorepo (list workspaces).
43
+
44
+ If the repo is empty or not a software project, stop and say so.
45
+
46
+ ### 2. Collect prerequisites, deps, and scripts
47
+
48
+ Document:
49
+
50
+ 1. **Prerequisites** — language/runtime versions (`engines`, `.nvmrc`, `.php-version`, `volta`, CI matrix), package managers, Docker/DB only if the project actually uses them.
51
+ 2. **Dependencies** — summarize from lock/manifests: runtime vs dev; group by role (framework, DB, auth, UI). Do not dump every transitive package.
52
+ 3. **Install / setup commands** — copy exact scripts from the package manager files (`npm ci`, `composer install`, `php artisan key:generate`, etc.). Prefer the package manager the repo already uses (lockfile wins: `pnpm-lock.yaml` → pnpm, `yarn.lock` → yarn, `bun.lock*` → bun, else npm / composer).
53
+ 4. **Run / test / build** — from scripts: `dev`/`start`, `build`, `test`, `lint`.
54
+ 5. **Optional** — migrations, seeders, queue workers, Storybook — only if present.
55
+
56
+ Never paste secrets from `.env`. Only document variable **names** from examples.
57
+
58
+ ### 3. Draft README from the template
59
+
60
+ Use this structure unless the user asks for a different outline. Omit sections that do not apply (do not leave empty stubs).
61
+
62
+ ```markdown
63
+ # <Project Title>
64
+
65
+ <One-paragraph description: what it is and who it is for.>
66
+
67
+ ## Tech stack
68
+
69
+ - <Language / runtime>
70
+ - <Framework(s)>
71
+ - <Key libraries / services>
72
+
73
+ ## Prerequisites
74
+
75
+ - <Tool> <version constraint if known>
76
+ - …
77
+
78
+ ## Dependencies
79
+
80
+ ### Runtime
81
+ - …
82
+
83
+ ### Development
84
+ - …
85
+
86
+ ## Installation
87
+
88
+ \`\`\`bash
89
+ # clone (if public URL known)
90
+ git clone <url>
91
+ cd <dir>
92
+
93
+ # install
94
+ <package-manager install>
95
+ \`\`\`
96
+
97
+ ## Setup
98
+
99
+ 1. Copy env example: `cp .env.example .env`
100
+ 2. <configure env vars — list names>
101
+ 3. <migrate / generate keys / link storage — only if applicable>
102
+
103
+ ## Usage
104
+
105
+ \`\`\`bash
106
+ <dev server command>
107
+ \`\`\`
108
+
109
+ | Command | Description |
110
+ |---------|-------------|
111
+ | `…` | … |
112
+
113
+ ## Project structure
114
+
115
+ \`\`\`text
116
+ <short tree of important top-level dirs only>
117
+ \`\`\`
118
+
119
+ ## Testing
120
+
121
+ \`\`\`bash
122
+ <test command>
123
+ \`\`\`
124
+
125
+ ## License
126
+
127
+ <from LICENSE / package.json, or omit if unknown>
128
+ ```
129
+
130
+ Rules:
131
+
132
+ - Title: human-readable (from package name or repo name); not a raw npm id unless that is the product name.
133
+ - Description: 1–3 sentences grounded in the codebase or existing README — no buzzword salad.
134
+ - Commands: fenced bash, copy-pasteable from repo root.
135
+ - Keep tone direct and concise (same bar as good open-source READMEs).
136
+ - Absolute image URLs only if the user wants a banner and a public host exists; do not break private-repo badges.
137
+
138
+ ### 4. Write README.md
139
+
140
+ - Default path: `README.md` at repo root.
141
+ - If `README.md` already exists: **replace** with the generated doc unless the user asked to “update” or “append” — then merge carefully and keep custom sections (Changelog, Contributing, Security) when they look intentional.
142
+ - Do not commit or push unless the user asks.
143
+ - Do not delete `LICENSE` or other docs.
144
+
145
+ ### 5. Sanity-check and report
146
+
147
+ Confirm every command in the README matches a real script or documented binary. Fix mismatches before finishing.
148
+
149
+ Report:
150
+
151
+ ```markdown
152
+ ## README generated
153
+
154
+ - Path: README.md
155
+ - Stack detected: <…>
156
+ - Sections included: <list>
157
+ - Skipped (N/A): <list>
158
+ - Follow-ups: <missing .env.example, unclear start script, etc.>
159
+ ```
160
+
161
+ ## Safety
162
+
163
+ - Never invent install steps for tools the project does not use.
164
+ - Never commit `.env` or secrets.
165
+ - Never overwrite a README with placeholder lorem ipsum.
166
+ - If multiple apps exist in a monorepo, either document the root workspace clearly or ask which package to document first (default: root + note workspaces).
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "noah-cursor",
3
- "version": "1.5.2",
3
+ "version": "1.5.3",
4
4
  "description": "Install Noah's reusable Cursor assets (Skills, Rules, Prompts, MCP configs, Presets)",
5
5
  "type": "module",
6
6
  "bin": {