@beignet/cli 0.0.20 → 0.0.21
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/CHANGELOG.md +8 -0
- package/README.md +7 -0
- package/dist/templates/agents.d.ts.map +1 -1
- package/dist/templates/agents.js +30 -0
- package/dist/templates/agents.js.map +1 -1
- package/dist/templates/base.d.ts.map +1 -1
- package/dist/templates/base.js +30 -0
- package/dist/templates/base.js.map +1 -1
- package/package.json +5 -3
- package/skills/app-structure/SKILL.md +136 -0
- package/src/templates/agents.ts +31 -0
- package/src/templates/base.ts +34 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# @beignet/cli
|
|
2
2
|
|
|
3
|
+
## 0.0.21
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- Ship TanStack Intent agent skills with Beignet packages and scaffold generated apps with Intent skill-loading guidance.
|
|
8
|
+
- Updated dependencies
|
|
9
|
+
- @beignet/core@0.0.21
|
|
10
|
+
|
|
3
11
|
## 0.0.20
|
|
4
12
|
|
|
5
13
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -141,6 +141,13 @@ Open `http://localhost:3000` for the starter UI. The generated homepage links
|
|
|
141
141
|
to the todo feature, health check, OpenAPI document, devtools, and Beignet
|
|
142
142
|
docs.
|
|
143
143
|
|
|
144
|
+
Generated apps also trust Beignet's package-shipped TanStack Intent skills via
|
|
145
|
+
`package.json#intent.skills`. Run `bunx @tanstack/intent@latest install` (or
|
|
146
|
+
the matching runner for your package manager) to add Intent's managed guidance
|
|
147
|
+
block, then load matching skills such as `@beignet/core#app-architecture`,
|
|
148
|
+
`@beignet/next#routes-server`, `@beignet/react-query#client`, and
|
|
149
|
+
`@beignet/cli#app-structure` before substantial Beignet changes.
|
|
150
|
+
|
|
144
151
|
Inspect the app, then generate the next feature:
|
|
145
152
|
|
|
146
153
|
```bash
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/templates/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAExE;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"agents.d.ts","sourceRoot":"","sources":["../../src/templates/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAExE;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAiHrD;AAeD;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,eAAe,GAAG,MAAM,CASrD"}
|
package/dist/templates/agents.js
CHANGED
|
@@ -19,6 +19,10 @@ export function agentsMd(ctx) {
|
|
|
19
19
|
const typecheck = ctx.packageManager === "npm"
|
|
20
20
|
? "npm run typecheck"
|
|
21
21
|
: `${ctx.packageManager} run typecheck`;
|
|
22
|
+
const intent = intentRunner(ctx);
|
|
23
|
+
const specificSkills = ctx.api
|
|
24
|
+
? "`@beignet/next#routes-server` or `@beignet/cli#app-structure`"
|
|
25
|
+
: "`@beignet/next#routes-server`, `@beignet/react-query#client`, or `@beignet/cli#app-structure`";
|
|
22
26
|
return `# ${ctx.name} — agent guide
|
|
23
27
|
|
|
24
28
|
This is a Beignet contract-first app. Full framework docs live at
|
|
@@ -70,6 +74,20 @@ ${typecheck}
|
|
|
70
74
|
\`${lint}\` runs Biome's code lint. Use \`${format}\` to apply formatting.
|
|
71
75
|
\`${cli} lint\` is Beignet's dependency-direction lint.
|
|
72
76
|
|
|
77
|
+
## Package skills
|
|
78
|
+
|
|
79
|
+
This app trusts Beignet's package-shipped agent skills through
|
|
80
|
+
\`package.json#intent.skills\`. Before substantial Beignet changes, run:
|
|
81
|
+
|
|
82
|
+
\`\`\`bash
|
|
83
|
+
${intent} list
|
|
84
|
+
${intent} load @beignet/core#app-architecture
|
|
85
|
+
\`\`\`
|
|
86
|
+
|
|
87
|
+
Load more specific skills when they match the task, for example ${specificSkills}.
|
|
88
|
+
Run \`${intent} install\` if this repository does not yet have Intent's managed
|
|
89
|
+
skill-loading block.
|
|
90
|
+
|
|
73
91
|
## Placement rules
|
|
74
92
|
|
|
75
93
|
- Feature artifacts live under \`features/<feature>/\`, with tests in
|
|
@@ -96,6 +114,18 @@ structured tools named exactly: \`routes\`, \`doctor\`, \`doctor_fix\`,
|
|
|
96
114
|
command from the app root; use \`${cli} mcp\` only for terminal debugging.
|
|
97
115
|
`;
|
|
98
116
|
}
|
|
117
|
+
function intentRunner(ctx) {
|
|
118
|
+
switch (ctx.packageManager) {
|
|
119
|
+
case "npm":
|
|
120
|
+
return "npx @tanstack/intent@latest";
|
|
121
|
+
case "pnpm":
|
|
122
|
+
return "pnpm dlx @tanstack/intent@latest";
|
|
123
|
+
case "yarn":
|
|
124
|
+
return "yarn dlx @tanstack/intent@latest";
|
|
125
|
+
default:
|
|
126
|
+
return "bunx @tanstack/intent@latest";
|
|
127
|
+
}
|
|
128
|
+
}
|
|
99
129
|
/**
|
|
100
130
|
* .mcp.json registers the `beignet mcp` stdio server for MCP-aware clients.
|
|
101
131
|
* The runner must not print banners on stdout, which corrupts JSON-RPC, so
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/templates/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,aAAa,EAAwB,MAAM,aAAa,CAAC;AAExE;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAoB;IAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,MAAM,GACV,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,aAAa,CAAC;IACzC,MAAM,SAAS,GACb,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/templates/agents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,aAAa,EAAwB,MAAM,aAAa,CAAC;AAExE;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CAAC,GAAoB;IAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAC/B,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,MAAM,GACV,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,aAAa,CAAC;IACzC,MAAM,SAAS,GACb,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,gBAAgB,CAAC;IAC5C,MAAM,MAAM,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IACjC,MAAM,cAAc,GAAG,GAAG,CAAC,GAAG;QAC5B,CAAC,CAAC,+DAA+D;QACjE,CAAC,CAAC,+FAA+F,CAAC;IAEpG,OAAO,KAAK,GAAG,CAAC,IAAI;;;;;;;;;;;;;;;;;;;;;;mCAsBa,GAAG,oBAAoB,GAAG;IACzD,GAAG,uBAAuB,GAAG,mBAAmB,GAAG;IACnD,GAAG;IACH,GAAG,2CAA2C,GAAG;;;;;;IAMjD,GAAG;kDAC2C,GAAG;;IAEjD,GAAG,yBAAyB,GAAG;;;;;;;EAOjC,IAAI;EACJ,GAAG;EACH,GAAG;EACH,IAAI;EACJ,SAAS;;;IAGP,IAAI,oCAAoC,MAAM;IAC9C,GAAG;;;;;;;;EAQL,MAAM;EACN,MAAM;;;kEAG0D,cAAc;QACxE,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;mCA0BqB,GAAG;CACrC,CAAC;AACF,CAAC;AAED,SAAS,YAAY,CAAC,GAAoB;IACxC,QAAQ,GAAG,CAAC,cAAc,EAAE,CAAC;QAC3B,KAAK,KAAK;YACR,OAAO,6BAA6B,CAAC;QACvC,KAAK,MAAM;YACT,OAAO,kCAAkC,CAAC;QAC5C,KAAK,MAAM;YACT,OAAO,kCAAkC,CAAC;QAC5C;YACE,OAAO,8BAA8B,CAAC;IAC1C,CAAC;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,OAAO,CAAC,IAAqB;IAC3C,OAAO,IAAI,CAAC;QACV,UAAU,EAAE;YACV,OAAO,EAAE;gBACP,OAAO,EAAE,6BAA6B;gBACtC,IAAI,EAAE,CAAC,KAAK,CAAC;aACd;SACF;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/templates/base.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAGrB,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/templates/base.ts"],"names":[],"mappings":"AAEA,OAAO,EAML,KAAK,eAAe,EACrB,MAAM,aAAa,CAAC;AAGrB,wBAAgB,WAAW,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CA0GxD;AAkBD,wBAAgB,MAAM,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAkMnD;AAeD,wBAAgB,eAAe,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CAiD5D;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,eAAe,GAAG,MAAM,CA+DvD;AAED,QAAA,MAAM,KAAK;;;;;;CAqFV,CAAC;AAEF,OAAO,EAAE,KAAK,IAAI,SAAS,EAAE,CAAC"}
|
package/dist/templates/base.js
CHANGED
|
@@ -91,10 +91,20 @@ export function packageJson(ctx) {
|
|
|
91
91
|
private: true,
|
|
92
92
|
type: "module",
|
|
93
93
|
scripts,
|
|
94
|
+
intent: {
|
|
95
|
+
skills: intentSkillPackages(ctx),
|
|
96
|
+
},
|
|
94
97
|
dependencies: sortRecord(dependencies),
|
|
95
98
|
devDependencies: sortRecord(devDependencies),
|
|
96
99
|
});
|
|
97
100
|
}
|
|
101
|
+
function intentSkillPackages(ctx) {
|
|
102
|
+
const packages = ["@beignet/core", "@beignet/next", "@beignet/cli"];
|
|
103
|
+
if (!ctx.api) {
|
|
104
|
+
packages.push("@beignet/react-query");
|
|
105
|
+
}
|
|
106
|
+
return packages;
|
|
107
|
+
}
|
|
98
108
|
function sortRecord(record) {
|
|
99
109
|
return Object.fromEntries(Object.entries(record).sort(([left], [right]) => left.localeCompare(right)));
|
|
100
110
|
}
|
|
@@ -194,6 +204,14 @@ ${typecheck}
|
|
|
194
204
|
\`routes\` shows the contracts Beignet can inspect. \`${cli} lint\` checks dependency direction. \`doctor\` catches route, OpenAPI, and resource drift.
|
|
195
205
|
\`${lint}\` runs Biome over the starter; use \`${format}\` to apply formatting.
|
|
196
206
|
${testingNotes}
|
|
207
|
+
## Coding agents
|
|
208
|
+
|
|
209
|
+
This app trusts Beignet package skills through \`package.json#intent.skills\`.
|
|
210
|
+
Run \`${intentRunner(ctx)} install\` to add Intent's managed skill-loading block
|
|
211
|
+
to your agent config, then load matching package skills before substantial
|
|
212
|
+
Beignet changes. The generated \`AGENTS.md\` and \`CLAUDE.md\` stay short and
|
|
213
|
+
point agents at app-local conventions, generators, validation, and MCP tools.
|
|
214
|
+
|
|
197
215
|
## Build for production
|
|
198
216
|
|
|
199
217
|
\`\`\`bash
|
|
@@ -263,6 +281,18 @@ ${shellMap}
|
|
|
263
281
|
- Review the starter authorization policy before exposing user-owned data.
|
|
264
282
|
${ctx.integrations.length > 0 ? "\nSee `docs/integrations.md` for setup notes.\n" : ""}`;
|
|
265
283
|
}
|
|
284
|
+
function intentRunner(ctx) {
|
|
285
|
+
switch (ctx.packageManager) {
|
|
286
|
+
case "npm":
|
|
287
|
+
return "npx @tanstack/intent@latest";
|
|
288
|
+
case "pnpm":
|
|
289
|
+
return "pnpm dlx @tanstack/intent@latest";
|
|
290
|
+
case "yarn":
|
|
291
|
+
return "yarn dlx @tanstack/intent@latest";
|
|
292
|
+
default:
|
|
293
|
+
return "bunx @tanstack/intent@latest";
|
|
294
|
+
}
|
|
295
|
+
}
|
|
266
296
|
export function integrationsDoc(ctx) {
|
|
267
297
|
const lines = [
|
|
268
298
|
"# Integrations",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/templates/base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACxE,OAAO,EACL,gBAAgB,EAChB,cAAc,EACd,eAAe,EACf,IAAI,EACJ,aAAa,GAEd,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAErE,MAAM,UAAU,WAAW,CAAC,GAAoB;IAC9C,MAAM,YAAY,GAA2B;QAC3C,eAAe,EAAE,GAAG,CAAC,cAAc;QACnC,mBAAmB,EAAE,GAAG,CAAC,cAAc;QACvC,eAAe,EAAE,GAAG,CAAC,cAAc;QACnC,oCAAoC,EAAE,GAAG,CAAC,cAAc;QACxD,8BAA8B,EAAE,GAAG,CAAC,cAAc;QAClD,+BAA+B,EAAE,GAAG,CAAC,cAAc;QACnD,aAAa,EAAE,gBAAgB,CAAC,UAAU;QAC1C,aAAa,EAAE,gBAAgB,CAAC,UAAU;QAC1C,IAAI,EAAE,gBAAgB,CAAC,IAAI;QAC3B,IAAI,EAAE,gBAAgB,CAAC,IAAI;QAC3B,KAAK,EAAE,gBAAgB,CAAC,KAAK;QAC7B,WAAW,EAAE,gBAAgB,CAAC,QAAQ;QACtC,GAAG,EAAE,gBAAgB,CAAC,GAAG;KAC1B,CAAC;IAEF,0CAA0C;IAC1C,QAAQ,GAAG,CAAC,QAAQ,EAAE,CAAC;QACrB,KAAK,UAAU;YACb,YAAY,CAAC,EAAE,GAAG,gBAAgB,CAAC,EAAE,CAAC;YACtC,MAAM;QACR,KAAK,OAAO;YACV,YAAY,CAAC,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC;YAC9C,MAAM;QACR;YACE,YAAY,CAAC,gBAAgB,CAAC,GAAG,gBAAgB,CAAC,YAAY,CAAC;YAC/D,MAAM;IACV,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACb,YAAY,CAAC,sBAAsB,CAAC,GAAG,GAAG,CAAC,cAAc,CAAC;QAC1D,YAAY,CAAC,0BAA0B,CAAC,GAAG,GAAG,CAAC,cAAc,CAAC;QAC9D,YAAY,CAAC,qBAAqB,CAAC,GAAG,gBAAgB,CAAC,iBAAiB,CAAC;QACzE,YAAY,CAAC,uBAAuB,CAAC,GAAG,gBAAgB,CAAC,kBAAkB,CAAC;QAC5E,YAAY,CAAC,iBAAiB,CAAC,GAAG,gBAAgB,CAAC,aAAa,CAAC;QAEjE,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACjE,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAC/B,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAChE,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAC/B,CAAC;IACH,CAAC;IAED,KAAK,MAAM,WAAW,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAC1C,eAAe,CAAC,WAAW,CAAC,CAC7B,EAAE,CAAC;YACF,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,IAAI,GAAG,CAAC,cAAc,CAAC;QACrD,CAAC;IACH,CAAC;IAED,MAAM,eAAe,GAA2B;QAC9C,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,gBAAgB,EAAE,gBAAgB,CAAC,KAAK;QACxC,YAAY,EAAE,gBAAgB,CAAC,QAAQ;QACvC,aAAa,EAAE,gBAAgB,CAAC,SAAS;QACzC,cAAc,EAAE,gBAAgB,CAAC,UAAU;QAC3C,kBAAkB,EAAE,gBAAgB,CAAC,aAAa;QAClD,aAAa,EAAE,gBAAgB,CAAC,UAAU;QAC1C,UAAU,EAAE,gBAAgB,CAAC,UAAU;KACxC,CAAC;IAEF,IAAI,GAAG,CAAC,QAAQ,KAAK,UAAU,EAAE,CAAC;QAChC,mEAAmE;QACnE,eAAe,CAAC,sBAAsB,CAAC,GAAG,gBAAgB,CAAC,MAAM,CAAC;QAClE,eAAe,CAAC,WAAW,CAAC,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAC1D,CAAC;IAED,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC;QACb,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,EAAE,CAAC;YACpE,eAAe,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAClC,CAAC;QACD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,EAAE,CAAC;YACnE,eAAe,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC;QAClC,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAA2B;QACtC,OAAO,EAAE,SAAS;QAClB,GAAG,EAAE,UAAU;QACf,KAAK,EAAE,YAAY;QACnB,KAAK,EAAE,YAAY;QACnB,IAAI,EAAE,cAAc;QACpB,MAAM,EAAE,wBAAwB;QAChC,IAAI,EAAE,UAAU;QAChB,SAAS,EAAE,cAAc;QACzB,aAAa,EAAE,sBAAsB;QACrC,YAAY,EAAE,qBAAqB;QACnC,UAAU,EAAE,uBAAuB;KACpC,CAAC;IAEF,OAAO,IAAI,CAAC;QACV,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,OAAO,EAAE,OAAO;QAChB,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,QAAQ;QACd,OAAO;QACP,YAAY,EAAE,UAAU,CAAC,YAAY,CAAC;QACtC,eAAe,EAAE,UAAU,CAAC,eAAe,CAAC;KAC7C,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,MAA8B;IAChD,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAC5E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,MAAM,CAAC,GAAoB;IACzC,MAAM,OAAO,GAAG,GAAG,GAAG,CAAC,cAAc,UAAU,CAAC;IAChD,MAAM,GAAG,GACP,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,aAAa;QACf,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,UAAU,CAAC;IACtC,MAAM,KAAK,GACT,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,YAAY,CAAC;IACxC,MAAM,KAAK,GACT,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,YAAY,CAAC;IACxC,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,IAAI,GACR,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,cAAc;QAChB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,WAAW,CAAC;IACvC,MAAM,MAAM,GACV,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,aAAa,CAAC;IACzC,MAAM,SAAS,GACb,GAAG,CAAC,cAAc,KAAK,KAAK;QAC1B,CAAC,CAAC,mBAAmB;QACrB,CAAC,CAAC,GAAG,GAAG,CAAC,cAAc,gBAAgB,CAAC;IAC5C,MAAM,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;IAE/B,MAAM,SAAS,GAAG,GAAG,CAAC,GAAG;QACvB,CAAC,CAAC,8HAA8H;QAChI,CAAC,CAAC,4HAA4H,CAAC;IAEjI,MAAM,QAAQ,GAAG,GAAG,CAAC,GAAG;QACtB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;;;;CAIL,CAAC;IAEA,MAAM,aAAa,GACjB,GAAG,CAAC,QAAQ,KAAK,QAAQ;QACvB,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC;;;EAGN,oBAAoB,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,IAAI,CAAC;;;sDAGQ,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,uBAAuB,GAAG,CAAC,QAAQ,KAAK,UAAU,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,cAAc;;CAE9L,CAAC;IAEA,MAAM,YAAY,GAChB,GAAG,CAAC,QAAQ,KAAK,UAAU;QACzB,CAAC,CAAC;mGAC2F,IAAI;CACtG;QACK,CAAC,CAAC,GAAG,CAAC,QAAQ,KAAK,OAAO;YACxB,CAAC,CAAC;;CAET;YACO,CAAC,CAAC,EAAE,CAAC;IAEX,OAAO,KAAK,GAAG,CAAC,IAAI;;;;;;;EAOpB,OAAO;;;;EAIP,aAAa;;;EAGb,GAAG;;;kJAG6I,GAAG,wBAAwB,GAAG;;;;;EAK9K,GAAG;;;EAGH,SAAS;;;;;;EAMT,GAAG;EACH,IAAI;EACJ,GAAG;EACH,GAAG;EACH,IAAI;EACJ,SAAS;;;wDAG6C,GAAG;IACvD,IAAI,yCAAyC,MAAM;EACrD,YAAY;;;;
|
|
1
|
+
{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/templates/base.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@beignet/cli",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.21",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "CLI for creating and maintaining Beignet apps.",
|
|
6
6
|
"main": "./dist/lib.js",
|
|
@@ -24,6 +24,7 @@
|
|
|
24
24
|
"!src/**/*.test.ts",
|
|
25
25
|
"!src/**/*.test.tsx",
|
|
26
26
|
"!src/**/*.test-d.ts",
|
|
27
|
+
"skills",
|
|
27
28
|
"README.md",
|
|
28
29
|
"CHANGELOG.md"
|
|
29
30
|
],
|
|
@@ -42,7 +43,8 @@
|
|
|
42
43
|
"typescript",
|
|
43
44
|
"cli",
|
|
44
45
|
"scaffold",
|
|
45
|
-
"nextjs"
|
|
46
|
+
"nextjs",
|
|
47
|
+
"tanstack-intent"
|
|
46
48
|
],
|
|
47
49
|
"license": "MIT",
|
|
48
50
|
"repository": {
|
|
@@ -66,7 +68,7 @@
|
|
|
66
68
|
"typescript": "^5.3.0"
|
|
67
69
|
},
|
|
68
70
|
"dependencies": {
|
|
69
|
-
"@beignet/core": "^0.0.
|
|
71
|
+
"@beignet/core": "^0.0.21",
|
|
70
72
|
"@clack/prompts": "^1.5.1",
|
|
71
73
|
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
72
74
|
"@stricli/core": "^1.2.7",
|
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: app-structure
|
|
3
|
+
description: "Maintain Beignet app structure with @beignet/cli: create starter output, make generators, beignet.config paths, routes inspection, lint dependency boundaries, doctor drift checks, MCP tools, generated AGENTS.md guidance, and generated-app validation. Use when scaffolding, generating, fixing, or reviewing a Beignet app's structure."
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Beignet CLI App Structure
|
|
7
|
+
|
|
8
|
+
Use this skill when working with Beignet apps through `@beignet/cli`. Prefer
|
|
9
|
+
generators and validation commands before hand-editing framework wiring.
|
|
10
|
+
|
|
11
|
+
## Starter Sources
|
|
12
|
+
|
|
13
|
+
Generated apps include:
|
|
14
|
+
|
|
15
|
+
- `AGENTS.md` and `CLAUDE.md` for local agent guidance
|
|
16
|
+
- `.mcp.json` for `beignet mcp`
|
|
17
|
+
- `beignet.config.*` only when paths are moved
|
|
18
|
+
- canonical folders for app routes, client setup, features, infra, ports,
|
|
19
|
+
server composition, and tests
|
|
20
|
+
|
|
21
|
+
Do not copy package skills into generated apps. Generated apps should load
|
|
22
|
+
package-shipped skills from installed `@beignet/*` dependencies when Intent is
|
|
23
|
+
available.
|
|
24
|
+
|
|
25
|
+
## Prefer Generators
|
|
26
|
+
|
|
27
|
+
Use:
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
beignet make feature projects
|
|
31
|
+
beignet make resource projects/project --auth --tenant
|
|
32
|
+
beignet make job billing/sync
|
|
33
|
+
beignet make schedule billing/nightly --cron "0 2 * * *"
|
|
34
|
+
beignet make task admin/backfill
|
|
35
|
+
beignet make upload issues/attachment
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
Generators place files under the owning feature, update central registries
|
|
39
|
+
when possible, and keep `doctor` clean.
|
|
40
|
+
|
|
41
|
+
## Explicit Registration
|
|
42
|
+
|
|
43
|
+
Hand-written files do not run until registered:
|
|
44
|
+
|
|
45
|
+
- feature route groups -> `server/routes.ts`
|
|
46
|
+
- schedules -> `server/schedules.ts`
|
|
47
|
+
- tasks -> `server/tasks.ts`
|
|
48
|
+
- outbox events/jobs -> `server/outbox.ts`
|
|
49
|
+
- listeners -> app listener registration
|
|
50
|
+
|
|
51
|
+
Run `beignet doctor --strict` after hand edits. Use `beignet doctor --fix` for
|
|
52
|
+
low-risk registry repair; listener drift remains manual.
|
|
53
|
+
|
|
54
|
+
## Path Config
|
|
55
|
+
|
|
56
|
+
`beignet.config.*` moves paths; it does not change architecture.
|
|
57
|
+
|
|
58
|
+
Common `src/` apps configure:
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
export default defineConfig({
|
|
62
|
+
framework: "next",
|
|
63
|
+
paths: {
|
|
64
|
+
appContext: "src/app-context.ts",
|
|
65
|
+
features: "src/features",
|
|
66
|
+
contracts: "src/features",
|
|
67
|
+
routes: "src/app/api",
|
|
68
|
+
server: "src/server/index.ts",
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
When `appContext` moves under `src/`, root client setup follows that source
|
|
74
|
+
root at `src/client/index.ts`.
|
|
75
|
+
|
|
76
|
+
## Lint And Doctor
|
|
77
|
+
|
|
78
|
+
`beignet lint` enforces dependency direction:
|
|
79
|
+
|
|
80
|
+
- domain and use cases must not import infra, routes, server, providers, React,
|
|
81
|
+
or client modules
|
|
82
|
+
- client-reachable modules must not import server-only code
|
|
83
|
+
- routes may import contracts, use cases, policies, and app context types, but
|
|
84
|
+
not concrete infra
|
|
85
|
+
|
|
86
|
+
`beignet doctor --strict` reports structure and registration drift:
|
|
87
|
+
|
|
88
|
+
- missing route group registration
|
|
89
|
+
- stale OpenAPI contract arrays
|
|
90
|
+
- provider packages installed but not registered
|
|
91
|
+
- provider env drift
|
|
92
|
+
- route-owned error catalog drift
|
|
93
|
+
- misplaced workflow artifacts
|
|
94
|
+
|
|
95
|
+
Fix structure or config instead of suppressing diagnostics.
|
|
96
|
+
|
|
97
|
+
## MCP Tools
|
|
98
|
+
|
|
99
|
+
Generated apps register:
|
|
100
|
+
|
|
101
|
+
```json
|
|
102
|
+
{
|
|
103
|
+
"mcpServers": {
|
|
104
|
+
"beignet": {
|
|
105
|
+
"command": "./node_modules/.bin/beignet",
|
|
106
|
+
"args": ["mcp"]
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
The MCP server exposes `routes`, `doctor`, `doctor_fix`, `lint`, and `make`.
|
|
113
|
+
Run it from the app root so the local CLI version is used.
|
|
114
|
+
|
|
115
|
+
## Validation Loop
|
|
116
|
+
|
|
117
|
+
After structural changes:
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
beignet routes
|
|
121
|
+
beignet lint
|
|
122
|
+
beignet doctor --strict
|
|
123
|
+
bun run test
|
|
124
|
+
bun run typecheck
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
For generated app template changes inside the Beignet monorepo, also run:
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
cd packages/cli
|
|
131
|
+
bun run test
|
|
132
|
+
bun run lint
|
|
133
|
+
bun run build
|
|
134
|
+
cd ../..
|
|
135
|
+
bun run check:generated-app
|
|
136
|
+
```
|
package/src/templates/agents.ts
CHANGED
|
@@ -24,6 +24,10 @@ export function agentsMd(ctx: TemplateContext): string {
|
|
|
24
24
|
ctx.packageManager === "npm"
|
|
25
25
|
? "npm run typecheck"
|
|
26
26
|
: `${ctx.packageManager} run typecheck`;
|
|
27
|
+
const intent = intentRunner(ctx);
|
|
28
|
+
const specificSkills = ctx.api
|
|
29
|
+
? "`@beignet/next#routes-server` or `@beignet/cli#app-structure`"
|
|
30
|
+
: "`@beignet/next#routes-server`, `@beignet/react-query#client`, or `@beignet/cli#app-structure`";
|
|
27
31
|
|
|
28
32
|
return `# ${ctx.name} — agent guide
|
|
29
33
|
|
|
@@ -76,6 +80,20 @@ ${typecheck}
|
|
|
76
80
|
\`${lint}\` runs Biome's code lint. Use \`${format}\` to apply formatting.
|
|
77
81
|
\`${cli} lint\` is Beignet's dependency-direction lint.
|
|
78
82
|
|
|
83
|
+
## Package skills
|
|
84
|
+
|
|
85
|
+
This app trusts Beignet's package-shipped agent skills through
|
|
86
|
+
\`package.json#intent.skills\`. Before substantial Beignet changes, run:
|
|
87
|
+
|
|
88
|
+
\`\`\`bash
|
|
89
|
+
${intent} list
|
|
90
|
+
${intent} load @beignet/core#app-architecture
|
|
91
|
+
\`\`\`
|
|
92
|
+
|
|
93
|
+
Load more specific skills when they match the task, for example ${specificSkills}.
|
|
94
|
+
Run \`${intent} install\` if this repository does not yet have Intent's managed
|
|
95
|
+
skill-loading block.
|
|
96
|
+
|
|
79
97
|
## Placement rules
|
|
80
98
|
|
|
81
99
|
- Feature artifacts live under \`features/<feature>/\`, with tests in
|
|
@@ -103,6 +121,19 @@ command from the app root; use \`${cli} mcp\` only for terminal debugging.
|
|
|
103
121
|
`;
|
|
104
122
|
}
|
|
105
123
|
|
|
124
|
+
function intentRunner(ctx: TemplateContext): string {
|
|
125
|
+
switch (ctx.packageManager) {
|
|
126
|
+
case "npm":
|
|
127
|
+
return "npx @tanstack/intent@latest";
|
|
128
|
+
case "pnpm":
|
|
129
|
+
return "pnpm dlx @tanstack/intent@latest";
|
|
130
|
+
case "yarn":
|
|
131
|
+
return "yarn dlx @tanstack/intent@latest";
|
|
132
|
+
default:
|
|
133
|
+
return "bunx @tanstack/intent@latest";
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
|
|
106
137
|
/**
|
|
107
138
|
* .mcp.json registers the `beignet mcp` stdio server for MCP-aware clients.
|
|
108
139
|
* The runner must not print banners on stdout, which corrupts JSON-RPC, so
|
package/src/templates/base.ts
CHANGED
|
@@ -110,11 +110,24 @@ export function packageJson(ctx: TemplateContext): string {
|
|
|
110
110
|
private: true,
|
|
111
111
|
type: "module",
|
|
112
112
|
scripts,
|
|
113
|
+
intent: {
|
|
114
|
+
skills: intentSkillPackages(ctx),
|
|
115
|
+
},
|
|
113
116
|
dependencies: sortRecord(dependencies),
|
|
114
117
|
devDependencies: sortRecord(devDependencies),
|
|
115
118
|
});
|
|
116
119
|
}
|
|
117
120
|
|
|
121
|
+
function intentSkillPackages(ctx: TemplateContext): string[] {
|
|
122
|
+
const packages = ["@beignet/core", "@beignet/next", "@beignet/cli"];
|
|
123
|
+
|
|
124
|
+
if (!ctx.api) {
|
|
125
|
+
packages.push("@beignet/react-query");
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
return packages;
|
|
129
|
+
}
|
|
130
|
+
|
|
118
131
|
function sortRecord(record: Record<string, string>): Record<string, string> {
|
|
119
132
|
return Object.fromEntries(
|
|
120
133
|
Object.entries(record).sort(([left], [right]) => left.localeCompare(right)),
|
|
@@ -231,6 +244,14 @@ ${typecheck}
|
|
|
231
244
|
\`routes\` shows the contracts Beignet can inspect. \`${cli} lint\` checks dependency direction. \`doctor\` catches route, OpenAPI, and resource drift.
|
|
232
245
|
\`${lint}\` runs Biome over the starter; use \`${format}\` to apply formatting.
|
|
233
246
|
${testingNotes}
|
|
247
|
+
## Coding agents
|
|
248
|
+
|
|
249
|
+
This app trusts Beignet package skills through \`package.json#intent.skills\`.
|
|
250
|
+
Run \`${intentRunner(ctx)} install\` to add Intent's managed skill-loading block
|
|
251
|
+
to your agent config, then load matching package skills before substantial
|
|
252
|
+
Beignet changes. The generated \`AGENTS.md\` and \`CLAUDE.md\` stay short and
|
|
253
|
+
point agents at app-local conventions, generators, validation, and MCP tools.
|
|
254
|
+
|
|
234
255
|
## Build for production
|
|
235
256
|
|
|
236
257
|
\`\`\`bash
|
|
@@ -309,6 +330,19 @@ ${shellMap}
|
|
|
309
330
|
${ctx.integrations.length > 0 ? "\nSee `docs/integrations.md` for setup notes.\n" : ""}`;
|
|
310
331
|
}
|
|
311
332
|
|
|
333
|
+
function intentRunner(ctx: TemplateContext): string {
|
|
334
|
+
switch (ctx.packageManager) {
|
|
335
|
+
case "npm":
|
|
336
|
+
return "npx @tanstack/intent@latest";
|
|
337
|
+
case "pnpm":
|
|
338
|
+
return "pnpm dlx @tanstack/intent@latest";
|
|
339
|
+
case "yarn":
|
|
340
|
+
return "yarn dlx @tanstack/intent@latest";
|
|
341
|
+
default:
|
|
342
|
+
return "bunx @tanstack/intent@latest";
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
|
|
312
346
|
export function integrationsDoc(ctx: TemplateContext): string {
|
|
313
347
|
const lines = [
|
|
314
348
|
"# Integrations",
|