@mind-fold/open-flow 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.
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AASA,UAAU,WAAW;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAOD,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAuI9D"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AASA,UAAU,WAAW;IACpB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAOD,wBAAsB,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAqJ9D"}
@@ -11,19 +11,9 @@ export async function init(options) {
11
11
  console.log(chalk.cyan("\nšŸš€ open-flow - AI-assisted development workflow initializer\n"));
12
12
  // Check if already initialized
13
13
  const workflowDir = path.join(cwd, "workflow");
14
- if (fs.existsSync(workflowDir)) {
15
- const { overwrite } = await inquirer.prompt([
16
- {
17
- type: "confirm",
18
- name: "overwrite",
19
- message: chalk.yellow("workflow/ directory already exists. Overwrite?"),
20
- default: false,
21
- },
22
- ]);
23
- if (!overwrite) {
24
- console.log(chalk.gray("Initialization cancelled."));
25
- return;
26
- }
14
+ const workflowExists = fs.existsSync(workflowDir);
15
+ if (workflowExists) {
16
+ console.log(chalk.yellow("āš ļø workflow/ directory already exists, skipping..."));
27
17
  }
28
18
  let tools;
29
19
  if (options.yes) {
@@ -33,10 +23,12 @@ export async function init(options) {
33
23
  else if (options.cursor || options.claude) {
34
24
  // Use flags
35
25
  tools = [];
36
- if (options.cursor)
26
+ if (options.cursor) {
37
27
  tools.push("cursor");
38
- if (options.claude)
28
+ }
29
+ if (options.claude) {
39
30
  tools.push("claude");
31
+ }
40
32
  }
41
33
  else {
42
34
  // Interactive mode
@@ -58,19 +50,33 @@ export async function init(options) {
58
50
  return;
59
51
  }
60
52
  console.log(chalk.gray(`\nConfiguring: ${tools.join(", ")}\n`));
61
- // Create workflow structure
62
- console.log(chalk.blue("šŸ“ Creating workflow structure..."));
63
- await createWorkflowStructure(cwd);
64
- // Configure selected tools
53
+ // Create workflow structure (skip if exists)
54
+ if (!workflowExists) {
55
+ console.log(chalk.blue("šŸ“ Creating workflow structure..."));
56
+ await createWorkflowStructure(cwd);
57
+ }
58
+ // Configure selected tools (skip if exists)
65
59
  if (tools.includes("cursor")) {
66
- console.log(chalk.blue("šŸ“ Configuring Cursor commands..."));
67
- await configureCursor(cwd);
60
+ const cursorDir = path.join(cwd, ".cursor/commands");
61
+ if (fs.existsSync(cursorDir)) {
62
+ console.log(chalk.yellow("āš ļø .cursor/commands/ already exists, skipping..."));
63
+ }
64
+ else {
65
+ console.log(chalk.blue("šŸ“ Configuring Cursor commands..."));
66
+ await configureCursor(cwd);
67
+ }
68
68
  }
69
69
  if (tools.includes("claude")) {
70
- console.log(chalk.blue("šŸ“ Configuring Claude Code commands..."));
71
- await configureClaude(cwd);
70
+ const claudeDir = path.join(cwd, ".claude/commands");
71
+ if (fs.existsSync(claudeDir)) {
72
+ console.log(chalk.yellow("āš ļø .claude/commands/ already exists, skipping..."));
73
+ }
74
+ else {
75
+ console.log(chalk.blue("šŸ“ Configuring Claude Code commands..."));
76
+ await configureClaude(cwd);
77
+ }
72
78
  }
73
- // Create root files
79
+ // Create root files (skip if exists)
74
80
  await createRootFiles(cwd);
75
81
  // Initialize developer identity if specified
76
82
  let developerInitialized = false;
@@ -107,6 +113,8 @@ export async function init(options) {
107
113
  chalk.gray(" command in your AI tool to start a session\n"));
108
114
  }
109
115
  async function createRootFiles(cwd) {
116
+ const initAgentPath = path.join(cwd, "init-agent.md");
117
+ const agentsPath = path.join(cwd, "AGENTS.md");
110
118
  // Create init-agent.md
111
119
  const initAgentContent = `# AI Agent Initialization Guide
112
120
 
@@ -130,75 +138,403 @@ async function createRootFiles(cwd) {
130
138
  \`\`\`
131
139
 
132
140
  This creates:
133
- - \`workflow/.developer\` - Your identity file (gitignored)
141
+ - \`workflow/.developer\` - Your identity file (gitignored, not committed)
134
142
  - \`workflow/agent-progress/<your-name>/\` - Your personal progress directory
135
143
 
136
- ### Step 1: Understand Current Context
144
+ **Naming suggestions**:
145
+ - Human developers: Use your name, e.g., \`john-doe\`
146
+ - Cursor AI: \`cursor-agent\` or \`cursor-<feature>\`
147
+ - Claude Code: \`claude-agent\` or \`claude-<feature>\`
148
+
149
+ ### Step 1: Understand Current Context (5 min)
137
150
 
138
151
  \`\`\`bash
139
152
  # 0. Check your identity
140
153
  ./workflow/scripts/get-developer.sh
141
154
 
142
- # 1. Check recent work progress (your own progress)
155
+ # 1. Check recent work (your own progress)
143
156
  DEVELOPER=$(./workflow/scripts/get-developer.sh)
144
157
  cat workflow/agent-progress/$DEVELOPER/index.md 2>/dev/null || cat workflow/agent-progress/index.md
145
158
 
146
159
  # 2. Check feature status
147
160
  cat workflow/feature.json
148
161
 
149
- # 3. Check git history
162
+ # 3. Check git history (use git command directly)
150
163
  git status
151
164
  git log --oneline -20
152
165
  \`\`\`
153
166
 
154
- ### Step 2: Read Project Guidelines
167
+ ### Step 2: Read Project Guidelines (10 min) [MANDATORY]
155
168
 
156
- Based on your task, read the corresponding guidelines:
169
+ **CRITICAL**: Read BOTH frontend and backend guideline indexes to understand the project:
157
170
 
158
171
  \`\`\`bash
159
- # Frontend guidelines
172
+ # Read frontend guidelines index (REQUIRED - even for backend tasks)
160
173
  cat workflow/structure/frontend/index.md
161
174
 
162
- # Backend guidelines
175
+ # Read backend guidelines index (REQUIRED - even for frontend tasks)
163
176
  cat workflow/structure/backend/index.md
164
177
  \`\`\`
165
178
 
166
- ### Step 3: Read Workflow Guide
179
+ **Why read both?**
180
+ - Understand the full project architecture
181
+ - Know coding standards for the entire codebase
182
+ - See how frontend and backend interact
183
+ - Learn the overall code quality requirements
184
+
185
+ ### Step 3: Read Workflow Guide (5 min)
167
186
 
168
187
  \`\`\`bash
169
188
  cat workflow/flow.md
170
189
  \`\`\`
171
190
 
191
+ **CRITICAL**: This document defines the entire development workflow. You MUST follow it.
192
+
193
+ ### Step 4: Before Coding - Read Specific Guidelines (Required)
194
+
195
+ Based on your task, read the **detailed** guidelines:
196
+
197
+ **Frontend Task**:
198
+ \`\`\`bash
199
+ # Use the line numbers from index.md to read specific sections in doc.md
200
+ # Example: Query Hook guidelines (adjust line numbers based on your index.md)
201
+ cat workflow/structure/frontend/doc.md | sed -n '50,100p'
202
+ \`\`\`
203
+
204
+ **Backend Task**:
205
+ \`\`\`bash
206
+ # Use the line numbers from index.md to read specific sections in doc.md
207
+ # Example: Directory structure guidelines
208
+ cat workflow/structure/backend/doc.md | sed -n '5,50p'
209
+ \`\`\`
210
+
211
+ **IMPORTANT**: The index files tell you WHICH sections to read in doc.md based on your task.
212
+
213
+ ---
214
+
215
+ ## Project Overview
216
+
217
+ ### What is This Project?
218
+
219
+ [Fill in your project description here after running \`of init\`]
220
+
221
+ ### Tech Stack
222
+
223
+ [Fill in your tech stack here]
224
+
225
+ ### Key Information
226
+
227
+ - **Main Branch**: Check with \`git branch\`
228
+ - **Current Branch**: Check \`git status\`
229
+ - **Package Manager**: Check for package-lock.json (npm), yarn.lock (yarn), or pnpm-lock.yaml (pnpm)
230
+ - **Linter**: Check package.json scripts
231
+
232
+ ---
233
+
234
+ ## Directory Structure
235
+
236
+ \`\`\`
237
+ your-project/
238
+ ā”œā”€ā”€ workflow/ # [!] Agent-Human collaboration system
239
+ │ ā”œā”€ā”€ flow.md # Workflow guide (MUST READ)
240
+ │ ā”œā”€ā”€ feature.json # Feature tracking
241
+ │ ā”œā”€ā”€ agent-progress/ # Work progress records
242
+ │ │ └── {developer}/ # Per-developer directories
243
+ │ ā”œā”€ā”€ structure/ # [!] Development guidelines (MUST READ)
244
+ │ │ ā”œā”€ā”€ frontend/
245
+ │ │ │ ā”œā”€ā”€ index.md # Frontend guidelines index
246
+ │ │ │ └── doc.md # Frontend guidelines detailed
247
+ │ │ └── backend/
248
+ │ │ ā”œā”€ā”€ index.md # Backend guidelines index
249
+ │ │ └── doc.md # Backend guidelines detailed
250
+ │ └── onboarding-guide.md # New developer guide
251
+ ā”œā”€ā”€ init-agent.md # This file
252
+ └── AGENTS.md # Compatible with agents.md protocol
253
+ \`\`\`
254
+
255
+ ---
256
+
257
+ ## Development Workflow System
258
+
259
+ ### Overview
260
+
261
+ This project uses a structured workflow system based on [Anthropic's best practices](https://www.anthropic.com/engineering/effective-harnesses-for-long-running-agents).
262
+
263
+ ### Core Files
264
+
265
+ | File | Purpose | When to Update |
266
+ |------|---------|----------------|
267
+ | \`workflow/flow.md\` | Complete workflow guide | Read at session start |
268
+ | \`workflow/feature.json\` | Feature tracking | When feature status changes |
269
+ | \`workflow/agent-progress/{developer}/*.md\` | Session work records | After each session |
270
+
271
+ ### Key Rules (CRITICAL - Must Follow)
272
+
273
+ **1. Read Guidelines Before Coding**
274
+ - Frontend: \`workflow/structure/frontend/index.md\` -> \`doc.md\`
275
+ - Backend: \`workflow/structure/backend/index.md\` -> \`doc.md\`
276
+ - This is **mandatory**, not optional
277
+
278
+ **2. Document Limits** āš ļø **CRITICAL RULE**
279
+ - \`agent-progress/{developer}/progress-N.md\` max 2000 lines
280
+ - **āš ļø IMPORTANT: Only create new file when current file EXCEEDS 2000 lines**
281
+ - File naming: Use sequential numbers (\`progress-1.md\`, \`progress-2.md\`...)
282
+
283
+ **3. Update Tracking Files**
284
+ - After completing work: Update \`agent-progress\` (include commit hashes)
285
+ - When feature changes: Update \`feature.json\`
286
+
287
+ ---
288
+
289
+ ## How to Use the Workflow System
290
+
291
+ ### At Session Start
292
+
293
+ 1. **Read context files** (see Quick Start Step 1 above)
294
+ 2. **Read ALL guideline indexes** (see Quick Start Step 2 above)
295
+ - **MANDATORY**: Read both frontend AND backend indexes
296
+ - This gives you complete project understanding
297
+ 3. **Read workflow guide** (see Quick Start Step 3 above)
298
+ 4. **Identify your task** from \`feature.json\`
299
+ 5. **Read specific guidelines** for your task (see Quick Start Step 4)
300
+ 6. **Select one feature** to work on
301
+
302
+ ### During Development
303
+
304
+ 1. **Update feature.json**
305
+ - Change status to \`"in-progress"\`
306
+
307
+ 2. **Follow guidelines strictly**
308
+ - Frontend: Type safety, Hook standards, Component standards
309
+ - Backend: Directory structure, Type safety, Database operations
310
+
311
+ 3. **Test before commit**
312
+ \`\`\`bash
313
+ npm run lint # or pnpm lint / yarn lint - Must pass
314
+ npm run type-check # or pnpm type-check - Must pass
315
+ \`\`\`
316
+
317
+ 4. **Commit with convention**
318
+ \`\`\`bash
319
+ git commit -m "type(scope): description"
320
+ # Types: feat, fix, docs, refactor, test, chore
321
+ \`\`\`
322
+
323
+ ### At Session End (REQUIRED)
324
+
325
+ **1. Update agent-progress** (write to your own directory):
326
+ \`\`\`bash
327
+ # Get your developer name
328
+ DEVELOPER=$(./workflow/scripts/get-developer.sh)
329
+
330
+ # Your progress file is in: workflow/agent-progress/$DEVELOPER/
331
+ # Check your personal index for the active file
332
+ cat workflow/agent-progress/$DEVELOPER/index.md
333
+
334
+ # Add new session to your active progress file
335
+ # Only create new file if current file EXCEEDS 2000 lines
336
+ # See template in workflow/agent-progress/index.md
337
+ \`\`\`
338
+
339
+ **2. Update feature.json**:
340
+ - Change status to \`"completed"\`
341
+ - Add \`completedAt\` and \`commit\` fields
342
+ - Recalculate \`statistics\`
343
+
344
+ ---
345
+
346
+ ## Development Guidelines Quick Reference
347
+
348
+ ### Frontend Guidelines Location
349
+
350
+ \`workflow/structure/frontend/index.md\` provides quick navigation to doc.md sections.
351
+
352
+ Use the extract script to get accurate line numbers:
353
+ \`\`\`bash
354
+ ./workflow/scripts/extract-md-headings.sh workflow/structure/frontend/doc.md -l 1,2,3 -r
355
+ \`\`\`
356
+
357
+ ### Backend Guidelines Location
358
+
359
+ \`workflow/structure/backend/index.md\` provides quick navigation to doc.md sections.
360
+
361
+ Use the extract script to get accurate line numbers:
362
+ \`\`\`bash
363
+ ./workflow/scripts/extract-md-headings.sh workflow/structure/backend/doc.md -l 1,2,3 -r
364
+ \`\`\`
365
+
366
+ ### Code Quality Standards
367
+
368
+ **Before EVERY commit**:
369
+ - [x] Lint check - 0 errors
370
+ - [x] Type check - No type errors
371
+ - [x] Manual testing passes
372
+
373
+ **Frontend-specific**:
374
+ - [x] Use semantic HTML (\`<button>\` not \`<div role="button">\`)
375
+ - [x] Import types from backend when applicable
376
+ - [x] No non-null assertions \`!\`
377
+
378
+ **Backend-specific**:
379
+ - [x] No non-null assertions \`!\` - use local variables
380
+ - [x] All API inputs/outputs have validation (Zod, etc.)
381
+ - [x] Use structured logging, not \`console.log\`
382
+ - [x] Avoid \`await\` in loops (N+1 problem)
383
+
384
+ ---
385
+
386
+ ## Common Commands
387
+
388
+ ### Development
389
+ \`\`\`bash
390
+ npm run dev # Start dev server
391
+ npm run build # Production build
392
+ npm run lint # Run linter
393
+ npm run format # Format code
394
+ npm run type-check # Type checking
395
+ \`\`\`
396
+
397
+ ### Git
398
+ \`\`\`bash
399
+ git status
400
+ git log --oneline -20
401
+ git diff main...HEAD
402
+ \`\`\`
403
+
404
+ ### Workflow Tools
405
+ \`\`\`bash
406
+ ./workflow/scripts/get-developer.sh # Get current developer
407
+ ./workflow/scripts/init-developer.sh <name> # Initialize developer
408
+ ./workflow/scripts/extract-md-headings.sh <file> # Extract headings with line numbers
409
+ \`\`\`
410
+
411
+ ---
412
+
413
+ ## Critical Reminders
414
+
415
+ ### DO (Follow These)
416
+
417
+ 1. **Read BOTH guideline indexes** at session start (frontend AND backend)
418
+ 2. **Read workflow/flow.md** at session start
419
+ 3. **Read specific doc.md sections** before coding (based on task)
420
+ 4. **Update tracking files** after work
421
+ 5. **Test thoroughly** before committing
422
+ 6. **Follow guidelines strictly**
423
+
424
+ ### DON'T (Avoid These)
425
+
426
+ 1. **Don't skip reading guideline indexes** at initialization (CRITICAL VIOLATION)
427
+ - You MUST read both frontend/index.md AND backend/index.md
428
+ - Even if you only work on frontend OR backend
429
+ 2. **Don't skip reading specific guidelines** before coding (CRITICAL VIOLATION)
430
+ 3. **Don't exceed 2000 lines** in agent-progress files
431
+ - āš ļø **CRITICAL**: Only create new file when current file EXCEEDS 2000 lines
432
+ - Use sequential naming: \`progress-1.md\`, \`progress-2.md\`...
433
+ 4. **Don't commit with lint errors**
434
+ 5. **Don't use non-null assertions** (\`!\`)
435
+ 6. **Don't skip updating tracking files**
436
+ 7. āš ļø **Don't execute \`git commit\`** - AI should not commit code
437
+ - Only allowed: \`git log\`, \`git status\`, \`git diff\`
438
+ - After development, remind human to test and commit
439
+ - After human commits, use \`/record-agent-flow\` to record
440
+
441
+ ---
442
+
443
+ ## Important Documentation
444
+
445
+ ### Must Read
446
+ - \`workflow/flow.md\` - Complete workflow guide
447
+ - \`workflow/structure/frontend/index.md\` - Frontend guidelines
448
+ - \`workflow/structure/backend/index.md\` - Backend guidelines
449
+
450
+ ### Reference
451
+ - \`workflow/onboarding-guide.md\` - New developer guide
452
+ - \`workflow/feature.json\` - Feature tracking
453
+
172
454
  ---
173
455
 
174
- ## Development Workflow
456
+ ## Your First Task Checklist
175
457
 
176
- 1. **Read Before Write** - Understand context before starting
177
- 2. **Follow Standards** - Read \`workflow/structure/\` guidelines before coding
178
- 3. **Incremental Development** - Complete one feature at a time
179
- 4. **Record Promptly** - Update tracking files after completion
180
- 5. **Document Limits** - Max 2000 lines per agent-progress document
458
+ ### Before You Start Coding
459
+
460
+ - [ ] Read \`workflow/agent-progress/index.md\` - Understand recent work
461
+ - [ ] Read \`workflow/feature.json\` - See what needs to be done
462
+ - [ ] Read \`workflow/flow.md\` - Understand the workflow
463
+ - [ ] Read \`workflow/structure/[frontend|backend]/index.md\` - Find relevant guidelines
464
+ - [ ] Read specific sections in \`doc.md\` based on your task
465
+ - [ ] Select ONE feature from \`feature.json\` to work on
466
+ - [ ] Update feature status to \`"in-progress"\`
467
+ - [ ] Start coding following the guidelines
468
+
469
+ ### After Completing Your Work
470
+
471
+ - [ ] Run lint and type-check - Must pass
472
+ - [ ] Commit with proper message format
473
+ - [ ] Update agent-progress: Add to your \`{developer}/progress-N.md\` (include commit hashes)
474
+ - [ ] Update \`feature.json\` status to \`"completed"\`
475
+ - [ ] Recalculate \`statistics\` in \`feature.json\`
181
476
 
182
477
  ---
183
478
 
184
- ## Key Rules
479
+ ## Collaboration Philosophy
480
+
481
+ You are working in a **multi-session environment**:
185
482
 
186
- ### DO
187
- - Read guidelines before coding
188
- - Update agent-progress after each session
189
- - Run lint and type-check before finishing
483
+ - **Previous sessions**: Other AI agents or human developers have worked before you
484
+ - **Context files**: \`workflow/\` contains the history and context
485
+ - **Your responsibility**: Continue the work, maintain quality, update documentation
486
+ - **Next sessions**: Future agents will read your updates to continue
190
487
 
191
- ### DON'T
192
- - Skip reading guidelines (CRITICAL VIOLATION)
193
- - Let agent-progress exceed 2000 lines
194
- - Commit code with lint/type-check errors
195
- - Execute \`git commit\` - AI should not commit, human reviews and commits
488
+ **Key Principle**: Leave the codebase and documentation better than you found it.
196
489
 
197
490
  ---
198
491
 
199
- **Ready to start? Follow the Quick Start section above!**
492
+ ## Quick Tips
493
+
494
+ 1. **When stuck**: Check \`workflow/agent-progress/\` for similar work done before
495
+ 2. **Before asking**: Read the guidelines first - answer is likely there
496
+ 3. **File too long**: āš ļø **Only create new file when EXCEEDING 2000 lines** - Continue using existing file if under limit
497
+ 4. **Unsure about code style**: Check existing code in the same module
498
+ 5. **Need line numbers**: Use \`./workflow/scripts/extract-md-headings.sh <file> -r\`
499
+
500
+ ---
501
+
502
+ ## Getting Help
503
+
504
+ If you encounter issues:
505
+
506
+ 1. Check \`workflow/flow.md\` for workflow questions
507
+ 2. Check \`workflow/structure/\` for coding standards
508
+ 3. Check existing code for patterns
509
+ 4. Ask the user for clarification
510
+
511
+ **Maintenance Tool**: Use \`./workflow/scripts/extract-md-headings.sh\` to auto-extract document headings and line numbers for updating index.md
512
+
513
+ ---
514
+
515
+ ## Success Criteria
516
+
517
+ You're doing well if:
518
+
519
+ - [x] All lint and type checks pass
520
+ - [x] Code follows the guidelines
521
+ - [x] Tracking files are updated
522
+ - [x] Feature.json reflects current status
523
+ - [x] Commits are well-formatted
524
+ - [x] Documentation is up-to-date
525
+
526
+ ---
527
+
528
+ **Ready to start? Follow the Quick Start section at the top!**
200
529
  `;
201
- fs.writeFileSync(path.join(cwd, "init-agent.md"), initAgentContent);
530
+ // Write init-agent.md (skip if exists)
531
+ if (!fs.existsSync(initAgentPath)) {
532
+ fs.writeFileSync(initAgentPath, initAgentContent);
533
+ console.log(chalk.blue("šŸ“„ Created init-agent.md"));
534
+ }
535
+ else {
536
+ console.log(chalk.yellow("āš ļø init-agent.md already exists, skipping..."));
537
+ }
202
538
  // Create AGENTS.md
203
539
  const agentsContent = `<!-- OPEN-FLOW:START -->
204
540
  # Open-Flow Instructions
@@ -219,6 +555,13 @@ Keep this managed block so 'open-flow update' can refresh the instructions.
219
555
 
220
556
  <!-- OPEN-FLOW:END -->
221
557
  `;
222
- fs.writeFileSync(path.join(cwd, "AGENTS.md"), agentsContent);
558
+ // Write AGENTS.md (skip if exists)
559
+ if (!fs.existsSync(agentsPath)) {
560
+ fs.writeFileSync(agentsPath, agentsContent);
561
+ console.log(chalk.blue("šŸ“„ Created AGENTS.md"));
562
+ }
563
+ else {
564
+ console.log(chalk.yellow("āš ļø AGENTS.md already exists, skipping..."));
565
+ }
223
566
  }
224
567
  //# sourceMappingURL=init.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/configurators/templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAC/B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACvB;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,CAQtD"}
1
+ {"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../src/configurators/templates.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,WAAW,gBAAgB;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACtB;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,CAUtD"}