create-agentic-starter 0.1.5 → 0.1.6
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/dist/index.js +71 -62
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,5 +1,56 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import{mkdir as
|
|
2
|
+
import{mkdir as E,rm as q,writeFile as I}from"fs/promises";import l from"path";import{readFile as R,writeFile as u}from"fs/promises";import b from"path";function g(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function A(e,t,o,r){let n=new RegExp(`${g(o)}[\\s\\S]*?${g(r)}\\n?`,"m");if(n.test(e))return e.replace(n,`${t}
|
|
3
|
+
`);let s=e.endsWith(`
|
|
4
|
+
`)?`
|
|
5
|
+
`:`
|
|
6
|
+
|
|
7
|
+
`;return`${e}${s}${t}
|
|
8
|
+
`}async function i(e,t,o,r,n){let s=b.join(e,t);try{let a=await R(s,"utf8"),j=A(a,o,r,n);await u(s,j,"utf8")}catch(a){if(a.code!=="ENOENT")throw a;await u(s,`${o}
|
|
9
|
+
`,"utf8")}}var f="AGENTS.md",h=".gitignore",c="<!-- from create-agentic-starter:agents:start -->",m="<!-- from create-agentic-starter:agents:end -->",d="# from create-agentic-starter:start",p="# from create-agentic-starter:end",w=`${c}
|
|
10
|
+
# Agentic Starter Guide
|
|
11
|
+
|
|
12
|
+
This project includes a reusable AI working area under \`.agentic/\` for project kick-off and pre-delivery documentation.
|
|
13
|
+
|
|
14
|
+
## What This Is For
|
|
15
|
+
|
|
16
|
+
Use this scaffold when you want an AI tool to:
|
|
17
|
+
|
|
18
|
+
- understand a project from files, notes, screenshots, and links
|
|
19
|
+
- maintain structured project memory
|
|
20
|
+
- generate markdown deliverables such as BRD, FRD, estimate, and proposal
|
|
21
|
+
|
|
22
|
+
## Folder Purpose
|
|
23
|
+
|
|
24
|
+
- \`.agentic/init.md\`: first prompt for every new AI session
|
|
25
|
+
- \`.agentic/context.md\`: shared rules and folder map
|
|
26
|
+
- \`.agentic/commands/\`: task-specific prompt files you reference in your AI tool
|
|
27
|
+
- \`.agentic/workspace/project/\`: raw project inputs such as screenshots, notes, requirement docs, and reference links
|
|
28
|
+
- \`.agentic/workspace/memory/\`: evolving AI-maintained project understanding
|
|
29
|
+
- \`.agentic/workspace/documents/\`: polished markdown deliverables
|
|
30
|
+
|
|
31
|
+
## How To Use It
|
|
32
|
+
|
|
33
|
+
1. Open your AI tool in this project.
|
|
34
|
+
2. Start every new session with \`@.agentic/init.md\`.
|
|
35
|
+
3. Follow the command sequence below.
|
|
36
|
+
|
|
37
|
+
## V1 Command Sequence
|
|
38
|
+
|
|
39
|
+
1. \`@.agentic/init.md\`
|
|
40
|
+
2. \`@.agentic/commands/project-requirements.md\`
|
|
41
|
+
3. \`@.agentic/commands/architecture.md\`
|
|
42
|
+
4. \`@.agentic/commands/create-brd.md\`
|
|
43
|
+
5. \`@.agentic/commands/create-frd.md\`
|
|
44
|
+
6. \`@.agentic/commands/create-estimate.md\`
|
|
45
|
+
7. \`@.agentic/commands/create-proposal.md\`
|
|
46
|
+
|
|
47
|
+
If your tool does not support \`@file\` references, paste the contents of the prompt file into a new chat manually.
|
|
48
|
+
${m}
|
|
49
|
+
`,k=`${d}
|
|
50
|
+
.agentic/workspace/documents/
|
|
51
|
+
.agentic/workspace/memory/
|
|
52
|
+
${p}
|
|
53
|
+
`;var y=[".agentic"],x=[".agentic",".agentic/commands",".agentic/workspace",".agentic/workspace/project",".agentic/workspace/memory",".agentic/workspace/documents"],v=()=>({".agentic/init.md":`# Init
|
|
3
54
|
|
|
4
55
|
Read \`@.agentic/context.md\` first.
|
|
5
56
|
|
|
@@ -39,7 +90,7 @@ You are starting a fresh AI session inside this project. Your job is to quickly
|
|
|
39
90
|
- available references such as screenshots, docs, notes, links, or file paths
|
|
40
91
|
- desired outputs
|
|
41
92
|
5. If enough context exists, give a short summary of the project and the most important missing pieces.
|
|
42
|
-
6. If the user mentions screenshots, notes, requirement docs, links, or file paths,
|
|
93
|
+
6. If the user mentions screenshots, notes, requirement docs, links, or file paths, move or organize them into \`.agentic/workspace/project/\` by default unless the user explicitly says not to.
|
|
43
94
|
7. After the first useful exchange, create or update:
|
|
44
95
|
- \`.agentic/workspace/memory/project-overview.md\`
|
|
45
96
|
- \`.agentic/workspace/memory/requirements.md\`
|
|
@@ -75,6 +126,8 @@ Use \`.agentic/workspace/project/\` for:
|
|
|
75
126
|
- links captured into markdown files
|
|
76
127
|
- user-supplied project references
|
|
77
128
|
|
|
129
|
+
If relevant project materials are found outside this folder, move or organize them into \`.agentic/workspace/project/\` by default. Only leave them in place if the user explicitly says not to move them.
|
|
130
|
+
|
|
78
131
|
### Memory
|
|
79
132
|
|
|
80
133
|
Use \`.agentic/workspace/memory/\` for:
|
|
@@ -98,8 +151,10 @@ Use \`.agentic/workspace/documents/\` for polished outputs:
|
|
|
98
151
|
|
|
99
152
|
1. Reuse and improve existing workspace files when they already exist.
|
|
100
153
|
2. Do not scan the whole repository unless the user explicitly asks.
|
|
101
|
-
3.
|
|
102
|
-
4.
|
|
154
|
+
3. If relevant project assets are outside \`.agentic/workspace/project/\`, move them into the workspace by default and then use the workspace copy.
|
|
155
|
+
4. Only avoid moving files when the user explicitly asks to keep them in place.
|
|
156
|
+
5. Ask only the minimum blocking questions required to continue.
|
|
157
|
+
6. Always end by telling the user the exact next command to run.
|
|
103
158
|
`,".agentic/commands/project-requirements.md":`# Project Requirements
|
|
104
159
|
|
|
105
160
|
Read:
|
|
@@ -117,7 +172,7 @@ Read:
|
|
|
117
172
|
3. Accept either:
|
|
118
173
|
- existing file paths already shared by the user, or
|
|
119
174
|
- fresh explanation typed in chat
|
|
120
|
-
4.
|
|
175
|
+
4. Move or organize project inputs into \`.agentic/workspace/project/\` by default unless the user explicitly says not to.
|
|
121
176
|
5. Organize and normalize the project context so the later architecture and document steps can rely on it.
|
|
122
177
|
6. Create or update:
|
|
123
178
|
- \`.agentic/workspace/memory/project-overview.md\`
|
|
@@ -147,7 +202,8 @@ Read:
|
|
|
147
202
|
3. Cover frontend, backend, data, integrations, authentication, deployment, and key risks when relevant.
|
|
148
203
|
4. Add a diagram description or mermaid diagram when supported.
|
|
149
204
|
5. Mention draw.io MCP only as an optional tool if available in the user's environment.
|
|
150
|
-
6.
|
|
205
|
+
6. If relevant screenshots, notes, or references are found outside \`.agentic/workspace/project/\`, move or organize them into the workspace by default unless the user explicitly says not to.
|
|
206
|
+
7. Ask only the minimum blocking questions.
|
|
151
207
|
|
|
152
208
|
When done, tell the user:
|
|
153
209
|
|
|
@@ -167,7 +223,8 @@ Read:
|
|
|
167
223
|
1. Create or update \`.agentic/workspace/documents/brd.md\`.
|
|
168
224
|
2. Produce a polished markdown Business Requirements Document.
|
|
169
225
|
3. Use confirmed facts first and clearly label assumptions where needed.
|
|
170
|
-
4. If
|
|
226
|
+
4. If relevant source material is outside \`.agentic/workspace/project/\`, move or organize it into the workspace by default unless the user explicitly says not to.
|
|
227
|
+
5. If critical information is missing, ask only the minimum blocking questions before drafting.
|
|
171
228
|
|
|
172
229
|
When done, tell the user:
|
|
173
230
|
|
|
@@ -188,7 +245,8 @@ Read:
|
|
|
188
245
|
1. Create or update \`.agentic/workspace/documents/frd.md\`.
|
|
189
246
|
2. Produce a polished markdown Functional Requirements Document.
|
|
190
247
|
3. Cover modules, flows, validations, roles, and edge cases where relevant.
|
|
191
|
-
4.
|
|
248
|
+
4. If relevant source material is outside \`.agentic/workspace/project/\`, move or organize it into the workspace by default unless the user explicitly says not to.
|
|
249
|
+
5. Ask only the minimum blocking questions.
|
|
192
250
|
|
|
193
251
|
When done, tell the user:
|
|
194
252
|
|
|
@@ -209,7 +267,8 @@ Read:
|
|
|
209
267
|
1. Create or update \`.agentic/workspace/documents/estimate.md\`.
|
|
210
268
|
2. Produce a markdown estimate with effort breakdown, assumptions, dependencies, and risks.
|
|
211
269
|
3. Keep the estimate aligned with the known scope and clearly state uncertainty.
|
|
212
|
-
4.
|
|
270
|
+
4. If relevant source material is outside \`.agentic/workspace/project/\`, move or organize it into the workspace by default unless the user explicitly says not to.
|
|
271
|
+
5. Ask only the minimum blocking questions.
|
|
213
272
|
|
|
214
273
|
When done, tell the user:
|
|
215
274
|
|
|
@@ -231,58 +290,8 @@ Read:
|
|
|
231
290
|
1. Create or update \`.agentic/workspace/documents/proposal.md\`.
|
|
232
291
|
2. Produce a polished markdown proposal using the known scope, architecture direction, and estimate.
|
|
233
292
|
3. Make gaps explicit instead of inventing details.
|
|
234
|
-
4.
|
|
293
|
+
4. If relevant screenshots, decks, notes, or references are found outside \`.agentic/workspace/project/\`, move or organize them into the workspace by default unless the user explicitly says not to.
|
|
294
|
+
5. Ask only the minimum blocking questions.
|
|
235
295
|
|
|
236
296
|
When done, tell the user the v1 workflow is complete and list the generated files.
|
|
237
|
-
`}),
|
|
238
|
-
# Agentic Starter Guide
|
|
239
|
-
|
|
240
|
-
This project includes a reusable AI working area under \`.agentic/\` for project kick-off and pre-delivery documentation.
|
|
241
|
-
|
|
242
|
-
## What This Is For
|
|
243
|
-
|
|
244
|
-
Use this scaffold when you want an AI tool to:
|
|
245
|
-
|
|
246
|
-
- understand a project from files, notes, screenshots, and links
|
|
247
|
-
- maintain structured project memory
|
|
248
|
-
- generate markdown deliverables such as BRD, FRD, estimate, and proposal
|
|
249
|
-
|
|
250
|
-
## Folder Purpose
|
|
251
|
-
|
|
252
|
-
- \`.agentic/init.md\`: first prompt for every new AI session
|
|
253
|
-
- \`.agentic/context.md\`: shared rules and folder map
|
|
254
|
-
- \`.agentic/commands/\`: task-specific prompt files you reference in your AI tool
|
|
255
|
-
- \`.agentic/workspace/project/\`: raw project inputs such as screenshots, notes, requirement docs, and reference links
|
|
256
|
-
- \`.agentic/workspace/memory/\`: evolving AI-maintained project understanding
|
|
257
|
-
- \`.agentic/workspace/documents/\`: polished markdown deliverables
|
|
258
|
-
|
|
259
|
-
## How To Use It
|
|
260
|
-
|
|
261
|
-
1. Open your AI tool in this project.
|
|
262
|
-
2. Start every new session with \`@.agentic/init.md\`.
|
|
263
|
-
3. Follow the command sequence below.
|
|
264
|
-
|
|
265
|
-
## V1 Command Sequence
|
|
266
|
-
|
|
267
|
-
1. \`@.agentic/init.md\`
|
|
268
|
-
2. \`@.agentic/commands/project-requirements.md\`
|
|
269
|
-
3. \`@.agentic/commands/architecture.md\`
|
|
270
|
-
4. \`@.agentic/commands/create-brd.md\`
|
|
271
|
-
5. \`@.agentic/commands/create-frd.md\`
|
|
272
|
-
6. \`@.agentic/commands/create-estimate.md\`
|
|
273
|
-
7. \`@.agentic/commands/create-proposal.md\`
|
|
274
|
-
|
|
275
|
-
If your tool does not support \`@file\` references, paste the contents of the prompt file into a new chat manually.
|
|
276
|
-
${u}
|
|
277
|
-
`,q=`${l}
|
|
278
|
-
.agentic/workspace/documents/
|
|
279
|
-
.agentic/workspace/memory/
|
|
280
|
-
${g}
|
|
281
|
-
`,R=[".agentic",".agentic/commands",".agentic/workspace",".agentic/workspace/project",".agentic/workspace/memory",".agentic/workspace/documents"];async function A(e){await Promise.all(x.map(t=>k(i.join(e,t),{recursive:!0,force:!0})))}async function E(e){await Promise.all(R.map(t=>f(i.join(e,t),{recursive:!0})))}async function I(e){let t=v();await Promise.all(Object.entries(t).map(([o,n])=>c(i.join(e,o),n,"utf8")))}function T(e,t,o,n){let s=new RegExp(`${m(o)}[\\s\\S]*?${m(n)}\\n?`,"m");if(s.test(e))return e.replace(s,`${t}
|
|
282
|
-
`);let r=e.endsWith(`
|
|
283
|
-
`)?`
|
|
284
|
-
`:`
|
|
285
|
-
|
|
286
|
-
`;return`${e}${r}${t}
|
|
287
|
-
`}function m(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}async function d(e,t,o,n,s){let r=i.join(e,t);try{let a=await w(r,"utf8"),h=T(a,o,n,s);await c(r,h,"utf8")}catch(a){if(a.code!=="ENOENT")throw a;await c(r,`${o}
|
|
288
|
-
`,"utf8")}}async function N(){let e=process.cwd();await A(e),await E(e),await I(e),await d(e,y,b,p,u),await d(e,j,q,l,g),console.log(""),console.log("create-agentic-starter: scaffold created successfully."),console.log(`Project folder: ${e}`),console.log(""),console.log("Next steps:"),console.log("1. Open your AI tool in this folder."),console.log("2. Start a new chat with @.agentic/init.md"),console.log("")}N().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`create-agentic-starter: failed to scaffold project. ${t}`),process.exitCode=1});
|
|
297
|
+
`});async function T(e){await Promise.all(y.map(t=>q(l.join(e,t),{recursive:!0,force:!0})))}async function S(e){await Promise.all(x.map(t=>E(l.join(e,t),{recursive:!0})))}async function N(e){let t=v();await Promise.all(Object.entries(t).map(([o,r])=>I(l.join(e,o),r,"utf8")))}async function P(){let e=process.cwd();await T(e),await S(e),await N(e),await i(e,f,w,c,m),await i(e,h,k,d,p),console.log(""),console.log("create-agentic-starter: scaffold created successfully."),console.log(`Project folder: ${e}`),console.log(""),console.log("Next steps:"),console.log("1. Open your AI tool in this folder."),console.log("2. Start a new chat with @.agentic/init.md"),console.log("")}P().catch(e=>{let t=e instanceof Error?e.message:String(e);console.error(`create-agentic-starter: failed to scaffold project. ${t}`),process.exitCode=1});
|