create-agentic-starter 0.1.4 → 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/README.md +2 -2
- package/dist/index.js +108 -94
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -28,8 +28,8 @@ Run the command inside an existing project folder.
|
|
|
28
28
|
The scaffold is non-interactive. It will:
|
|
29
29
|
|
|
30
30
|
- recreate `.agentic/`
|
|
31
|
-
-
|
|
32
|
-
-
|
|
31
|
+
- preserve existing `AGENTS.md` and `.gitignore`, appending a marked `create-agentic-starter` section when needed
|
|
32
|
+
- never modify `README.md`
|
|
33
33
|
- print the next step for the team
|
|
34
34
|
|
|
35
35
|
## Generated Structure
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,60 @@
|
|
|
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
|
|
|
6
|
-
You are starting a fresh AI session inside this project. Your job is to
|
|
57
|
+
You are starting a fresh AI session inside this project. Your job is to quickly understand what this project is, what context already exists, and what the user still needs to provide.
|
|
7
58
|
|
|
8
59
|
## Read Scope
|
|
9
60
|
|
|
@@ -15,18 +66,39 @@ You are starting a fresh AI session inside this project. Your job is to build li
|
|
|
15
66
|
- inspect \`.agentic/workspace/documents/\`
|
|
16
67
|
4. Use existing workspace context if it is already present.
|
|
17
68
|
|
|
69
|
+
## Response Style
|
|
70
|
+
|
|
71
|
+
1. Be concise and synthesis-first.
|
|
72
|
+
2. Do not dump a full file inventory unless the user explicitly asks.
|
|
73
|
+
3. Do not mirror the prompt structure back to the user.
|
|
74
|
+
4. Respond with either:
|
|
75
|
+
- a short synthesized summary of what you understand, or
|
|
76
|
+
- a few focused questions if important context is still missing
|
|
77
|
+
|
|
18
78
|
## What To Do
|
|
19
79
|
|
|
20
|
-
1.
|
|
21
|
-
2.
|
|
22
|
-
3. Build
|
|
23
|
-
- root-level
|
|
80
|
+
1. Infer what kind of project this is from the root-level signals.
|
|
81
|
+
2. Check whether \`.agentic/workspace/project/\`, \`.agentic/workspace/memory/\`, and \`.agentic/workspace/documents/\` already contain useful context.
|
|
82
|
+
3. Build the best current understanding from:
|
|
83
|
+
- root-level signals
|
|
24
84
|
- existing workspace files
|
|
25
85
|
- the user's message in this chat
|
|
26
|
-
4. If
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
86
|
+
4. If project context is thin, ask a small number of targeted questions about:
|
|
87
|
+
- project goal
|
|
88
|
+
- target users
|
|
89
|
+
- scope or modules
|
|
90
|
+
- available references such as screenshots, docs, notes, links, or file paths
|
|
91
|
+
- desired outputs
|
|
92
|
+
5. If enough context exists, give a short summary of the project and the most important missing pieces.
|
|
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.
|
|
94
|
+
7. After the first useful exchange, create or update:
|
|
95
|
+
- \`.agentic/workspace/memory/project-overview.md\`
|
|
96
|
+
- \`.agentic/workspace/memory/requirements.md\`
|
|
97
|
+
- \`.agentic/workspace/memory/open-questions.md\`
|
|
98
|
+
8. Write drafts even from partial information.
|
|
99
|
+
9. Clearly separate confirmed facts, assumptions, and open questions.
|
|
100
|
+
10. Do not route immediately just because the workspace is empty. Do useful synthesis or ask focused questions first.
|
|
101
|
+
11. Once you have done useful intake work, end with:
|
|
30
102
|
|
|
31
103
|
\`Next type @.agentic/commands/project-requirements.md\`
|
|
32
104
|
`,".agentic/context.md":`# Context
|
|
@@ -54,6 +126,8 @@ Use \`.agentic/workspace/project/\` for:
|
|
|
54
126
|
- links captured into markdown files
|
|
55
127
|
- user-supplied project references
|
|
56
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
|
+
|
|
57
131
|
### Memory
|
|
58
132
|
|
|
59
133
|
Use \`.agentic/workspace/memory/\` for:
|
|
@@ -77,8 +151,10 @@ Use \`.agentic/workspace/documents/\` for polished outputs:
|
|
|
77
151
|
|
|
78
152
|
1. Reuse and improve existing workspace files when they already exist.
|
|
79
153
|
2. Do not scan the whole repository unless the user explicitly asks.
|
|
80
|
-
3.
|
|
81
|
-
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.
|
|
82
158
|
`,".agentic/commands/project-requirements.md":`# Project Requirements
|
|
83
159
|
|
|
84
160
|
Read:
|
|
@@ -91,17 +167,20 @@ Read:
|
|
|
91
167
|
|
|
92
168
|
## Your job
|
|
93
169
|
|
|
94
|
-
1.
|
|
95
|
-
2.
|
|
170
|
+
1. Refine and deepen the initial understanding created during \`@.agentic/init.md\`.
|
|
171
|
+
2. Collect any missing project explanation, goals, users, scope, screenshots, references, and known deliverables.
|
|
172
|
+
3. Accept either:
|
|
96
173
|
- existing file paths already shared by the user, or
|
|
97
174
|
- fresh explanation typed in chat
|
|
98
|
-
|
|
99
|
-
|
|
175
|
+
4. Move or organize project inputs into \`.agentic/workspace/project/\` by default unless the user explicitly says not to.
|
|
176
|
+
5. Organize and normalize the project context so the later architecture and document steps can rely on it.
|
|
177
|
+
6. Create or update:
|
|
100
178
|
- \`.agentic/workspace/memory/project-overview.md\`
|
|
101
179
|
- \`.agentic/workspace/memory/requirements.md\`
|
|
102
180
|
- \`.agentic/workspace/memory/open-questions.md\`
|
|
103
|
-
|
|
104
|
-
|
|
181
|
+
7. Capture assumptions separately from confirmed facts.
|
|
182
|
+
8. Reduce open questions where possible before handing off to architecture.
|
|
183
|
+
9. Ask only for missing details that block useful requirement understanding.
|
|
105
184
|
|
|
106
185
|
When done, tell the user:
|
|
107
186
|
|
|
@@ -123,7 +202,8 @@ Read:
|
|
|
123
202
|
3. Cover frontend, backend, data, integrations, authentication, deployment, and key risks when relevant.
|
|
124
203
|
4. Add a diagram description or mermaid diagram when supported.
|
|
125
204
|
5. Mention draw.io MCP only as an optional tool if available in the user's environment.
|
|
126
|
-
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.
|
|
127
207
|
|
|
128
208
|
When done, tell the user:
|
|
129
209
|
|
|
@@ -143,7 +223,8 @@ Read:
|
|
|
143
223
|
1. Create or update \`.agentic/workspace/documents/brd.md\`.
|
|
144
224
|
2. Produce a polished markdown Business Requirements Document.
|
|
145
225
|
3. Use confirmed facts first and clearly label assumptions where needed.
|
|
146
|
-
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.
|
|
147
228
|
|
|
148
229
|
When done, tell the user:
|
|
149
230
|
|
|
@@ -164,7 +245,8 @@ Read:
|
|
|
164
245
|
1. Create or update \`.agentic/workspace/documents/frd.md\`.
|
|
165
246
|
2. Produce a polished markdown Functional Requirements Document.
|
|
166
247
|
3. Cover modules, flows, validations, roles, and edge cases where relevant.
|
|
167
|
-
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.
|
|
168
250
|
|
|
169
251
|
When done, tell the user:
|
|
170
252
|
|
|
@@ -185,7 +267,8 @@ Read:
|
|
|
185
267
|
1. Create or update \`.agentic/workspace/documents/estimate.md\`.
|
|
186
268
|
2. Produce a markdown estimate with effort breakdown, assumptions, dependencies, and risks.
|
|
187
269
|
3. Keep the estimate aligned with the known scope and clearly state uncertainty.
|
|
188
|
-
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.
|
|
189
272
|
|
|
190
273
|
When done, tell the user:
|
|
191
274
|
|
|
@@ -207,77 +290,8 @@ Read:
|
|
|
207
290
|
1. Create or update \`.agentic/workspace/documents/proposal.md\`.
|
|
208
291
|
2. Produce a polished markdown proposal using the known scope, architecture direction, and estimate.
|
|
209
292
|
3. Make gaps explicit instead of inventing details.
|
|
210
|
-
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.
|
|
211
295
|
|
|
212
296
|
When done, tell the user the v1 workflow is complete and list the generated files.
|
|
213
|
-
`}),E
|
|
214
|
-
# Agentic Starter Guide
|
|
215
|
-
|
|
216
|
-
This project includes a reusable AI working area under \`.agentic/\` for project kick-off and pre-delivery documentation.
|
|
217
|
-
|
|
218
|
-
## What This Is For
|
|
219
|
-
|
|
220
|
-
Use this scaffold when you want an AI tool to:
|
|
221
|
-
|
|
222
|
-
- understand a project from files, notes, screenshots, and links
|
|
223
|
-
- maintain structured project memory
|
|
224
|
-
- generate markdown deliverables such as BRD, FRD, estimate, and proposal
|
|
225
|
-
|
|
226
|
-
## Folder Purpose
|
|
227
|
-
|
|
228
|
-
- \`.agentic/init.md\`: first prompt for every new AI session
|
|
229
|
-
- \`.agentic/context.md\`: shared rules and folder map
|
|
230
|
-
- \`.agentic/commands/\`: task-specific prompt files you reference in your AI tool
|
|
231
|
-
- \`.agentic/workspace/project/\`: raw project inputs such as screenshots, notes, requirement docs, and reference links
|
|
232
|
-
- \`.agentic/workspace/memory/\`: evolving AI-maintained project understanding
|
|
233
|
-
- \`.agentic/workspace/documents/\`: polished markdown deliverables
|
|
234
|
-
|
|
235
|
-
## How To Use It
|
|
236
|
-
|
|
237
|
-
1. Open your AI tool in this project.
|
|
238
|
-
2. Start every new session with \`@.agentic/init.md\`.
|
|
239
|
-
3. Follow the command sequence below.
|
|
240
|
-
|
|
241
|
-
## V1 Command Sequence
|
|
242
|
-
|
|
243
|
-
1. \`@.agentic/init.md\`
|
|
244
|
-
2. \`@.agentic/commands/project-requirements.md\`
|
|
245
|
-
3. \`@.agentic/commands/architecture.md\`
|
|
246
|
-
4. \`@.agentic/commands/create-brd.md\`
|
|
247
|
-
5. \`@.agentic/commands/create-frd.md\`
|
|
248
|
-
6. \`@.agentic/commands/create-estimate.md\`
|
|
249
|
-
7. \`@.agentic/commands/create-proposal.md\`
|
|
250
|
-
|
|
251
|
-
If your tool does not support \`@file\` references, paste the contents of the prompt file into a new chat manually.
|
|
252
|
-
${l}
|
|
253
|
-
`,q=`${u}
|
|
254
|
-
## Agentic Starter
|
|
255
|
-
|
|
256
|
-
This project includes a reusable AI workflow scaffold under \`.agentic/\`.
|
|
257
|
-
|
|
258
|
-
Start every new AI session with:
|
|
259
|
-
|
|
260
|
-
\`@.agentic/init.md\`
|
|
261
|
-
|
|
262
|
-
Command flow:
|
|
263
|
-
|
|
264
|
-
1. \`@.agentic/init.md\`
|
|
265
|
-
2. \`@.agentic/commands/project-requirements.md\`
|
|
266
|
-
3. \`@.agentic/commands/architecture.md\`
|
|
267
|
-
4. \`@.agentic/commands/create-brd.md\`
|
|
268
|
-
5. \`@.agentic/commands/create-frd.md\`
|
|
269
|
-
6. \`@.agentic/commands/create-estimate.md\`
|
|
270
|
-
7. \`@.agentic/commands/create-proposal.md\`
|
|
271
|
-
${g}
|
|
272
|
-
`,T=`${w}
|
|
273
|
-
.agentic/workspace/documents/
|
|
274
|
-
.agentic/workspace/memory/
|
|
275
|
-
${f}
|
|
276
|
-
`,I=[".agentic",".agentic/commands",".agentic/workspace",".agentic/workspace/project",".agentic/workspace/memory",".agentic/workspace/documents"];async function S(e){await Promise.all(b.map(t=>j(i.join(e,t),{recursive:!0,force:!0})))}async function N(e){await Promise.all(I.map(t=>k(i.join(e,t),{recursive:!0})))}async function P(e){let t=R();await Promise.all(Object.entries(t).map(([r,n])=>m(i.join(e,r),n,"utf8")))}function D(e,t,r,n){let a=new RegExp(`${d(r)}[\\s\\S]*?${d(n)}\\n?`,"m");if(a.test(e))return e.replace(a,`${t}
|
|
277
|
-
`);let o=e.endsWith(`
|
|
278
|
-
`)?`
|
|
279
|
-
`:`
|
|
280
|
-
|
|
281
|
-
`;return`${e}${o}${t}
|
|
282
|
-
`}function d(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}async function c(e,t,r,n,a){let o=i.join(e,t);try{let s=await y(o,"utf8"),h=D(s,r,n,a);await m(o,h,"utf8")}catch(s){if(s.code!=="ENOENT")throw s;await m(o,`${r}
|
|
283
|
-
`,"utf8")}}async function M(){let e=process.cwd();await S(e),await N(e),await P(e),await c(e,v,E,p,l),await c(e,x,q,u,g),await c(e,A,T,w,f),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("")}M().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});
|