@dedesfr/prompter 0.8.23 β†’ 1.0.0

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.
Files changed (247) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/README.md +105 -77
  3. package/dist/cli/index.js +25 -1
  4. package/dist/cli/index.js.map +1 -1
  5. package/dist/commands/init.d.ts +1 -7
  6. package/dist/commands/init.d.ts.map +1 -1
  7. package/dist/commands/init.js +60 -299
  8. package/dist/commands/init.js.map +1 -1
  9. package/dist/commands/login.d.ts +4 -0
  10. package/dist/commands/login.d.ts.map +1 -0
  11. package/dist/commands/login.js +56 -0
  12. package/dist/commands/login.js.map +1 -0
  13. package/dist/commands/logout.d.ts +4 -0
  14. package/dist/commands/logout.d.ts.map +1 -0
  15. package/dist/commands/logout.js +14 -0
  16. package/dist/commands/logout.js.map +1 -0
  17. package/dist/commands/update.d.ts.map +1 -1
  18. package/dist/commands/update.js +31 -41
  19. package/dist/commands/update.js.map +1 -1
  20. package/dist/commands/whoami.d.ts +4 -0
  21. package/dist/commands/whoami.d.ts.map +1 -0
  22. package/dist/commands/whoami.js +42 -0
  23. package/dist/commands/whoami.js.map +1 -0
  24. package/dist/core/auth-store.d.ts +10 -0
  25. package/dist/core/auth-store.d.ts.map +1 -0
  26. package/dist/core/auth-store.js +39 -0
  27. package/dist/core/auth-store.js.map +1 -0
  28. package/dist/core/configurators/slash/antigravity.d.ts +2 -5
  29. package/dist/core/configurators/slash/antigravity.d.ts.map +1 -1
  30. package/dist/core/configurators/slash/antigravity.js +2 -57
  31. package/dist/core/configurators/slash/antigravity.js.map +1 -1
  32. package/dist/core/configurators/slash/base.d.ts +6 -18
  33. package/dist/core/configurators/slash/base.d.ts.map +1 -1
  34. package/dist/core/configurators/slash/base.js +8 -77
  35. package/dist/core/configurators/slash/base.js.map +1 -1
  36. package/dist/core/configurators/slash/claude.d.ts +2 -5
  37. package/dist/core/configurators/slash/claude.d.ts.map +1 -1
  38. package/dist/core/configurators/slash/claude.js +2 -57
  39. package/dist/core/configurators/slash/claude.js.map +1 -1
  40. package/dist/core/configurators/slash/codex.d.ts +2 -5
  41. package/dist/core/configurators/slash/codex.d.ts.map +1 -1
  42. package/dist/core/configurators/slash/codex.js +2 -57
  43. package/dist/core/configurators/slash/codex.js.map +1 -1
  44. package/dist/core/configurators/slash/droid.d.ts +2 -5
  45. package/dist/core/configurators/slash/droid.d.ts.map +1 -1
  46. package/dist/core/configurators/slash/droid.js +2 -32
  47. package/dist/core/configurators/slash/droid.js.map +1 -1
  48. package/dist/core/configurators/slash/forge.d.ts +2 -5
  49. package/dist/core/configurators/slash/forge.d.ts.map +1 -1
  50. package/dist/core/configurators/slash/forge.js +2 -32
  51. package/dist/core/configurators/slash/forge.js.map +1 -1
  52. package/dist/core/configurators/slash/github-copilot.d.ts +2 -7
  53. package/dist/core/configurators/slash/github-copilot.d.ts.map +1 -1
  54. package/dist/core/configurators/slash/github-copilot.js +2 -96
  55. package/dist/core/configurators/slash/github-copilot.js.map +1 -1
  56. package/dist/core/configurators/slash/index.d.ts +1 -1
  57. package/dist/core/configurators/slash/index.d.ts.map +1 -1
  58. package/dist/core/configurators/slash/index.js +1 -1
  59. package/dist/core/configurators/slash/index.js.map +1 -1
  60. package/dist/core/configurators/slash/kilocode.d.ts +2 -5
  61. package/dist/core/configurators/slash/kilocode.d.ts.map +1 -1
  62. package/dist/core/configurators/slash/kilocode.js +2 -57
  63. package/dist/core/configurators/slash/kilocode.js.map +1 -1
  64. package/dist/core/configurators/slash/opencode.d.ts +2 -5
  65. package/dist/core/configurators/slash/opencode.d.ts.map +1 -1
  66. package/dist/core/configurators/slash/opencode.js +2 -57
  67. package/dist/core/configurators/slash/opencode.js.map +1 -1
  68. package/dist/core/configurators/slash/registry.d.ts +4 -4
  69. package/dist/core/configurators/slash/registry.d.ts.map +1 -1
  70. package/dist/core/configurators/slash/registry.js.map +1 -1
  71. package/dist/core/registry.d.ts +18 -0
  72. package/dist/core/registry.d.ts.map +1 -0
  73. package/dist/core/registry.js +94 -0
  74. package/dist/core/registry.js.map +1 -0
  75. package/dist/core/templates/index.d.ts +0 -1
  76. package/dist/core/templates/index.d.ts.map +1 -1
  77. package/dist/core/templates/index.js +0 -1
  78. package/dist/core/templates/index.js.map +1 -1
  79. package/package.json +7 -1
  80. package/AGENTS.md +0 -123
  81. package/CLAUDE.md +0 -17
  82. package/build.js +0 -20
  83. package/convex-setup.md +0 -403
  84. package/dist/core/templates/slash-command-templates.d.ts +0 -7
  85. package/dist/core/templates/slash-command-templates.d.ts.map +0 -1
  86. package/dist/core/templates/slash-command-templates.js +0 -1041
  87. package/dist/core/templates/slash-command-templates.js.map +0 -1
  88. package/prompt/ai-humanizer.md +0 -45
  89. package/prompt/api-contract-generator.md +0 -234
  90. package/prompt/apply.md +0 -17
  91. package/prompt/archive.md +0 -21
  92. package/prompt/design-system.md +0 -210
  93. package/prompt/document-explainer.md +0 -149
  94. package/prompt/epic-generator.md +0 -198
  95. package/prompt/epic-single.md +0 -47
  96. package/prompt/erd-generator.md +0 -130
  97. package/prompt/fsd-generator.md +0 -157
  98. package/prompt/prd-agent-generator.md +0 -147
  99. package/prompt/prd-generator.md +0 -195
  100. package/prompt/product-brief.md +0 -289
  101. package/prompt/proposal.md +0 -22
  102. package/prompt/qa-test-scenario.md +0 -133
  103. package/prompt/skill-creator.md +0 -350
  104. package/prompt/story-generator.md +0 -278
  105. package/prompt/story-single.md +0 -70
  106. package/prompt/tdd-generator.md +0 -294
  107. package/prompt/tdd-lite-generator.md +0 -224
  108. package/prompt/wireframe-generator.md +0 -219
  109. package/skills/ai-context-generator/SKILL.md +0 -54
  110. package/skills/ai-context-generator/references/AGENTS.template.md +0 -83
  111. package/skills/ai-context-generator/references/CLAUDE.template.md +0 -39
  112. package/skills/ai-context-generator/references/behavioral-guidelines.md +0 -71
  113. package/skills/ai-context-generator/references/discovery-checklist.md +0 -40
  114. package/skills/ai-context-generator/references/examples/AGENTS.good.md +0 -103
  115. package/skills/ai-context-generator/references/extraction-checklist.md +0 -23
  116. package/skills/ai-context-generator/references/overlays/laravel.md +0 -44
  117. package/skills/cerebro/SKILL.md +0 -187
  118. package/skills/cerebro/references/agents.md +0 -213
  119. package/skills/code-review/SKILL.md +0 -373
  120. package/skills/code-review/assets/report-template-agent.md +0 -212
  121. package/skills/code-review/assets/report-template-compact.md +0 -81
  122. package/skills/code-review/assets/report-template-full.md +0 -264
  123. package/skills/code-review/assets/report-template-human.md +0 -168
  124. package/skills/code-review/references/universal-patterns.md +0 -495
  125. package/skills/design-md/README.md +0 -34
  126. package/skills/design-md/SKILL.md +0 -172
  127. package/skills/design-md/examples/DESIGN.md +0 -154
  128. package/skills/design-system-generator/SKILL.md +0 -324
  129. package/skills/design-system-generator/assets/design-system-template.md +0 -348
  130. package/skills/design-system-generator/references/extraction-patterns.md +0 -321
  131. package/skills/doc-builder/SKILL.md +0 -115
  132. package/skills/doc-builder/references/ui-patterns.md +0 -394
  133. package/skills/document-translator/SKILL.md +0 -58
  134. package/skills/enhance-prompt/README.md +0 -34
  135. package/skills/enhance-prompt/SKILL.md +0 -204
  136. package/skills/enhance-prompt/references/KEYWORDS.md +0 -114
  137. package/skills/feature-planner/SKILL.md +0 -305
  138. package/skills/feature-planner/assets/implementation-plan-template.md +0 -85
  139. package/skills/frontend-design/LICENSE.txt +0 -177
  140. package/skills/frontend-design/SKILL.md +0 -42
  141. package/skills/gamma-builder/SKILL.md +0 -134
  142. package/skills/laravel-code-review/SKILL.md +0 -383
  143. package/skills/laravel-code-review/assets/report-template-agent.md +0 -195
  144. package/skills/laravel-code-review/assets/report-template-compact.md +0 -79
  145. package/skills/laravel-code-review/assets/report-template-full.md +0 -253
  146. package/skills/laravel-code-review/assets/report-template-human.md +0 -159
  147. package/skills/laravel-code-review/references/laravel-patterns.md +0 -571
  148. package/skills/laravel-code-review/references/php84-features.md +0 -442
  149. package/skills/mcp-builder/LICENSE.txt +0 -202
  150. package/skills/mcp-builder/SKILL.md +0 -236
  151. package/skills/mcp-builder/reference/evaluation.md +0 -602
  152. package/skills/mcp-builder/reference/mcp_best_practices.md +0 -249
  153. package/skills/mcp-builder/reference/node_mcp_server.md +0 -970
  154. package/skills/mcp-builder/reference/python_mcp_server.md +0 -719
  155. package/skills/mcp-builder/scripts/connections.py +0 -151
  156. package/skills/mcp-builder/scripts/evaluation.py +0 -373
  157. package/skills/mcp-builder/scripts/example_evaluation.xml +0 -22
  158. package/skills/mcp-builder/scripts/requirements.txt +0 -2
  159. package/skills/meeting-notes/SKILL.md +0 -159
  160. package/skills/meeting-notes/evals/evals.json +0 -23
  161. package/skills/project-orchestrator/SKILL.md +0 -487
  162. package/skills/project-orchestrator/assets/caddy-vps-setup.md +0 -180
  163. package/skills/project-orchestrator/assets/plan-summary-template.md +0 -159
  164. package/skills/prompter-specs/SKILL.md +0 -115
  165. package/skills/prompter-workflow/SKILL.md +0 -166
  166. package/skills/prompter-workflow/evals/evals.json +0 -89
  167. package/skills/sph-generator/SKILL.md +0 -488
  168. package/skills/ui-ux-pro/SKILL.md +0 -199
  169. package/skills/ui-ux-pro/assets/design-spec-template.md +0 -173
  170. package/skills/ui-ux-pro/references/component-patterns.md +0 -255
  171. package/skills/ui-ux-pro/references/design-principles.md +0 -167
  172. package/src/cli/index.ts +0 -223
  173. package/src/commands/archive.ts +0 -302
  174. package/src/commands/change.ts +0 -292
  175. package/src/commands/config.ts +0 -233
  176. package/src/commands/guide.ts +0 -50
  177. package/src/commands/init.ts +0 -899
  178. package/src/commands/list.ts +0 -194
  179. package/src/commands/show.ts +0 -138
  180. package/src/commands/spec.ts +0 -251
  181. package/src/commands/update.ts +0 -156
  182. package/src/commands/upgrade.ts +0 -30
  183. package/src/commands/validate.ts +0 -326
  184. package/src/core/artifact-graph/graph.ts +0 -167
  185. package/src/core/artifact-graph/index.ts +0 -44
  186. package/src/core/artifact-graph/instruction-loader.ts +0 -302
  187. package/src/core/artifact-graph/resolver.ts +0 -226
  188. package/src/core/artifact-graph/schema.ts +0 -124
  189. package/src/core/artifact-graph/state.ts +0 -64
  190. package/src/core/artifact-graph/types.ts +0 -65
  191. package/src/core/completions/command-registry.ts +0 -382
  192. package/src/core/completions/completion-provider.ts +0 -128
  193. package/src/core/completions/generators/bash-generator.ts +0 -191
  194. package/src/core/completions/generators/fish-generator.ts +0 -188
  195. package/src/core/completions/generators/powershell-generator.ts +0 -223
  196. package/src/core/completions/generators/zsh-generator.ts +0 -281
  197. package/src/core/completions/templates/bash-templates.ts +0 -24
  198. package/src/core/completions/templates/fish-templates.ts +0 -40
  199. package/src/core/completions/templates/powershell-templates.ts +0 -25
  200. package/src/core/completions/templates/zsh-templates.ts +0 -36
  201. package/src/core/completions/types.ts +0 -90
  202. package/src/core/config-schema.ts +0 -230
  203. package/src/core/config.ts +0 -181
  204. package/src/core/configurators/slash/antigravity.ts +0 -70
  205. package/src/core/configurators/slash/base.ts +0 -203
  206. package/src/core/configurators/slash/claude.ts +0 -70
  207. package/src/core/configurators/slash/codex.ts +0 -70
  208. package/src/core/configurators/slash/droid.ts +0 -44
  209. package/src/core/configurators/slash/forge.ts +0 -44
  210. package/src/core/configurators/slash/github-copilot.ts +0 -114
  211. package/src/core/configurators/slash/index.ts +0 -10
  212. package/src/core/configurators/slash/kilocode.ts +0 -70
  213. package/src/core/configurators/slash/opencode.ts +0 -70
  214. package/src/core/configurators/slash/registry.ts +0 -51
  215. package/src/core/converters/json-converter.ts +0 -62
  216. package/src/core/global-config.ts +0 -136
  217. package/src/core/parsers/change-parser.ts +0 -234
  218. package/src/core/parsers/markdown-parser.ts +0 -237
  219. package/src/core/parsers/requirement-blocks.ts +0 -234
  220. package/src/core/prompt-templates.ts +0 -3504
  221. package/src/core/schemas/base.schema.ts +0 -20
  222. package/src/core/schemas/change.schema.ts +0 -42
  223. package/src/core/schemas/index.ts +0 -20
  224. package/src/core/schemas/spec.schema.ts +0 -17
  225. package/src/core/skill-discovery.ts +0 -68
  226. package/src/core/specs-apply.ts +0 -483
  227. package/src/core/styles/palette.ts +0 -8
  228. package/src/core/templates/agents-template.ts +0 -459
  229. package/src/core/templates/claude-template.ts +0 -2
  230. package/src/core/templates/index.ts +0 -4
  231. package/src/core/templates/project-template.ts +0 -32
  232. package/src/core/templates/slash-command-templates.ts +0 -1068
  233. package/src/core/validation/constants.ts +0 -48
  234. package/src/core/validation/types.ts +0 -19
  235. package/src/core/validation/validator.ts +0 -449
  236. package/src/core/view.ts +0 -219
  237. package/src/index.ts +0 -1
  238. package/src/utils/change-metadata.ts +0 -171
  239. package/src/utils/change-utils.ts +0 -131
  240. package/src/utils/file-system.ts +0 -252
  241. package/src/utils/index.ts +0 -12
  242. package/src/utils/interactive.ts +0 -29
  243. package/src/utils/item-discovery.ts +0 -66
  244. package/src/utils/match.ts +0 -26
  245. package/src/utils/shell-detection.ts +0 -62
  246. package/src/utils/task-progress.ts +0 -43
  247. package/tsconfig.json +0 -28
