pipecraft 0.45.6 ā 0.46.1
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 +26 -15
- package/dist/cli/index.js +31 -26
- package/dist/cli/index.js.map +1 -1
- package/dist/utils/skill-installer.d.ts +47 -16
- package/dist/utils/skill-installer.d.ts.map +1 -1
- package/dist/utils/skill-installer.js +202 -142
- package/dist/utils/skill-installer.js.map +1 -1
- package/package.json +1 -1
- package/skills/pipecraft-cli/SKILL.md +1 -0
package/README.md
CHANGED
|
@@ -59,6 +59,10 @@ reference, examples, and troubleshooting.
|
|
|
59
59
|
|
|
60
60
|
Working in this repo with an AI agent? See [AGENTS.md](AGENTS.md).
|
|
61
61
|
|
|
62
|
+
Developing Pipecraft itself: [CONTRIBUTING.md](./CONTRIBUTING.md) for setup and workflow,
|
|
63
|
+
[docs-dev/testing.md](./docs-dev/testing.md) for the testing approach, and
|
|
64
|
+
[docs-dev/ast-operations.md](./docs-dev/ast-operations.md) for how the generator edits YAML.
|
|
65
|
+
|
|
62
66
|
[](https://www.npmjs.com/package/pipecraft)
|
|
63
67
|
[](https://www.npmjs.com/package/pipecraft)
|
|
64
68
|
[](https://github.com/the-craftlab/pipecraft/blob/main/LICENSE)
|
|
@@ -307,25 +311,32 @@ To report bugs or request features, open an issue on [GitHub Issues](https://git
|
|
|
307
311
|
|
|
308
312
|
## AI Assistant Integration
|
|
309
313
|
|
|
310
|
-
Pipecraft
|
|
311
|
-
|
|
312
|
-
### Install the Skill
|
|
314
|
+
Pipecraft ships a skill for Claude Code, Cursor, GitHub Copilot, Windsurf, Cline / Roo Code
|
|
315
|
+
and Codex. One command writes it in the format each tool reads:
|
|
313
316
|
|
|
314
317
|
```bash
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
# Via OpenSkills (universal)
|
|
319
|
-
npx openskills install the-craftlab/pipecraft
|
|
318
|
+
npx pipecraft skill # install into this project
|
|
319
|
+
pipecraft skill --list # show which tools this project uses
|
|
320
|
+
pipecraft skill --uninstall # take it back out
|
|
320
321
|
```
|
|
321
322
|
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
|
325
|
-
|
|
|
326
|
-
|
|
|
327
|
-
|
|
|
328
|
-
|
|
|
323
|
+
| Tool | File | Written as |
|
|
324
|
+
| ---------------- | ----------------------------------- | ---------------------- |
|
|
325
|
+
| Claude Code | `.claude/skills/pipecraft/SKILL.md` | whole file |
|
|
326
|
+
| Cursor | `.cursorrules` | block inside your file |
|
|
327
|
+
| GitHub Copilot | `.github/copilot-instructions.md` | block inside your file |
|
|
328
|
+
| Windsurf | `.windsurfrules` | block inside your file |
|
|
329
|
+
| Cline / Roo Code | `.clinerules` | block inside your file |
|
|
330
|
+
| Codex | `AGENTS.md` | block inside your file |
|
|
331
|
+
|
|
332
|
+
Five of those files are yours. Pipecraft writes only between `<!-- pipecraft:start -->` and
|
|
333
|
+
`<!-- pipecraft:end -->`, leaves everything else untouched, replaces that block when you
|
|
334
|
+
reinstall, and removes the block on `--uninstall`. A file that held nothing else is deleted.
|
|
335
|
+
|
|
336
|
+
Without `--target`, the command installs for the tools whose files or directories are already
|
|
337
|
+
in the project, and installs every format when it finds none. `--global` writes
|
|
338
|
+
`~/.claude/skills/pipecraft/SKILL.md`; the other five formats are project files and have no
|
|
339
|
+
home-directory form.
|
|
329
340
|
|
|
330
341
|
### What the Skill Provides
|
|
331
342
|
|
package/dist/cli/index.js
CHANGED
|
@@ -222,7 +222,8 @@ program
|
|
|
222
222
|
if (options.withSkill) {
|
|
223
223
|
const { installSkills } = await import('../utils/skill-installer.js');
|
|
224
224
|
console.log('\nš§ Installing AI coding assistant skills...');
|
|
225
|
-
|
|
225
|
+
// `init` runs in the project being set up, so the project files are the ones to write.
|
|
226
|
+
const results = installSkills({ local: true });
|
|
226
227
|
const installed = results.filter(r => r.success && !r.skipped);
|
|
227
228
|
if (installed.length > 0) {
|
|
228
229
|
console.log('ā
Skills installed for:', installed.map(r => r.target).join(', '));
|
|
@@ -551,29 +552,26 @@ program
|
|
|
551
552
|
.command('skill')
|
|
552
553
|
.description('Install Pipecraft skills for AI coding assistants (Claude Code, Cursor, etc.)')
|
|
553
554
|
.option('--install', 'Install skills (default action)')
|
|
554
|
-
.option('--uninstall', 'Remove installed
|
|
555
|
+
.option('--uninstall', 'Remove what was installed, leaving your own text in place')
|
|
555
556
|
.option('--list', 'List available targets and their status')
|
|
556
|
-
.option('--
|
|
557
|
-
.option('--
|
|
558
|
-
.option('--
|
|
559
|
-
.option('--target <targets>', 'Specific targets to install (comma-separated: claude-code,cursor,copilot,windsurf)')
|
|
557
|
+
.option('--local', 'Install into this project (default)')
|
|
558
|
+
.option('--global', 'Install into your home directory (Claude Code only)')
|
|
559
|
+
.option('--target <targets>', 'Specific targets (comma-separated: claude-code,cursor,copilot,windsurf,cline,codex)')
|
|
560
560
|
.action(async (options) => {
|
|
561
561
|
try {
|
|
562
|
-
const { installSkills, uninstallSkills, listSkillTargets } = await import('../utils/skill-installer.js');
|
|
562
|
+
const { installSkills, uninstallSkills, listSkillTargets, SKILL_TARGETS } = await import('../utils/skill-installer.js');
|
|
563
563
|
// List mode
|
|
564
564
|
if (options.list) {
|
|
565
565
|
const targets = listSkillTargets();
|
|
566
566
|
console.log('\nš AI Coding Assistant Skill Targets:\n');
|
|
567
567
|
for (const target of targets) {
|
|
568
|
-
const status = target.
|
|
569
|
-
?
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
568
|
+
const status = target.hasSkill
|
|
569
|
+
? 'ā
Installed'
|
|
570
|
+
: target.detected
|
|
571
|
+
? 'ā ļø Detected (no skill)'
|
|
572
|
+
: '⬠Not detected';
|
|
573
573
|
console.log(` ${status} ${target.displayName}`);
|
|
574
|
-
|
|
575
|
-
console.log(` ${target.globalPath}`);
|
|
576
|
-
}
|
|
574
|
+
console.log(` ${target.localPath}`);
|
|
577
575
|
}
|
|
578
576
|
console.log('\nRun `pipecraft skill --install` to install skills.');
|
|
579
577
|
console.log('');
|
|
@@ -583,14 +581,14 @@ program
|
|
|
583
581
|
if (options.uninstall) {
|
|
584
582
|
console.log('\nšļø Removing Pipecraft skills...\n');
|
|
585
583
|
const results = uninstallSkills({
|
|
586
|
-
global:
|
|
584
|
+
global: options.global,
|
|
587
585
|
local: options.local
|
|
588
586
|
});
|
|
589
587
|
const removed = results.filter(r => r.success);
|
|
590
588
|
if (removed.length > 0) {
|
|
591
589
|
console.log('Removed from:');
|
|
592
590
|
for (const r of removed) {
|
|
593
|
-
console.log(` ā
${r.target}`);
|
|
591
|
+
console.log(` ā
${r.target}: ${r.path}`);
|
|
594
592
|
}
|
|
595
593
|
}
|
|
596
594
|
else {
|
|
@@ -602,11 +600,17 @@ program
|
|
|
602
600
|
// Install mode (default)
|
|
603
601
|
console.log('\nš§ Installing Pipecraft skills for AI coding assistants...\n');
|
|
604
602
|
const targetList = options.target?.split(',').map((t) => t.trim());
|
|
603
|
+
const known = SKILL_TARGETS.map(t => t.name);
|
|
604
|
+
const unknown = (targetList ?? []).filter((t) => !known.includes(t));
|
|
605
|
+
if (unknown.length > 0) {
|
|
606
|
+
console.error(`ā Unknown target(s): ${unknown.join(', ')}`);
|
|
607
|
+
console.error(` Known targets: ${known.join(', ')}`);
|
|
608
|
+
process.exit(1);
|
|
609
|
+
}
|
|
605
610
|
const results = installSkills({
|
|
606
|
-
global:
|
|
611
|
+
global: options.global,
|
|
607
612
|
local: options.local,
|
|
608
|
-
targets: targetList
|
|
609
|
-
force: options.force
|
|
613
|
+
targets: targetList
|
|
610
614
|
});
|
|
611
615
|
const installed = results.filter(r => r.success && !r.skipped);
|
|
612
616
|
const skipped = results.filter(r => r.skipped);
|
|
@@ -618,11 +622,10 @@ program
|
|
|
618
622
|
}
|
|
619
623
|
}
|
|
620
624
|
if (skipped.length > 0) {
|
|
621
|
-
console.log('\nāļø Skipped
|
|
625
|
+
console.log('\nāļø Skipped:');
|
|
622
626
|
for (const r of skipped) {
|
|
623
|
-
console.log(` ${r.target}`);
|
|
627
|
+
console.log(` ${r.target}: ${r.reason}`);
|
|
624
628
|
}
|
|
625
|
-
console.log(' Use --force to install anyway');
|
|
626
629
|
}
|
|
627
630
|
if (failed.length > 0) {
|
|
628
631
|
console.log('\nā Failed:');
|
|
@@ -631,9 +634,11 @@ program
|
|
|
631
634
|
}
|
|
632
635
|
}
|
|
633
636
|
if (installed.length > 0) {
|
|
634
|
-
console.log('\nš
|
|
635
|
-
console.log(' Claude Code
|
|
636
|
-
console.log('
|
|
637
|
+
console.log('\nš Notes:');
|
|
638
|
+
console.log(' Claude Code reads .claude/skills/pipecraft/SKILL.md.');
|
|
639
|
+
console.log(' The rules files keep your own text; Pipecraft only maintains the block between');
|
|
640
|
+
console.log(' <!-- pipecraft:start --> and <!-- pipecraft:end -->.');
|
|
641
|
+
console.log(' Run `pipecraft skill --uninstall` to remove that block.');
|
|
637
642
|
}
|
|
638
643
|
console.log('');
|
|
639
644
|
}
|
package/dist/cli/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0EG;AAEH,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACnC,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAA;AAEnC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAA;AACjE,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAA;AAC3C,OAAO,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAA;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;AACjD,MAAM,SAAS,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;AAErC,iCAAiC;AACjC,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,oBAAoB,CAAC,EAAE,MAAM,CAAC,CAAC,CAAA;AAC3F,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAA;AAEnC,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAA;AAE7B,oBAAoB;AACpB,OAAO;KACJ,IAAI,CAAC,WAAW,CAAC;KACjB,WAAW,CAAC,yDAAyD,CAAC;KACtE,OAAO,CAAC,OAAO,CAAC,CAAA;AAEnB,iBAAiB;AACjB,OAAO;IACL,kFAAkF;IAClF,yFAAyF;IACzF,wFAAwF;IACxF,wDAAwD;KACvD,MAAM,CAAC,qBAAqB,EAAE,gDAAgD,CAAC;KAC/E,MAAM,CACL,uBAAuB,EACvB,4CAA4C,EAC5C,gCAAgC,CACjC;KACA,MAAM,CACL,8BAA8B,EAC9B,4CAA4C,EAC5C,gCAAgC,CACjC;KACA,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;KACzC,MAAM,CAAC,SAAS,EAAE,2EAA2E,CAAC;KAC9F,MAAM,CAAC,SAAS,EAAE,4CAA4C,CAAC;KAC/D,MAAM,CAAC,WAAW,EAAE,gDAAgD,CAAC,CAAA;AAExE,iEAAiE;AACjE,MAAM,iBAAiB,GAAG;IACxB,gBAAgB;IAChB,mBAAmB;IACnB,YAAY;IACZ,WAAW;IACX,gBAAgB;IAChB,eAAe;IACf,gBAAgB;CACR,CAAA;AAEV;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,MAAuB,EAAE,YAAoB;IACjE,MAAM,IAAI,GAAG,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAA;IAEvE,MAAM,CAAC,IAAI,CAAC,0CAA0C,CAAC,CAAA;IAEvD,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAA;IACzB,KAAK,MAAM,IAAI,IAAI;QACjB,YAAY;QACZ,yCAAyC;QACzC,GAAG,CAAC,MAAM,CAAC,0BAA0B,KAAK,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,sCAAsC,CAAC,CAAC;KACjG,EAAE,CAAC;QACF,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAClD,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAA;IACnC,KAAK,MAAM,IAAI,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,mBAAmB,IAAI,aAAa,CAAA;QACjD,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAClD,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAA;IAChC,MAAM,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAA;IAErE,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAA4C,CAAA;IACjF,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC;SAC9B,IAAI,EAAE;SACN,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC,CAAC,CAAA;IAE3F,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;IAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,6EAA6E,CAAC,CAAA;IAC5F,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACvB,MAAM,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,CAAA;QACzB,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CACT,+DAA+D;QAC7D,mBAAmB,CAAC,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAC7D,CAAA;AACH,CAAC;AAED,0CAA0C;AAC1C,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,oCAAoC,CAAC;KACjD,MAAM,CAAC,aAAa,EAAE,gCAAgC,CAAC;KACvD,MAAM,CAAC,mBAAmB,EAAE,kCAAkC,CAAC;KAC/D,MAAM,CAAC,cAAc,EAAE,oCAAoC,CAAC;KAC5D,MAAM,CAAC,0BAA0B,EAAE,6BAA6B,EAAE,QAAQ,CAAC;KAC3E,MAAM,CAAC,6BAA6B,EAAE,qCAAqC,EAAE,cAAc,CAAC;KAC5F,MAAM,CAAC,2BAA2B,EAAE,4BAA4B,EAAE,SAAS,CAAC;KAC5E,MAAM,CAAC,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,CAAC;IACrE,sFAAsF;IACtF,2DAA2D;KAC1D,MAAM,CAAC,WAAW,EAAE,+DAA+D,CAAC;KACpF,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QAEpC,oFAAoF;QACpF,mFAAmF;QACnF,+EAA+E;QAC/E,yBAAyB;QACzB,MAAM,cAAc,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAA;QAEnE,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,2BAA2B,CAAC,EAAE;YAC5D,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,6EAA6E;YAC7E,cAAc;YACd,UAAU,EAAE,OAAO,CAAC,UAAU;YAC9B,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,WAAW,EAAE,OAAO,CAAC,WAAW;YAChC,MAAM,EAAE;gBACN,MAAM,EAAE;oBACN,GAAG,OAAO;oBACV,MAAM,EAAE,OAAO,CAAC,GAAG;iBACpB;gBACD,MAAM,EAAE,MAAa;gBACrB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC,KAAK,IAAI,KAAK;gBACpD,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,KAAK,EAAE,OAAe,EAAE,IAAc,EAAE,EAAE;oBAC9C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;oBAC/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;wBACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;wBACrE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;oBACnF,CAAC,CAAC,CAAA;gBACJ,CAAC;aACF;SACK,CAAC,CAAA;QAET,wCAAwC;QACxC,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;YAC/C,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;YACjD,cAAc,CAAC,sBAAsB,EAAE,CAAA;YACvC,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAA;QACtD,CAAC;QAED,iCAAiC;QACjC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAA;YACrE,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAA;YAC5D,uFAAuF;YACvF,MAAM,OAAO,GAAG,aAAa,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;YAC9C,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC9D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,yBAAyB,EAAE,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;YACjF,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAA;QAExD,oDAAoD;QACpD,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CACT,uFAAuF,CACxF,CAAA;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,OAAO,CAAC,CAAA;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,6CAA6C;AAC7C,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,MAAM,CAAC,qBAAqB,EAAE,0CAA0C,EAAE,mBAAmB,CAAC;KAC9F,MAAM,CAAC,kBAAkB,EAAE,iCAAiC,CAAC;KAC7D,MAAM,CAAC,eAAe,EAAE,0CAA0C,CAAC;KACnE,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QACpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAA;QACvC,MAAM,YAAY,GAAG,aAAa,CAAC,QAAQ,CAAA;QAC3C,MAAM,kBAAkB,GAAG,aAAa,CAAC,cAAc,CAAA;QAEvD,kCAAkC;QAClC,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;QAC1B,CAAC;aAAM,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YACjC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC5B,CAAC;QAED,uCAAuC;QACvC,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAA;YAEhD,MAAM,MAAM,GAAG,kBAAkB,EAAE,CAAA;YACnC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,sBAAsB,CAAC,MAAM,CAAC,CAAA;YAEvE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACnB,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAEf,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,KAAK,CAAC,iEAAiE,CAAC,CAAA;gBAC/E,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAA;gBACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;YACjB,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAA;YAE9C,mEAAmE;YACnE,IAAI,SAAS,EAAE,CAAC;gBACd,CAAC;gBAAC,OAAe,CAAC,UAAU,GAAG,SAAS,CAAA;YAC1C,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,CAAC,OAAO,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAA;QACvD,MAAM,CAAC,OAAO,CAAC,6BAA6B,YAAY,EAAE,CAAC,CAAA;QAE3D,kCAAkC;QAClC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAoB,CAAA;QACxD,cAAc,CAAC,MAAM,CAAC,CAAA;QAEtB,IAAI,aAAa,CAAC,MAAM,EAAE,CAAC;YACzB,YAAY,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;YAClC,OAAM;QACR,CAAC;QAED,uBAAuB;QACvB,IAAI,aAAa,CAAC,KAAK,EAAE,CAAC;YACxB,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAA;QACjE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAA;QACjE,CAAC;QAED,MAAM,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,gCAAgC,CAAC,EAAE;YACjE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;YAClB,IAAI,EAAE,OAAO,CAAC,IAAI;YAClB,YAAY,EAAE,YAAY;YAC1B,kBAAkB,EAAE,kBAAkB;YACtC,MAAM,EAAE,MAAM;YACd,MAAM,EAAE;gBACN,MAAM,EAAE;oBACN,GAAG,OAAO;oBACV,MAAM,EAAE,OAAO,CAAC,GAAG;iBACpB;gBACD,MAAM,EAAE,MAAa;gBACrB,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE;gBAClB,KAAK,EAAE,aAAa,CAAC,KAAK,IAAI,KAAK;gBACnC,KAAK,EAAE,EAAE;gBACT,IAAI,EAAE,KAAK,EAAE,OAAe,EAAE,IAAc,EAAE,EAAE;oBAC9C,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;oBAC/C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;wBACrC,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;wBACrE,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;oBACnF,CAAC,CAAC,CAAA;gBACJ,CAAC;aACF;SACK,CAAC,CAAA;QAET,MAAM,CAAC,OAAO,CAAC,6BAA6B,OAAO,CAAC,MAAM,EAAE,CAAC,CAAA;QAE7D,kCAAkC;QAClC,IAAK,OAAe,CAAC,UAAU,EAAE,CAAC;YAChC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACf,MAAM,KAAK,GAAI,OAAe,CAAC,UAAsB,CAAA;YACrD,KAAK,CAAC,OAAO,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAA;QACpD,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,MAAM,CAAC,KAAK,CAAC,iCAAiC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,+CAA+C;AAC/C,OAAO;KACJ,OAAO,CAAC,YAAY,CAAC;KACrB,WAAW,CAAC,uEAAuE,CAAC;KACpF,QAAQ,CAAC,OAAO,EAAE,oEAAoE,CAAC;KACvF,MAAM,CAAC,mBAAmB,EAAE,8CAA8C,EAAE,KAAK,CAAC;KAClF,MAAM,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE;IAC7B,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QACpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAA;QAEvC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;QACrC,cAAc,CAAC,MAAM,CAAC,CAAA;QAEtB,sDAAsD;QACtD,MAAM,QAAQ,GAAG,CAAC,GAAQ,EAAE,IAAY,EAAO,EAAE;YAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,GAAG,EAAE,EAAE;gBAC7C,OAAO,OAAO,EAAE,CAAC,GAAG,CAAC,CAAA;YACvB,CAAC,EAAE,GAAG,CAAC,CAAA;QACT,CAAC,CAAA;QAED,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;QAEnC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,CAAC,KAAK,CAAC,QAAQ,GAAG,8BAA8B,CAAC,CAAA;YACxD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,+BAA+B;QAC/B,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;QACpC,CAAC;aAAM,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAiB,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YACxE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9B,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,sCAAsC;YACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;QAC9B,CAAC;aAAM,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YACvD,4BAA4B;YAC5B,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;QACpC,CAAC;aAAM,CAAC;YACN,oCAAoC;YACpC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAA;QAC/D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,sEAAsE;AACtE,OAAO;KACJ,OAAO,CAAC,UAAU,CAAC;KACnB,WAAW,CAAC,6BAA6B,CAAC;KAC1C,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QACpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAA;QAEvC,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAC,CAAA;QACrC,cAAc,CAAC,MAAM,CAAC,CAAA;QAEtB,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAA;IAC1C,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,OAAO,CAAC,KAAK,CAAC,oCAAoC,EAAE,OAAO,CAAC,CAAA;QAC5D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,8CAA8C;AAC9C,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,+CAA+C,CAAC;KAC5D,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,oBAAoB,CAAC,CAAA;QAE5E,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAA;QAChC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,CAAA;QAEvC,2CAA2C;QAC3C,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;IACH,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,OAAO,CAAC,KAAK,CAAC,0BAA0B,EAAE,OAAO,CAAC,CAAA;QAClD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,uCAAuC;AACvC,2FAA2F;AAC3F,qFAAqF;AACrF,uFAAuF;AACvF,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,uEAAuE,CAAC;KACpF,MAAM,CAAC,SAAS,EAAE,wCAAwC,CAAC;KAC3D,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QACpC,MAAM,MAAM,GAAG,UAAU,CAAC,aAAa,CAAC,MAAM,CAAoB,CAAA;QAClE,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,MAAM,CAAC,CAAA;QAEjD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;YAClB,MAAM,cAAc,GAAG,cAAc,CAAC,iBAAiB,EAAE,CAAA;YACzD,MAAM,WAAW,GAAG,cAAc,CAAC,oBAAoB,EAAE,CAAA;YAEzD,OAAO,CAAC,GAAG,CAAC,uBAAuB,cAAc,EAAE,CAAC,CAAA;YACpD,OAAO,CAAC,GAAG,CAAC,oBAAoB,WAAW,CAAC,OAAO,KAAK,WAAW,CAAC,IAAI,GAAG,CAAC,CAAA;YAE5E,6BAA6B;YAC7B,MAAM,OAAO,GAAG,cAAc,CAAC,2BAA2B,EAAE,CAAA;YAC5D,OAAO,CAAC,GAAG,CAAC,4BAA4B,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAA;QAC9E,CAAC;IACH,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QACzD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,4CAA4C;AAC5C,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,gEAAgE,CAAC;KAC7E,MAAM,CAAC,SAAS,EAAE,uCAAuC,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,OAAO,CAAC,IAAI,EAAE,CAAA;QACpC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAA;QAEvC,IAAI,aAAa,CAAC,OAAO,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,2BAA2B,UAAU,EAAE,CAAC,CAAA;QACtD,CAAC;QAED,qBAAqB;QACrB,MAAM,MAAM,GAAG,UAAU,CAAC,UAAU,CAAoB,CAAA;QAExD,IAAI,CAAC,MAAM,CAAC,UAAU,IAAI,MAAM,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzD,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAA;YAC3D,OAAM;QACR,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;QAEvE,uBAAuB;QACvB,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,MAAM,CAAC,eAAe,CAAC,CAAA;QAClD,MAAM,aAAa,GAAG,QAAQ,CAAC,2BAA2B,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAA;QACxF,OAAO,CAAC,GAAG,CAAC,sBAAsB,aAAa,EAAE,CAAC,CAAA;QAElD,6BAA6B;QAC7B,MAAM,gBAAgB,GAAG,QAAQ,CAAC,eAAe,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;aACrE,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC,CAAC;aACzE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;QAElC,OAAO,CAAC,GAAG,CAAC,yBAAyB,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAEnE,0BAA0B;QAC1B,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;YACvC,IAAI,gBAAgB,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,0BAA0B,CAAC,CAAA;YAC5D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,uBAAuB,MAAM,MAAM,CAAC,CAAA;gBAChD,IAAI,CAAC;oBACH,+DAA+D;oBAC/D,4EAA4E;oBAC5E,6EAA6E;oBAC7E,8EAA8E;oBAC9E,6EAA6E;oBAC7E,QAAQ,CAAC,cAAc,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;oBACtD,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,GAAG,CAAC,CAAA;gBAC7C,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;wBAC7C,OAAO,CAAC,GAAG,CAAC,eAAe,MAAM,4CAA4C,CAAC,CAAA;oBAChF,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAA;oBACb,CAAC;gBACH,CAAC;YACH,CAAC;YAED,mDAAmD;YACnD,gFAAgF;YAChF,8EAA8E;YAC9E,2EAA2E;YAC3E,OAAO,CAAC,GAAG,CAAC,mBAAmB,MAAM,uBAAuB,CAAC,CAAA;YAC7D,MAAM,SAAS,GAAG,QAAQ,CAAC,gCAAgC,MAAM,EAAE,EAAE;gBACnE,QAAQ,EAAE,MAAM;aACjB,CAAC,CAAC,IAAI,EAAE,CAAA;YACT,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,GAAG,CAAC,aAAa,MAAM,4BAA4B,CAAC,CAAA;YAC9D,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,sBAAsB,MAAM,gBAAgB,CAAC,CAAA;gBACzD,QAAQ,CAAC,sBAAsB,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAA;gBAC9D,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,aAAa,CAAC,CAAA;YACtD,CAAC;QACH,CAAC;QAED,+DAA+D;QAC/D,OAAO,CAAC,GAAG,CAAC,sCAAsC,aAAa,IAAI,CAAC,CAAA;IACtE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QACvD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,8DAA8D;AAC9D,OAAO;KACJ,OAAO,CAAC,cAAc,CAAC;KACvB,WAAW,CAAC,6DAA6D,CAAC;KAC1E,MAAM,CAAC,SAAS,EAAE,+CAA+C,CAAC;KAClE,MAAM,CAAC,SAAS,EAAE,mBAAmB,CAAC;KACtC,MAAM,CAAC,WAAW,EAAE,qCAAqC,CAAC;KAC1D,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,CAAA;QAEhD,MAAM,sBAAsB,CAAC,SAAS,CAAC,CAAA;IACzC,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QACpB,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAA;QACtD,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YAChB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QAC5B,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,qDAAqD;AACrD,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,+EAA+E,CAAC;KAC5F,MAAM,CAAC,WAAW,EAAE,iCAAiC,CAAC;KACtD,MAAM,CAAC,aAAa,EAAE,2DAA2D,CAAC;KAClF,MAAM,CAAC,QAAQ,EAAE,yCAAyC,CAAC;KAC3D,MAAM,CAAC,SAAS,EAAE,qCAAqC,CAAC;KACxD,MAAM,CAAC,UAAU,EAAE,qDAAqD,CAAC;KACzE,MAAM,CACL,oBAAoB,EACpB,qFAAqF,CACtF;KACA,MAAM,CAAC,KAAK,EAAC,OAAO,EAAC,EAAE;IACtB,IAAI,CAAC;QACH,MAAM,EAAE,aAAa,EAAE,eAAe,EAAE,gBAAgB,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CACtF,6BAA6B,CAC9B,CAAA;QAED,YAAY;QACZ,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,gBAAgB,EAAE,CAAA;YAClC,OAAO,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAA;YAExD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ;oBAC5B,CAAC,CAAC,aAAa;oBACf,CAAC,CAAC,MAAM,CAAC,QAAQ;wBACjB,CAAC,CAAC,yBAAyB;wBAC3B,CAAC,CAAC,iBAAiB,CAAA;gBACrB,OAAO,CAAC,GAAG,CAAC,MAAM,MAAM,KAAK,MAAM,CAAC,WAAW,EAAE,CAAC,CAAA;gBAClD,OAAO,CAAC,GAAG,CAAC,gBAAgB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAA;YACjD,CAAC;YAED,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAA;YACnE,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACf,OAAM;QACR,CAAC;QAED,iBAAiB;QACjB,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,uCAAuC,CAAC,CAAA;YAEpD,MAAM,OAAO,GAAG,eAAe,CAAC;gBAC9B,MAAM,EAAE,OAAO,CAAC,MAAM;gBACtB,KAAK,EAAE,OAAO,CAAC,KAAK;aACrB,CAAC,CAAA;YAEF,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;YAC9C,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAAA;gBAC5B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;oBACxB,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;gBAC5C,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAA;YAC3C,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YACf,OAAM;QACR,CAAC;QAED,yBAAyB;QACzB,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAA;QAE7E,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QAC1E,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QAC5C,MAAM,OAAO,GAAG,CAAC,UAAU,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5E,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,KAAK,CAAC,wBAAwB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YAC3D,OAAO,CAAC,KAAK,CAAC,qBAAqB,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACjB,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC;YAC5B,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,OAAO,EAAE,UAAU;SACpB,CAAC,CAAA;QAEF,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAC9D,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;QAE5D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAA;YAC9B,KAAK,MAAM,CAAC,IAAI,SAAS,EAAE,CAAC;gBAC1B,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;YAC1C,CAAC;QACH,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;YAC7B,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;gBACxB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAA;YAC5C,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;YAC1B,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC,CAAA;YAC3C,CAAC;QACH,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;YAC1B,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAA;YACtE,OAAO,CAAC,GAAG,CACT,mFAAmF,CACpF,CAAA;YACD,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAA;YACtE,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAA;QAC3E,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;IACjB,CAAC;IAAC,OAAO,KAAc,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QACtE,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,OAAO,CAAC,CAAA;QACjD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;IACjB,CAAC;AACH,CAAC,CAAC,CAAA;AAEJ,+BAA+B;AAC/B,OAAO,CAAC,KAAK,EAAE,CAAA;AAEf,mCAAmC;AACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,OAAO,CAAC,UAAU,EAAE,CAAA;AACtB,CAAC"}
|
|
@@ -1,14 +1,32 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AI Skill Installer
|
|
3
3
|
*
|
|
4
|
-
* Installs Pipecraft
|
|
4
|
+
* Installs the Pipecraft skill for AI coding assistants.
|
|
5
|
+
*
|
|
6
|
+
* Each tool reads a different file. Claude Code reads `.claude/skills/pipecraft/SKILL.md`,
|
|
7
|
+
* a directory Pipecraft owns outright. The other five read a rules file at the project root
|
|
8
|
+
* that the user writes and owns: `.cursorrules`, `.github/copilot-instructions.md`,
|
|
9
|
+
* `.windsurfrules`, `.clinerules`, `AGENTS.md`. Pipecraft claims a marked block inside those
|
|
10
|
+
* and never changes a byte outside it, so reinstalling updates the block and uninstalling
|
|
11
|
+
* gives the file back.
|
|
5
12
|
*/
|
|
13
|
+
/** Delimiters of the region Pipecraft maintains inside a file the user owns. */
|
|
14
|
+
export declare const BLOCK_START = "<!-- pipecraft:start -->";
|
|
15
|
+
export declare const BLOCK_END = "<!-- pipecraft:end -->";
|
|
6
16
|
export interface SkillTarget {
|
|
7
17
|
name: string;
|
|
8
18
|
displayName: string;
|
|
9
|
-
|
|
19
|
+
/** Destination relative to the project root. */
|
|
10
20
|
localPath: string;
|
|
11
|
-
|
|
21
|
+
/** Destination relative to the home directory, for tools that document a global location. */
|
|
22
|
+
globalPath?: string;
|
|
23
|
+
/**
|
|
24
|
+
* True when the destination is a directory Pipecraft owns and may rewrite whole.
|
|
25
|
+
* False when the user owns the file, which means a marked block and nothing else.
|
|
26
|
+
*/
|
|
27
|
+
ownsFile: boolean;
|
|
28
|
+
/** Project paths whose presence means the tool is in use here. */
|
|
29
|
+
detect: string[];
|
|
12
30
|
}
|
|
13
31
|
export interface InstallResult {
|
|
14
32
|
target: string;
|
|
@@ -17,38 +35,51 @@ export interface InstallResult {
|
|
|
17
35
|
error?: string;
|
|
18
36
|
skipped?: boolean;
|
|
19
37
|
reason?: string;
|
|
38
|
+
action?: 'created' | 'updated' | 'removed';
|
|
20
39
|
}
|
|
21
40
|
/**
|
|
22
|
-
* Supported AI coding assistant targets
|
|
41
|
+
* Supported AI coding assistant targets.
|
|
42
|
+
*
|
|
43
|
+
* Only Claude Code gets a global entry. The other five formats are project files, and a copy
|
|
44
|
+
* in the home directory is a file no tool loads.
|
|
23
45
|
*/
|
|
24
46
|
export declare const SKILL_TARGETS: SkillTarget[];
|
|
25
47
|
export interface InstallOptions {
|
|
26
48
|
global?: boolean;
|
|
27
49
|
local?: boolean;
|
|
28
50
|
targets?: string[];
|
|
29
|
-
force?: boolean;
|
|
30
51
|
cwd?: string;
|
|
52
|
+
/** Home directory to install into. Tests pass a temporary one. */
|
|
53
|
+
home?: string;
|
|
31
54
|
}
|
|
55
|
+
/** Tools whose marker files are present in the project. */
|
|
56
|
+
export declare function detectTargets(cwd?: string): string[];
|
|
32
57
|
/**
|
|
33
|
-
* Install Pipecraft
|
|
58
|
+
* Install the Pipecraft skill for AI coding assistants.
|
|
59
|
+
*
|
|
60
|
+
* Local is the default scope, because five of the six formats only exist inside a project.
|
|
34
61
|
*/
|
|
35
62
|
export declare function installSkills(options?: InstallOptions): InstallResult[];
|
|
36
|
-
|
|
37
|
-
* List available skill targets and their status
|
|
38
|
-
*/
|
|
39
|
-
export declare function listSkillTargets(): Array<{
|
|
63
|
+
export interface TargetStatus {
|
|
40
64
|
name: string;
|
|
41
65
|
displayName: string;
|
|
42
|
-
|
|
43
|
-
globalPath
|
|
66
|
+
localPath: string;
|
|
67
|
+
globalPath?: string;
|
|
68
|
+
/** The tool's marker files are present in this project. */
|
|
69
|
+
detected: boolean;
|
|
70
|
+
/** Pipecraft's skill is already installed here. */
|
|
44
71
|
hasSkill: boolean;
|
|
45
|
-
}
|
|
46
|
-
/**
|
|
47
|
-
|
|
48
|
-
|
|
72
|
+
}
|
|
73
|
+
/** List every target, whether the project uses it, and whether the skill is already there. */
|
|
74
|
+
export declare function listSkillTargets(options?: {
|
|
75
|
+
cwd?: string;
|
|
76
|
+
home?: string;
|
|
77
|
+
}): TargetStatus[];
|
|
78
|
+
/** Remove what `installSkills` wrote, and nothing else. */
|
|
49
79
|
export declare function uninstallSkills(options?: {
|
|
50
80
|
global?: boolean;
|
|
51
81
|
local?: boolean;
|
|
52
82
|
cwd?: string;
|
|
83
|
+
home?: string;
|
|
53
84
|
}): InstallResult[];
|
|
54
85
|
//# sourceMappingURL=skill-installer.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-installer.d.ts","sourceRoot":"","sources":["../../src/utils/skill-installer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"skill-installer.d.ts","sourceRoot":"","sources":["../../src/utils/skill-installer.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,gFAAgF;AAChF,eAAO,MAAM,WAAW,6BAA6B,CAAA;AACrD,eAAO,MAAM,SAAS,2BAA2B,CAAA;AAEjD,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,gDAAgD;IAChD,SAAS,EAAE,MAAM,CAAA;IACjB,6FAA6F;IAC7F,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;OAGG;IACH,QAAQ,EAAE,OAAO,CAAA;IACjB,kEAAkE;IAClE,MAAM,EAAE,MAAM,EAAE,CAAA;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,MAAM,CAAA;IACd,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAA;CAC3C;AAED;;;;;GAKG;AACH,eAAO,MAAM,aAAa,EAAE,WAAW,EA4CtC,CAAA;AAgHD,MAAM,WAAW,cAAc;IAC7B,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,GAAG,CAAC,EAAE,MAAM,CAAA;IACZ,kEAAkE;IAClE,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED,2DAA2D;AAC3D,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAsB,GAAG,MAAM,EAAE,CAInE;AAaD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE,cAAmB,GAAG,aAAa,EAAE,CA8B3E;AAiBD,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,2DAA2D;IAC3D,QAAQ,EAAE,OAAO,CAAA;IACjB,mDAAmD;IACnD,QAAQ,EAAE,OAAO,CAAA;CAClB;AAED,8FAA8F;AAC9F,wBAAgB,gBAAgB,CAAC,OAAO,GAAE;IAAE,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,YAAY,EAAE,CAkB9F;AAQD,2DAA2D;AAC3D,wBAAgB,eAAe,CAC7B,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/E,aAAa,EAAE,CAiBjB"}
|
|
@@ -1,43 +1,73 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* AI Skill Installer
|
|
3
3
|
*
|
|
4
|
-
* Installs Pipecraft
|
|
4
|
+
* Installs the Pipecraft skill for AI coding assistants.
|
|
5
|
+
*
|
|
6
|
+
* Each tool reads a different file. Claude Code reads `.claude/skills/pipecraft/SKILL.md`,
|
|
7
|
+
* a directory Pipecraft owns outright. The other five read a rules file at the project root
|
|
8
|
+
* that the user writes and owns: `.cursorrules`, `.github/copilot-instructions.md`,
|
|
9
|
+
* `.windsurfrules`, `.clinerules`, `AGENTS.md`. Pipecraft claims a marked block inside those
|
|
10
|
+
* and never changes a byte outside it, so reinstalling updates the block and uninstalling
|
|
11
|
+
* gives the file back.
|
|
5
12
|
*/
|
|
6
|
-
import { existsSync, mkdirSync,
|
|
7
|
-
import { dirname, join } from 'path';
|
|
13
|
+
import { existsSync, mkdirSync, readFileSync, rmSync, unlinkSync, writeFileSync } from 'fs';
|
|
8
14
|
import { homedir } from 'os';
|
|
15
|
+
import { dirname, join } from 'path';
|
|
9
16
|
import { fileURLToPath } from 'url';
|
|
10
17
|
const __filename = fileURLToPath(import.meta.url);
|
|
11
18
|
const __dirname = dirname(__filename);
|
|
19
|
+
/** Delimiters of the region Pipecraft maintains inside a file the user owns. */
|
|
20
|
+
export const BLOCK_START = '<!-- pipecraft:start -->';
|
|
21
|
+
export const BLOCK_END = '<!-- pipecraft:end -->';
|
|
12
22
|
/**
|
|
13
|
-
* Supported AI coding assistant targets
|
|
23
|
+
* Supported AI coding assistant targets.
|
|
24
|
+
*
|
|
25
|
+
* Only Claude Code gets a global entry. The other five formats are project files, and a copy
|
|
26
|
+
* in the home directory is a file no tool loads.
|
|
14
27
|
*/
|
|
15
28
|
export const SKILL_TARGETS = [
|
|
16
29
|
{
|
|
17
30
|
name: 'claude-code',
|
|
18
31
|
displayName: 'Claude Code',
|
|
19
|
-
|
|
20
|
-
|
|
32
|
+
localPath: join('.claude', 'skills', 'pipecraft', 'SKILL.md'),
|
|
33
|
+
globalPath: join('.claude', 'skills', 'pipecraft', 'SKILL.md'),
|
|
34
|
+
ownsFile: true,
|
|
35
|
+
detect: ['.claude', 'CLAUDE.md']
|
|
21
36
|
},
|
|
22
37
|
{
|
|
23
38
|
name: 'cursor',
|
|
24
39
|
displayName: 'Cursor',
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
40
|
+
localPath: '.cursorrules',
|
|
41
|
+
ownsFile: false,
|
|
42
|
+
detect: ['.cursor', '.cursorrules']
|
|
28
43
|
},
|
|
29
44
|
{
|
|
30
45
|
name: 'copilot',
|
|
31
46
|
displayName: 'GitHub Copilot',
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
47
|
+
localPath: join('.github', 'copilot-instructions.md'),
|
|
48
|
+
ownsFile: false,
|
|
49
|
+
detect: ['.github']
|
|
35
50
|
},
|
|
36
51
|
{
|
|
37
52
|
name: 'windsurf',
|
|
38
53
|
displayName: 'Windsurf',
|
|
39
|
-
|
|
40
|
-
|
|
54
|
+
localPath: '.windsurfrules',
|
|
55
|
+
ownsFile: false,
|
|
56
|
+
detect: ['.windsurf', '.windsurfrules']
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
name: 'cline',
|
|
60
|
+
displayName: 'Cline / Roo Code',
|
|
61
|
+
localPath: '.clinerules',
|
|
62
|
+
ownsFile: false,
|
|
63
|
+
detect: ['.clinerules']
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
name: 'codex',
|
|
67
|
+
displayName: 'OpenAI Codex',
|
|
68
|
+
localPath: 'AGENTS.md',
|
|
69
|
+
ownsFile: false,
|
|
70
|
+
detect: ['AGENTS.md']
|
|
41
71
|
}
|
|
42
72
|
];
|
|
43
73
|
/**
|
|
@@ -78,174 +108,204 @@ pipecraft setup # Create branches
|
|
|
78
108
|
pipecraft setup-github # GitHub permissions
|
|
79
109
|
\`\`\`
|
|
80
110
|
|
|
81
|
-
##
|
|
111
|
+
## Key Behaviours
|
|
82
112
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
ciProvider: github
|
|
87
|
-
mergeStrategy: fast-forward
|
|
88
|
-
requireConventionalCommits: true
|
|
89
|
-
initialBranch: develop # Must be FIRST in branchFlow
|
|
90
|
-
finalBranch: main # Must be LAST in branchFlow
|
|
91
|
-
branchFlow: [develop, main]
|
|
92
|
-
semver:
|
|
93
|
-
bumpRules:
|
|
94
|
-
feat: minor
|
|
95
|
-
fix: patch
|
|
96
|
-
breaking: major
|
|
97
|
-
domains:
|
|
98
|
-
app:
|
|
99
|
-
paths: ["src/**"]
|
|
100
|
-
description: "App code"
|
|
101
|
-
\`\`\`
|
|
102
|
-
|
|
103
|
-
## Reserved Domain Names
|
|
104
|
-
|
|
105
|
-
Cannot use: \`version\`, \`changes\`, \`gate\`, \`tag\`, \`promote\`, \`release\`
|
|
113
|
+
- \`autoPromote: false\` still opens the promotion PR; it only leaves the merge to a human.
|
|
114
|
+
- Only commits GitHub itself authored promote. A directly pushed commit never releases.
|
|
115
|
+
- Domain job bodies are yours. Pipecraft writes the placeholder and never fills it in.
|
|
106
116
|
|
|
107
117
|
For full documentation, see https://pipecraft.thecraftlab.dev
|
|
108
118
|
`;
|
|
109
119
|
}
|
|
120
|
+
/** The skill without its YAML frontmatter, which means nothing inside a rules file. */
|
|
121
|
+
function skillBody(content) {
|
|
122
|
+
const match = content.match(/^---\n[\s\S]*?\n---\n+/);
|
|
123
|
+
return match ? content.slice(match[0].length) : content;
|
|
124
|
+
}
|
|
125
|
+
/** The block Pipecraft maintains, delimiters included. */
|
|
126
|
+
function skillBlock(content) {
|
|
127
|
+
return `${BLOCK_START}\n${skillBody(content).trim()}\n${BLOCK_END}`;
|
|
128
|
+
}
|
|
110
129
|
/**
|
|
111
|
-
*
|
|
130
|
+
* Write the block into a file the user owns.
|
|
131
|
+
*
|
|
132
|
+
* A file with no block gets one appended after its existing text. A file with a block keeps
|
|
133
|
+
* everything around it and gets the block's contents replaced.
|
|
112
134
|
*/
|
|
113
|
-
function
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
writeFileSync(
|
|
118
|
-
return
|
|
135
|
+
function writeBlock(filePath, content) {
|
|
136
|
+
const block = skillBlock(content);
|
|
137
|
+
mkdirSync(dirname(filePath), { recursive: true });
|
|
138
|
+
if (!existsSync(filePath)) {
|
|
139
|
+
writeFileSync(filePath, `${block}\n`, 'utf8');
|
|
140
|
+
return 'created';
|
|
119
141
|
}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
142
|
+
const existing = readFileSync(filePath, 'utf8');
|
|
143
|
+
const start = existing.indexOf(BLOCK_START);
|
|
144
|
+
const end = existing.indexOf(BLOCK_END);
|
|
145
|
+
if (start !== -1 && end !== -1 && end > start) {
|
|
146
|
+
const before = existing.slice(0, start);
|
|
147
|
+
const after = existing.slice(end + BLOCK_END.length);
|
|
148
|
+
writeFileSync(filePath, `${before}${block}${after}`, 'utf8');
|
|
149
|
+
return 'updated';
|
|
123
150
|
}
|
|
151
|
+
const separator = existing.endsWith('\n') ? '\n' : '\n\n';
|
|
152
|
+
writeFileSync(filePath, `${existing}${separator}${block}\n`, 'utf8');
|
|
153
|
+
return 'updated';
|
|
124
154
|
}
|
|
125
|
-
/**
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
const
|
|
131
|
-
|
|
155
|
+
/** Remove the block, and the file too when the block was all it held. */
|
|
156
|
+
function removeBlock(filePath) {
|
|
157
|
+
if (!existsSync(filePath))
|
|
158
|
+
return undefined;
|
|
159
|
+
const existing = readFileSync(filePath, 'utf8');
|
|
160
|
+
const start = existing.indexOf(BLOCK_START);
|
|
161
|
+
const end = existing.indexOf(BLOCK_END);
|
|
162
|
+
if (start === -1 || end === -1 || end < start)
|
|
163
|
+
return undefined;
|
|
164
|
+
const remainder = existing.slice(0, start) + existing.slice(end + BLOCK_END.length);
|
|
165
|
+
if (remainder.trim() === '') {
|
|
166
|
+
unlinkSync(filePath);
|
|
167
|
+
}
|
|
168
|
+
else {
|
|
169
|
+
writeFileSync(filePath, remainder.replace(/\n{3,}$/, '\n'), 'utf8');
|
|
170
|
+
}
|
|
171
|
+
return 'removed';
|
|
172
|
+
}
|
|
173
|
+
/** Tools whose marker files are present in the project. */
|
|
174
|
+
export function detectTargets(cwd = process.cwd()) {
|
|
175
|
+
return SKILL_TARGETS.filter(target => target.detect.some(marker => existsSync(join(cwd, marker)))).map(target => target.name);
|
|
176
|
+
}
|
|
177
|
+
/** Targets to act on: an explicit list, else what the project shows, else every format. */
|
|
178
|
+
function resolveTargets(options, cwd) {
|
|
179
|
+
if (options.targets && options.targets.length > 0) {
|
|
180
|
+
return SKILL_TARGETS.filter(t => options.targets.includes(t.name));
|
|
181
|
+
}
|
|
182
|
+
const detected = detectTargets(cwd);
|
|
183
|
+
if (detected.length === 0)
|
|
184
|
+
return SKILL_TARGETS;
|
|
185
|
+
return SKILL_TARGETS.filter(t => detected.includes(t.name));
|
|
132
186
|
}
|
|
133
187
|
/**
|
|
134
|
-
* Install Pipecraft
|
|
188
|
+
* Install the Pipecraft skill for AI coding assistants.
|
|
189
|
+
*
|
|
190
|
+
* Local is the default scope, because five of the six formats only exist inside a project.
|
|
135
191
|
*/
|
|
136
192
|
export function installSkills(options = {}) {
|
|
137
193
|
const results = [];
|
|
138
194
|
const content = getSkillContent();
|
|
139
195
|
const cwd = options.cwd || process.cwd();
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
}
|
|
145
|
-
for (const target of targets) {
|
|
146
|
-
// Determine installation scope
|
|
147
|
-
const installGlobal = options.global ?? true;
|
|
148
|
-
const installLocal = options.local ?? false;
|
|
149
|
-
// Global installation
|
|
196
|
+
const home = options.home || homedir();
|
|
197
|
+
const installGlobal = options.global ?? false;
|
|
198
|
+
const installLocal = options.local ?? !installGlobal;
|
|
199
|
+
for (const target of resolveTargets(options, cwd)) {
|
|
150
200
|
if (installGlobal) {
|
|
151
|
-
|
|
152
|
-
if (!options.force && !isTargetInstalled(target)) {
|
|
201
|
+
if (!target.globalPath) {
|
|
153
202
|
results.push({
|
|
154
203
|
target: target.displayName,
|
|
155
|
-
path: target.
|
|
204
|
+
path: target.localPath,
|
|
156
205
|
success: false,
|
|
157
206
|
skipped: true,
|
|
158
|
-
reason:
|
|
207
|
+
reason: 'project-level only'
|
|
159
208
|
});
|
|
160
209
|
}
|
|
161
210
|
else {
|
|
162
|
-
const
|
|
163
|
-
results.push(
|
|
164
|
-
target: target.displayName,
|
|
165
|
-
path: target.globalPath,
|
|
166
|
-
success: result.success,
|
|
167
|
-
error: result.error
|
|
168
|
-
});
|
|
211
|
+
const path = join(home, target.globalPath);
|
|
212
|
+
results.push(write(target, path, content));
|
|
169
213
|
}
|
|
170
214
|
}
|
|
171
|
-
// Local installation (project-level)
|
|
172
215
|
if (installLocal) {
|
|
173
|
-
|
|
174
|
-
const result = installToPath(localPath, content);
|
|
175
|
-
results.push({
|
|
176
|
-
target: `${target.displayName} (project)`,
|
|
177
|
-
path: localPath,
|
|
178
|
-
success: result.success,
|
|
179
|
-
error: result.error
|
|
180
|
-
});
|
|
216
|
+
results.push(write(target, join(cwd, target.localPath), content));
|
|
181
217
|
}
|
|
182
218
|
}
|
|
183
219
|
return results;
|
|
184
220
|
}
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
221
|
+
function write(target, path, content) {
|
|
222
|
+
try {
|
|
223
|
+
if (target.ownsFile) {
|
|
224
|
+
const action = existsSync(path) ? 'updated' : 'created';
|
|
225
|
+
mkdirSync(dirname(path), { recursive: true });
|
|
226
|
+
writeFileSync(path, content, 'utf8');
|
|
227
|
+
return { target: target.displayName, path, success: true, action };
|
|
228
|
+
}
|
|
229
|
+
return { target: target.displayName, path, success: true, action: writeBlock(path, content) };
|
|
230
|
+
}
|
|
231
|
+
catch (error) {
|
|
232
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
233
|
+
return { target: target.displayName, path, success: false, error: message };
|
|
234
|
+
}
|
|
196
235
|
}
|
|
197
|
-
/**
|
|
198
|
-
|
|
199
|
-
|
|
236
|
+
/** List every target, whether the project uses it, and whether the skill is already there. */
|
|
237
|
+
export function listSkillTargets(options = {}) {
|
|
238
|
+
const cwd = options.cwd || process.cwd();
|
|
239
|
+
const home = options.home || homedir();
|
|
240
|
+
const detected = detectTargets(cwd);
|
|
241
|
+
return SKILL_TARGETS.map(target => {
|
|
242
|
+
const localPath = join(cwd, target.localPath);
|
|
243
|
+
const globalPath = target.globalPath ? join(home, target.globalPath) : undefined;
|
|
244
|
+
return {
|
|
245
|
+
name: target.name,
|
|
246
|
+
displayName: target.displayName,
|
|
247
|
+
localPath,
|
|
248
|
+
globalPath,
|
|
249
|
+
detected: detected.includes(target.name),
|
|
250
|
+
hasSkill: hasSkill(target, localPath) || (globalPath ? hasSkill(target, globalPath) : false)
|
|
251
|
+
};
|
|
252
|
+
});
|
|
253
|
+
}
|
|
254
|
+
function hasSkill(target, path) {
|
|
255
|
+
if (!existsSync(path))
|
|
256
|
+
return false;
|
|
257
|
+
if (target.ownsFile)
|
|
258
|
+
return true;
|
|
259
|
+
return readFileSync(path, 'utf8').includes(BLOCK_START);
|
|
260
|
+
}
|
|
261
|
+
/** Remove what `installSkills` wrote, and nothing else. */
|
|
200
262
|
export function uninstallSkills(options = {}) {
|
|
201
263
|
const results = [];
|
|
202
264
|
const cwd = options.cwd || process.cwd();
|
|
203
|
-
const
|
|
265
|
+
const home = options.home || homedir();
|
|
266
|
+
const removeGlobal = options.global ?? false;
|
|
267
|
+
const removeLocal = options.local ?? !removeGlobal;
|
|
204
268
|
for (const target of SKILL_TARGETS) {
|
|
205
|
-
if (
|
|
206
|
-
|
|
207
|
-
if (existsSync(skillFile)) {
|
|
208
|
-
try {
|
|
209
|
-
rmSync(target.globalPath, { recursive: true, force: true });
|
|
210
|
-
results.push({
|
|
211
|
-
target: target.displayName,
|
|
212
|
-
path: target.globalPath,
|
|
213
|
-
success: true
|
|
214
|
-
});
|
|
215
|
-
}
|
|
216
|
-
catch (error) {
|
|
217
|
-
results.push({
|
|
218
|
-
target: target.displayName,
|
|
219
|
-
path: target.globalPath,
|
|
220
|
-
success: false,
|
|
221
|
-
error: error.message
|
|
222
|
-
});
|
|
223
|
-
}
|
|
224
|
-
}
|
|
269
|
+
if (removeGlobal && target.globalPath) {
|
|
270
|
+
results.push(remove(target, join(home, target.globalPath)));
|
|
225
271
|
}
|
|
226
|
-
if (
|
|
227
|
-
|
|
228
|
-
const skillFile = join(localPath, 'SKILL.md');
|
|
229
|
-
if (existsSync(skillFile)) {
|
|
230
|
-
try {
|
|
231
|
-
rmSync(localPath, { recursive: true, force: true });
|
|
232
|
-
results.push({
|
|
233
|
-
target: `${target.displayName} (project)`,
|
|
234
|
-
path: localPath,
|
|
235
|
-
success: true
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
catch (error) {
|
|
239
|
-
results.push({
|
|
240
|
-
target: `${target.displayName} (project)`,
|
|
241
|
-
path: localPath,
|
|
242
|
-
success: false,
|
|
243
|
-
error: error.message
|
|
244
|
-
});
|
|
245
|
-
}
|
|
246
|
-
}
|
|
272
|
+
if (removeLocal) {
|
|
273
|
+
results.push(remove(target, join(cwd, target.localPath)));
|
|
247
274
|
}
|
|
248
275
|
}
|
|
249
276
|
return results;
|
|
250
277
|
}
|
|
278
|
+
function remove(target, path) {
|
|
279
|
+
try {
|
|
280
|
+
if (target.ownsFile) {
|
|
281
|
+
if (!existsSync(path)) {
|
|
282
|
+
return {
|
|
283
|
+
target: target.displayName,
|
|
284
|
+
path,
|
|
285
|
+
success: false,
|
|
286
|
+
skipped: true,
|
|
287
|
+
reason: 'not installed'
|
|
288
|
+
};
|
|
289
|
+
}
|
|
290
|
+
// The whole directory belongs to Pipecraft, so it goes with the file.
|
|
291
|
+
rmSync(dirname(path), { recursive: true, force: true });
|
|
292
|
+
return { target: target.displayName, path, success: true, action: 'removed' };
|
|
293
|
+
}
|
|
294
|
+
const action = removeBlock(path);
|
|
295
|
+
if (!action) {
|
|
296
|
+
return {
|
|
297
|
+
target: target.displayName,
|
|
298
|
+
path,
|
|
299
|
+
success: false,
|
|
300
|
+
skipped: true,
|
|
301
|
+
reason: 'not installed'
|
|
302
|
+
};
|
|
303
|
+
}
|
|
304
|
+
return { target: target.displayName, path, success: true, action };
|
|
305
|
+
}
|
|
306
|
+
catch (error) {
|
|
307
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
308
|
+
return { target: target.displayName, path, success: false, error: message };
|
|
309
|
+
}
|
|
310
|
+
}
|
|
251
311
|
//# sourceMappingURL=skill-installer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"skill-installer.js","sourceRoot":"","sources":["../../src/utils/skill-installer.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"skill-installer.js","sourceRoot":"","sources":["../../src/utils/skill-installer.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pipecraft",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.46.1",
|
|
4
4
|
"description": "Automated CI/CD pipeline generator for trunk-based development. Generates intelligent GitHub Actions workflows with domain-based change detection, semantic versioning, and branch flow management. Full documentation: https://pipecraft.thecraftlab.dev",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -22,6 +22,7 @@ Help users with **Pipecraft** - a trunk-based CI/CD workflow generator for GitHu
|
|
|
22
22
|
| `pipecraft setup` | Create branches from branchFlow | `--force` |
|
|
23
23
|
| `pipecraft setup-github` | Configure GitHub permissions | `--apply` |
|
|
24
24
|
| `pipecraft version` | Version management | `--check` |
|
|
25
|
+
| `pipecraft skill` | Install this skill for AI tools | `--list`, `--uninstall`, `--target`, `--global` |
|
|
25
26
|
|
|
26
27
|
### validate vs doctor
|
|
27
28
|
|