@@ -1 +1 @@
1
- {"version":3,"file":"kilocode.js","sourceRoot":"","sources":["../../../../src/core/configurators/slash/kilocode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAGrD,MAAM,UAAU,GAAmC;IAC/C,OAAO,EAAE,yCAAyC;IAClD,eAAe,EAAE,sCAAsC;IACvD,qBAAqB,EAAE,4CAA4C;IACnE,eAAe,EAAE,sCAAsC;IACvD,aAAa,EAAE,oCAAoC;IACnD,gBAAgB,EAAE,uCAAuC;IACzD,cAAc,EAAE,qCAAqC;IACrD,iBAAiB,EAAE,wCAAwC;IAC3D,kBAAkB,EAAE,yCAAyC;IAC7D,eAAe,EAAE,sCAAsC;IACvD,cAAc,EAAE,qCAAqC;IACrD,wBAAwB,EAAE,+CAA+C;IACzE,OAAO,EAAE,8BAA8B;IACvC,SAAS,EAAE,gCAAgC;IAC3C,eAAe,EAAE,sCAAsC;IACvD,eAAe,EAAE,sCAAsC;IACvD,eAAe,EAAE,sCAAsC;IACvD,UAAU,EAAE,iCAAiC;IAC7C,eAAe,EAAE,sCAAsC;IACvD,oBAAoB,EAAE,2CAA2C;IACjE,qBAAqB,EAAE,4CAA4C;IACnE,oBAAoB,EAAE,2CAA2C;CACpE,CAAC;AAEF,MAAM,YAAY,GAAmC;IACjD,OAAO,EAAE,0DAA0D;IACnE,eAAe,EAAE,8DAA8D;IAC/E,qBAAqB,EAAE,mEAAmE;IAC1F,eAAe,EAAE,4DAA4D;IAC7E,aAAa,EAAE,0CAA0C;IACzD,gBAAgB,EAAE,0DAA0D;IAC5E,cAAc,EAAE,qDAAqD;IACrE,iBAAiB,EAAE,wDAAwD;IAC3E,kBAAkB,EAAE,6CAA6C;IACjE,eAAe,EAAE,mEAAmE;IACpF,cAAc,EAAE,mFAAmF;IACnG,wBAAwB,EAAE,iDAAiD;IAC3E,OAAO,EAAE,iDAAiD;IAC1D,SAAS,EAAE,6CAA6C;IACxD,eAAe,EAAE,8EAA8E;IAC/F,eAAe,EAAE,+CAA+C;IAChE,eAAe,EAAE,qDAAqD;IACtE,UAAU,EAAE,+CAA+C;IAC3D,eAAe,EAAE,kDAAkD;IACnE,oBAAoB,EAAE,oDAAoD;IAC1E,qBAAqB,EAAE,gDAAgD;IACvE,oBAAoB,EAAE,uEAAuE;CAChG,CAAC;AAEF,MAAM,OAAO,oBAAqB,SAAQ,wBAAwB;IACrD,MAAM,GAAG,UAAU,CAAC;IACpB,WAAW,GAAG,IAAI,CAAC;IAElB,eAAe,CAAC,EAAkB;QACxC,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAES,cAAc,CAAC,EAAkB;QACvC,MAAM,WAAW,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;QACrC,OAAO,qBAAqB,WAAW,OAAO,CAAC;IACnD,CAAC;IAES,iBAAiB,CAAC,SAAiB;QACzC,OAAO,oBAAoB,SAAS,EAAE,CAAC;IAC3C,CAAC;CACJ"}
1
+ {"version":3,"file":"kilocode.js","sourceRoot":"","sources":["../../../../src/core/configurators/slash/kilocode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,OAAO,oBAAqB,SAAQ,gBAAgB;IAC7C,MAAM,GAAG,UAAU,CAAC;IACpB,WAAW,GAAG,IAAI,CAAC;IAElB,iBAAiB,CAAC,SAAiB;QACzC,OAAO,oBAAoB,SAAS,EAAE,CAAC;IAC3C,CAAC;CACJ"}
@@ -1,10 +1,7 @@
1
- import { SlashCommandConfigurator } from './base.js';
2
- import { SlashCommandId } from '../../templates/index.js';
3
- export declare class OpenCodeConfigurator extends SlashCommandConfigurator {
1
+ import { ToolConfigurator } from './base.js';
2
+ export declare class OpenCodeConfigurator extends ToolConfigurator {
4
3
  readonly toolId = "opencode";
5
4
  readonly isAvailable = true;
6
- protected getRelativePath(id: SlashCommandId): string;
7
- protected getFrontmatter(id: SlashCommandId): string | undefined;
8
5
  protected getSkillTargetDir(skillName: string): string;
9
6
  }
10
7
  //# sourceMappingURL=opencode.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/core/configurators/slash/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAoD1D,qBAAa,oBAAqB,SAAQ,wBAAwB;IAC9D,QAAQ,CAAC,MAAM,cAAc;IAC7B,QAAQ,CAAC,WAAW,QAAQ;IAE5B,SAAS,CAAC,eAAe,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM;IAIrD,SAAS,CAAC,cAAc,CAAC,EAAE,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS;IAKhE,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;CAGzD"}
1
+ {"version":3,"file":"opencode.d.ts","sourceRoot":"","sources":["../../../../src/core/configurators/slash/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,qBAAa,oBAAqB,SAAQ,gBAAgB;IACtD,QAAQ,CAAC,MAAM,cAAc;IAC7B,QAAQ,CAAC,WAAW,QAAQ;IAE5B,SAAS,CAAC,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;CAGzD"}
@@ -1,62 +1,7 @@
1
- import { SlashCommandConfigurator } from './base.js';
2
- const FILE_PATHS = {
3
- enhance: '.opencode/command/prompter-enhance.md',
4
- 'prd-generator': '.opencode/command/prd-generator.md',
5
- 'prd-agent-generator': '.opencode/command/prd-agent-generator.md',
6
- 'product-brief': '.opencode/command/product-brief.md',
7
- 'epic-single': '.opencode/command/epic-single.md',
8
- 'epic-generator': '.opencode/command/epic-generator.md',
9
- 'story-single': '.opencode/command/story-single.md',
10
- 'story-generator': '.opencode/command/story-generator.md',
11
- 'qa-test-scenario': '.opencode/command/qa-test-scenario.md',
12
- 'skill-creator': '.opencode/command/skill-creator.md',
13
- 'ai-humanizer': '.opencode/command/ai-humanizer.md',
14
- 'api-contract-generator': '.opencode/command/api-contract-generator.md',
15
- 'apply': '.opencode/command/apply.md',
16
- 'archive': '.opencode/command/archive.md',
17
- 'design-system': '.opencode/command/design-system.md',
18
- 'erd-generator': '.opencode/command/erd-generator.md',
19
- 'fsd-generator': '.opencode/command/fsd-generator.md',
20
- 'proposal': '.opencode/command/proposal.md',
21
- 'tdd-generator': '.opencode/command/tdd-generator.md',
22
- 'tdd-lite-generator': '.opencode/command/tdd-lite-generator.md',
23
- 'wireframe-generator': '.opencode/command/wireframe-generator.md',
24
- 'document-explainer': '.opencode/command/document-explainer.md'
25
- };
26
- const DESCRIPTIONS = {
27
- enhance: 'Enhance a rough prompt into a professional specification',
28
- 'prd-generator': 'Generate a comprehensive Product Requirements Document (PRD)',
29
- 'prd-agent-generator': 'Generate a PRD with autonomous assumptions (non-interactive mode)',
30
- 'product-brief': 'Generate an executive-level product brief (1-page summary)',
31
- 'epic-single': 'Generate a single well-defined Jira Epic',
32
- 'epic-generator': 'Generate a comprehensive set of EPICs from documentation',
33
- 'story-single': 'Generate a single Jira User Story from requirements',
34
- 'story-generator': 'Generate comprehensive user stories from EPICs and FSD',
35
- 'qa-test-scenario': 'Generate focused QA test scenarios from PRD',
36
- 'skill-creator': 'Create a modular skill package that extends AI agent capabilities',
37
- 'ai-humanizer': 'Humanize and proofread AI-generated content for natural, publication-ready output',
38
- 'api-contract-generator': 'Generate OpenAPI specification from FSD and ERD',
39
- 'apply': 'Implement and apply an approved change proposal',
40
- 'archive': 'Archive a completed change and update specs',
41
- 'design-system': 'Generate comprehensive design system documentation for components and tokens',
42
- 'erd-generator': 'Generate Entity Relationship Diagram from FSD',
43
- 'fsd-generator': 'Generate Functional Specification Document from PRD',
44
- 'proposal': 'Create a new change proposal with spec deltas',
45
- 'tdd-generator': 'Generate comprehensive Technical Design Document',
46
- 'tdd-lite-generator': 'Generate lean Technical Design Document (TDD-Lite)',
47
- 'wireframe-generator': 'Generate UI/UX wireframes from technical specs',
48
- 'document-explainer': 'Analyze and explain complex documents into clear, actionable insights'
49
- };
50
- export class OpenCodeConfigurator extends SlashCommandConfigurator {
1
+ import { ToolConfigurator } from './base.js';
2
+ export class OpenCodeConfigurator extends ToolConfigurator {
51
3
  toolId = 'opencode';
52
4
  isAvailable = true;
53
- getRelativePath(id) {
54
- return FILE_PATHS[id];
55
- }
56
- getFrontmatter(id) {
57
- const description = DESCRIPTIONS[id];
58
- return `---\nagent: build\ndescription: ${description}\n---`;
59
- }
60
5
  getSkillTargetDir(skillName) {
61
6
  return `.opencode/skills/${skillName}`;
62
7
  }
@@ -1 +1 @@
1
- {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../../src/core/configurators/slash/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAGrD,MAAM,UAAU,GAAmC;IAC/C,OAAO,EAAE,uCAAuC;IAChD,eAAe,EAAE,oCAAoC;IACrD,qBAAqB,EAAE,0CAA0C;IACjE,eAAe,EAAE,oCAAoC;IACrD,aAAa,EAAE,kCAAkC;IACjD,gBAAgB,EAAE,qCAAqC;IACvD,cAAc,EAAE,mCAAmC;IACnD,iBAAiB,EAAE,sCAAsC;IACzD,kBAAkB,EAAE,uCAAuC;IAC3D,eAAe,EAAE,oCAAoC;IACrD,cAAc,EAAE,mCAAmC;IACnD,wBAAwB,EAAE,6CAA6C;IACvE,OAAO,EAAE,4BAA4B;IACrC,SAAS,EAAE,8BAA8B;IACzC,eAAe,EAAE,oCAAoC;IACrD,eAAe,EAAE,oCAAoC;IACrD,eAAe,EAAE,oCAAoC;IACrD,UAAU,EAAE,+BAA+B;IAC3C,eAAe,EAAE,oCAAoC;IACrD,oBAAoB,EAAE,yCAAyC;IAC/D,qBAAqB,EAAE,0CAA0C;IACjE,oBAAoB,EAAE,yCAAyC;CAClE,CAAC;AAEF,MAAM,YAAY,GAAmC;IACjD,OAAO,EAAE,0DAA0D;IACnE,eAAe,EAAE,8DAA8D;IAC/E,qBAAqB,EAAE,mEAAmE;IAC1F,eAAe,EAAE,4DAA4D;IAC7E,aAAa,EAAE,0CAA0C;IACzD,gBAAgB,EAAE,0DAA0D;IAC5E,cAAc,EAAE,qDAAqD;IACrE,iBAAiB,EAAE,wDAAwD;IAC3E,kBAAkB,EAAE,6CAA6C;IACjE,eAAe,EAAE,mEAAmE;IACpF,cAAc,EAAE,mFAAmF;IACnG,wBAAwB,EAAE,iDAAiD;IAC3E,OAAO,EAAE,iDAAiD;IAC1D,SAAS,EAAE,6CAA6C;IACxD,eAAe,EAAE,8EAA8E;IAC/F,eAAe,EAAE,+CAA+C;IAChE,eAAe,EAAE,qDAAqD;IACtE,UAAU,EAAE,+CAA+C;IAC3D,eAAe,EAAE,kDAAkD;IACnE,oBAAoB,EAAE,oDAAoD;IAC1E,qBAAqB,EAAE,gDAAgD;IACvE,oBAAoB,EAAE,uEAAuE;CAChG,CAAC;AAEF,MAAM,OAAO,oBAAqB,SAAQ,wBAAwB;IACrD,MAAM,GAAG,UAAU,CAAC;IACpB,WAAW,GAAG,IAAI,CAAC;IAElB,eAAe,CAAC,EAAkB;QACxC,OAAO,UAAU,CAAC,EAAE,CAAC,CAAC;IAC1B,CAAC;IAES,cAAc,CAAC,EAAkB;QACvC,MAAM,WAAW,GAAG,YAAY,CAAC,EAAE,CAAC,CAAC;QACrC,OAAO,mCAAmC,WAAW,OAAO,CAAC;IACjE,CAAC;IAES,iBAAiB,CAAC,SAAiB;QACzC,OAAO,oBAAoB,SAAS,EAAE,CAAC;IAC3C,CAAC;CACJ"}
1
+ {"version":3,"file":"opencode.js","sourceRoot":"","sources":["../../../../src/core/configurators/slash/opencode.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,OAAO,oBAAqB,SAAQ,gBAAgB;IAC7C,MAAM,GAAG,UAAU,CAAC;IACpB,WAAW,GAAG,IAAI,CAAC;IAElB,iBAAiB,CAAC,SAAiB;QACzC,OAAO,oBAAoB,SAAS,EAAE,CAAC;IAC3C,CAAC;CACJ"}
@@ -1,10 +1,10 @@
1
- import { SlashCommandConfigurator } from './base.js';
1
+ import { ToolConfigurator } from './base.js';
2
2
  export declare class ConfiguratorRegistry {
3
3
  private configurators;
4
4
  constructor();
5
- get(toolId: string): SlashCommandConfigurator | undefined;
6
- getAll(): SlashCommandConfigurator[];
7
- getAvailable(): SlashCommandConfigurator[];
5
+ get(toolId: string): ToolConfigurator | undefined;
6
+ getAll(): ToolConfigurator[];
7
+ getAvailable(): ToolConfigurator[];
8
8
  getToolIds(): string[];
9
9
  }
10
10
  export declare const registry: ConfiguratorRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/core/configurators/slash/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,wBAAwB,EAAE,MAAM,WAAW,CAAC;AAUrD,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,aAAa,CAAoD;;IAsBzE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,wBAAwB,GAAG,SAAS;IAIzD,MAAM,IAAI,wBAAwB,EAAE;IAIpC,YAAY,IAAI,wBAAwB,EAAE;IAI1C,UAAU,IAAI,MAAM,EAAE;CAGzB;AAED,eAAO,MAAM,QAAQ,sBAA6B,CAAC"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../../src/core/configurators/slash/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAU7C,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,aAAa,CAA4C;;IAsBjE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,GAAG,SAAS;IAIjD,MAAM,IAAI,gBAAgB,EAAE;IAI5B,YAAY,IAAI,gBAAgB,EAAE;IAIlC,UAAU,IAAI,MAAM,EAAE;CAGzB;AAED,eAAO,MAAM,QAAQ,sBAA6B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/core/configurators/slash/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,OAAO,oBAAoB;IACrB,aAAa,GAA0C,IAAI,GAAG,EAAE,CAAC;IAEzE;QACI,MAAM,WAAW,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,IAAI,yBAAyB,EAAE,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAEtC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,MAAc;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAED,UAAU;QACN,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../../src/core/configurators/slash/registry.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C,MAAM,OAAO,oBAAoB;IACrB,aAAa,GAAkC,IAAI,GAAG,EAAE,CAAC;IAEjE;QACI,MAAM,WAAW,GAAG,IAAI,uBAAuB,EAAE,CAAC;QAClD,MAAM,MAAM,GAAG,IAAI,kBAAkB,EAAE,CAAC;QACxC,MAAM,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,aAAa,GAAG,IAAI,yBAAyB,EAAE,CAAC;QACtD,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,KAAK,GAAG,IAAI,iBAAiB,EAAE,CAAC;QAEtC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;QACxD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QAC9C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;QAC5D,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAChD,CAAC;IAED,GAAG,CAAC,MAAc;QACd,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED,MAAM;QACF,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,YAAY;QACR,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IACpD,CAAC;IAED,UAAU;QACN,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC;CACJ;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG,IAAI,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import { SkillMetadata } from './skill-discovery.js';
2
+ export declare function getRegistryUrl(): string;
3
+ interface SkillEntry {
4
+ name: string;
5
+ files: string[];
6
+ }
7
+ export declare function fetchSkillList(token?: string | null): Promise<SkillEntry[]>;
8
+ export declare class RegistryAuthError extends Error {
9
+ constructor(message: string);
10
+ }
11
+ /**
12
+ * Fetch skill list from registry, download all skill files to local cache,
13
+ * and return SkillMetadata[] compatible with discoverSkills() output.
14
+ * Falls back to local cache on network failure.
15
+ */
16
+ export declare function fetchAndCacheSkills(token?: string | null): Promise<SkillMetadata[]>;
17
+ export {};
18
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/core/registry.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAMrD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED,UAAU,UAAU;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,EAAE,CAAC;CACnB;AAUD,wBAAsB,cAAc,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAajF;AAkCD,qBAAa,iBAAkB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI9B;AAED;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CA6BzF"}
@@ -0,0 +1,94 @@
1
+ import { promises as fs } from 'fs';
2
+ import os from 'os';
3
+ import path from 'path';
4
+ import chalk from 'chalk';
5
+ const DEFAULT_REGISTRY_URL = 'https://anvil.bezhoe.id/api/prompter';
6
+ const CACHE_DIR = path.join(os.homedir(), '.prompter', 'cache', 'skills');
7
+ const CACHE_TTL_MS = 24 * 60 * 60 * 1000; // 24 hours
8
+ export function getRegistryUrl() {
9
+ return process.env.PROMPTER_REGISTRY_URL ?? DEFAULT_REGISTRY_URL;
10
+ }
11
+ function authHeaders(token) {
12
+ return token ? { Authorization: `Bearer ${token}` } : {};
13
+ }
14
+ export async function fetchSkillList(token) {
15
+ const url = `${getRegistryUrl()}/index.json`;
16
+ const res = await fetch(url, { headers: authHeaders(token) });
17
+ if (res.status === 401) {
18
+ throw new RegistryAuthError('Session expired. Run `prompter login`.');
19
+ }
20
+ if (!res.ok) {
21
+ throw new Error(`Registry returned ${res.status} for ${url}`);
22
+ }
23
+ const body = await res.json();
24
+ return body.skills ?? [];
25
+ }
26
+ async function isCacheFresh(skillCacheDir) {
27
+ try {
28
+ const skillMd = path.join(skillCacheDir, 'SKILL.md');
29
+ const stat = await fs.stat(skillMd);
30
+ return Date.now() - stat.mtimeMs < CACHE_TTL_MS;
31
+ }
32
+ catch {
33
+ return false;
34
+ }
35
+ }
36
+ async function downloadSkill(entry, token) {
37
+ const skillCacheDir = path.join(CACHE_DIR, entry.name);
38
+ if (await isCacheFresh(skillCacheDir))
39
+ return;
40
+ await fs.mkdir(skillCacheDir, { recursive: true });
41
+ const files = entry.files.includes('SKILL.md') ? entry.files : ['SKILL.md', ...entry.files];
42
+ const registryUrl = getRegistryUrl();
43
+ for (const file of files) {
44
+ const url = `${registryUrl}/${entry.name}/${file}`;
45
+ const res = await fetch(url, { headers: authHeaders(token) });
46
+ if (res.status === 401)
47
+ throw new RegistryAuthError('Session expired. Run `prompter login`.');
48
+ if (!res.ok)
49
+ continue; // skip non-critical files silently
50
+ const content = await res.text();
51
+ await fs.writeFile(path.join(skillCacheDir, file), content, 'utf-8');
52
+ }
53
+ }
54
+ export class RegistryAuthError extends Error {
55
+ constructor(message) {
56
+ super(message);
57
+ this.name = 'RegistryAuthError';
58
+ }
59
+ }
60
+ /**
61
+ * Fetch skill list from registry, download all skill files to local cache,
62
+ * and return SkillMetadata[] compatible with discoverSkills() output.
63
+ * Falls back to local cache on network failure.
64
+ */
65
+ export async function fetchAndCacheSkills(token) {
66
+ let entries;
67
+ let usingCache = false;
68
+ try {
69
+ entries = await fetchSkillList(token);
70
+ await Promise.all(entries.map(e => downloadSkill(e, token)));
71
+ }
72
+ catch (err) {
73
+ if (err instanceof RegistryAuthError)
74
+ throw err;
75
+ // Network failure β€” fall back to cache
76
+ const cached = await loadFromCache();
77
+ if (cached.length > 0) {
78
+ console.log(chalk.yellow('⚠ Registry unreachable β€” using cached skills.'));
79
+ usingCache = true;
80
+ return cached;
81
+ }
82
+ throw new Error(`Could not reach registry at ${getRegistryUrl()} and no local cache found.\n` +
83
+ ` Check your internet connection or run with --offline to skip skill selection.`);
84
+ }
85
+ if (!usingCache) {
86
+ return loadFromCache();
87
+ }
88
+ return [];
89
+ }
90
+ async function loadFromCache() {
91
+ const { discoverSkills } = await import('./skill-discovery.js');
92
+ return discoverSkills(CACHE_DIR);
93
+ }
94
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/core/registry.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,3 @@
1
- export { TemplateManager, SlashCommandId } from './slash-command-templates.js';
2
1
  export { projectTemplate } from './project-template.js';
3
2
  export { agentsTemplate } from './agents-template.js';
4
3
  export { claudeTemplate } from './claude-template.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
@@ -1,4 +1,3 @@
1
- export { TemplateManager } from './slash-command-templates.js';
2
1
  export { projectTemplate } from './project-template.js';
3
2
  export { agentsTemplate } from './agents-template.js';
4
3
  export { claudeTemplate } from './claude-template.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAkB,MAAM,8BAA8B,CAAC;AAC/E,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/templates/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC"}
package/package.json CHANGED
@@ -1,9 +1,15 @@
1
1
  {
2
2
  "name": "@dedesfr/prompter",
3
- "version": "0.8.23",
3
+ "version": "1.0.0",
4
4
  "description": "Enhance prompts directly in your AI coding workflow",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
+ "files": [
8
+ "dist/",
9
+ "bin/",
10
+ "README.md",
11
+ "CHANGELOG.md"
12
+ ],
7
13
  "bin": {
8
14
  "prompter": "./bin/prompter.js"
9
15
  },
package/AGENTS.md DELETED
@@ -1,123 +0,0 @@
1
- <!-- PROMPTER:START -->
2
- # Prompter Instructions
3
-
4
- These instructions are for AI assistants working in this project.
5
-
6
- Always open `@/prompter/AGENTS.md` when the request:
7
- - Mentions planning or proposals (words like proposal, spec, change, plan)
8
- - Introduces new capabilities, breaking changes, architecture shifts, or big performance/security work
9
- - Sounds ambiguous and you need the authoritative spec before coding
10
-
11
- Use `@/prompter/AGENTS.md` to learn:
12
- - How to create and apply change proposals
13
- - Spec format and conventions
14
- - Project structure and guidelines
15
- - Show Remaining Tasks
16
-
17
- <!-- PROMPTER:END -->
18
-
19
- # AGENTS β€” Project Knowledge Base
20
- ## 1. πŸ“ Project Summary
21
- Prompter CLI is a local-first developer tool that scaffolds and maintains AI workflow prompt templates. It initializes a `prompter/` workspace, generates slash-command templates for multiple AI coding tools, and lists enhanced prompts created by those workflows.
22
-
23
- ## 2. 🧱 Tech Stack
24
- - Language: TypeScript (ESM)
25
- - Runtime: Node.js >= 20
26
- - CLI Framework: `commander`
27
- - Interactive Prompts: `@inquirer/prompts`
28
- - Terminal Output: `chalk`
29
- - Build: `tsc` via `build.js`
30
- - Tests: `vitest` (configured, no tests present)
31
-
32
- ## 3. πŸ—οΈ Architecture Overview
33
- - CLI entrypoint: `bin/prompter.js` β†’ `dist/cli/index.js`.
34
- - Commands: `init`, `update`, `list` implemented in `src/commands/`.
35
- - Config and constants in `src/core/config.ts`.
36
- - Template system in `src/core/templates/`, including slash-command bodies and project templates.
37
- - Tool-specific workflow generation via configurators in `src/core/configurators/slash/`.
38
- - Filesystem-only operations; no network or backend components.
39
-
40
- ## 4. πŸ“ Folder Structure & Important Files
41
- - `src/cli/index.ts`: CLI command definitions.
42
- - `src/commands/init.ts`: initialization workflow and tool selection.
43
- - `src/commands/update.ts`: update workflow files.
44
- - `src/commands/list.ts`: list enhanced prompts.
45
- - `src/core/config.ts`: constants, supported tools, prompter directory helpers.
46
- - `src/core/templates/`: template bodies and markers for workflow files.
47
- - `src/core/configurators/slash/`: tool-specific file paths and frontmatter.
48
- - `bin/prompter.js`: production CLI entry.
49
- - `docs/product-spec.md`: product specification reference.
50
-
51
- ## 5. πŸ”‘ Core Business Logic & Domain Rules
52
- - Initialization is idempotent: if `prompter/` exists, `prompter init` exits with a warning.
53
- - Workflow files include managed markers: `<!-- prompter-managed-start -->` and `<!-- prompter-managed-end -->`.
54
- - Updates only replace content between markers; missing markers are treated as errors.
55
- - Enhanced prompts live at `prompter/<slug>/enhanced-prompt.md`.
56
-
57
- ## 6. πŸ—‚οΈ Data Models / Entities
58
- - `ToolChoice`: tool selection metadata (name, id, availability, label).
59
- - `EnhancedPrompt`: `{ id, path, createdAt }` derived from filesystem stats.
60
-
61
- ## 7. 🧠 Domain Vocabulary / Glossary
62
- - **Prompter**: the CLI tool.
63
- - **Enhanced Prompt**: AI-generated specification saved to `prompter/<slug>/enhanced-prompt.md`.
64
- - **Workflow File**: tool-specific slash-command template file.
65
- - **Markers**: managed section boundaries for safe updates.
66
-
67
- ## 8. πŸ‘₯ Target Users & Personas
68
- - Developers using AI coding assistants who want standardized prompt workflows.
69
- - Team leads who need consistent prompt enhancement across repositories.
70
-
71
- ## 9. ✨ UI/UX Principles
72
- - Clear CLI output with status icons and colorized feedback.
73
- - Minimal prompts; optional non-interactive operation via flags.
74
-
75
- ## 10. πŸ”’ Security / Privacy Rules
76
- - No authentication or authorization.
77
- - Local filesystem only; no network calls.
78
- - Avoid storing sensitive data in prompts unless repository policies allow it.
79
-
80
- ## 11. πŸ€– Coding Conventions & Standards
81
- - ESM imports with explicit `.js` extensions in compiled paths.
82
- - Strict TypeScript (`tsconfig.json` uses `strict: true`).
83
- - Prefer small, focused modules and clear command boundaries.
84
-
85
- ## 12. 🧩 Development Rules for AI Agents (must include rules: never invent endpoints/fields/models, match existing coding style and architecture, modify only necessary parts β€” never full rewrite, ask before executing risky changes, return diffs/patch format when editing)
86
- - Never invent endpoints, fields, or models that do not exist in the repository.
87
- - Match the existing coding style, module boundaries, and architecture.
88
- - Modify only necessary parts; never do a full rewrite.
89
- - Ask before executing risky or destructive changes.
90
- - Return diffs/patch format when editing.
91
-
92
- ## 13. πŸ—ΊοΈ Integration Map
93
- - Supported AI tools and their workflow file paths:
94
- - Antigravity: `.agent/workflows/prompter-enhance.md`
95
- - Claude Code: `.claude/commands/prompter/enhance.md`
96
- - Codex: `.codex/prompts/prompter-enhance.md`
97
- - GitHub Copilot: `.github/prompts/prompter-enhance.md`
98
- - OpenCode: `.opencode/prompts/prompter-enhance.md`
99
- - Kilo Code: `.kilocode/workflows/prompter-enhance.md`
100
-
101
- ## 14. πŸ—ΊοΈ Roadmap & Future Plans
102
- - None documented in the repository.
103
-
104
- ## 15. ⚠️ Known Issues / Limitations
105
- - No tests present despite vitest configuration.
106
- - `prompter update` runs across all known tools, not just configured ones.
107
- - Update requires markers; files missing markers cannot be updated.
108
-
109
- ## 16. πŸ§ͺ Testing Strategy
110
- - Intended test runner: `vitest` (no test files currently present).
111
-
112
- ## 17. 🧯 Troubleshooting Guide
113
- - If `prompter update` fails, verify the workflow file contains the managed markers.
114
- - If `prompter list` is empty, ensure enhanced prompts exist at `prompter/<slug>/enhanced-prompt.md`.
115
- - If `prompter init` says already initialized, remove or rename the existing `prompter/` directory only if safe.
116
-
117
- ## 18. πŸ“ž Ownership / Responsibility Map
118
- - Not specified; treat as repository owner-maintained.
119
-
120
- ## ⏳ Missing Information Needed
121
- - Business roadmap, release plans, or milestones.
122
- - Ownership contacts and support process.
123
- - Any data retention or compliance requirements.
package/CLAUDE.md DELETED
@@ -1,17 +0,0 @@
1
- <!-- PROMPTER:START -->
2
- # Prompter Instructions
3
-
4
- These instructions are for AI assistants working in this project.
5
-
6
- Always open `@/prompter/CLAUDE.md` when the request:
7
- - Mentions planning or proposals (words like proposal, spec, change, plan)
8
- - Introduces new capabilities, breaking changes, architecture shifts, or big performance/security work
9
- - Sounds ambiguous and you need the authoritative spec before coding
10
-
11
- Use `@/prompter/CLAUDE.md` to learn:
12
- - How to create and apply change proposals
13
- - Spec format and conventions
14
- - Project structure and guidelines
15
- - Show Remaining Tasks
16
-
17
- <!-- PROMPTER:END -->
package/build.js DELETED
@@ -1,20 +0,0 @@
1
- import { execSync } from 'child_process';
2
- import { rmSync, existsSync } from 'fs';
3
-
4
- console.log('πŸ”¨ Building Prompter...\n');
5
-
6
- // Clean dist directory
7
- if (existsSync('dist')) {
8
- console.log('Cleaning dist directory...');
9
- rmSync('dist', { recursive: true });
10
- }
11
-
12
- // Compile TypeScript
13
- console.log('Compiling TypeScript...');
14
- try {
15
- execSync('npx tsc', { stdio: 'inherit' });
16
- console.log('\nβœ… Build completed successfully!');
17
- } catch (error) {
18
- console.error('\n❌ Build failed');
19
- process.exit(1);
20
- }