@dedesfr/prompter 0.6.15 → 0.7.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/CHANGELOG.md +14 -0
- package/dist/cli/index.js +144 -12
- package/dist/cli/index.js.map +1 -1
- package/dist/commands/archive.d.ts +11 -0
- package/dist/commands/archive.d.ts.map +1 -0
- package/dist/commands/archive.js +280 -0
- package/dist/commands/archive.js.map +1 -0
- package/dist/commands/change.d.ts +35 -0
- package/dist/commands/change.d.ts.map +1 -0
- package/dist/commands/change.js +277 -0
- package/dist/commands/change.js.map +1 -0
- package/dist/commands/config.d.ts +8 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +198 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +21 -5
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/list.d.ts +2 -2
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +153 -47
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/show.d.ts +14 -0
- package/dist/commands/show.d.ts.map +1 -0
- package/dist/commands/show.js +132 -0
- package/dist/commands/show.js.map +1 -0
- package/dist/commands/spec.d.ts +15 -0
- package/dist/commands/spec.d.ts.map +1 -0
- package/dist/commands/spec.js +225 -0
- package/dist/commands/spec.js.map +1 -0
- package/dist/commands/validate.d.ts +24 -0
- package/dist/commands/validate.d.ts.map +1 -0
- package/dist/commands/validate.js +294 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/core/artifact-graph/graph.d.ts +56 -0
- package/dist/core/artifact-graph/graph.d.ts.map +1 -0
- package/dist/core/artifact-graph/graph.js +141 -0
- package/dist/core/artifact-graph/graph.js.map +1 -0
- package/dist/core/artifact-graph/index.d.ts +7 -0
- package/dist/core/artifact-graph/index.d.ts.map +1 -0
- package/dist/core/artifact-graph/index.js +13 -0
- package/dist/core/artifact-graph/index.js.map +1 -0
- package/dist/core/artifact-graph/instruction-loader.d.ts +130 -0
- package/dist/core/artifact-graph/instruction-loader.d.ts.map +1 -0
- package/dist/core/artifact-graph/instruction-loader.js +173 -0
- package/dist/core/artifact-graph/instruction-loader.js.map +1 -0
- package/dist/core/artifact-graph/resolver.d.ts +61 -0
- package/dist/core/artifact-graph/resolver.d.ts.map +1 -0
- package/dist/core/artifact-graph/resolver.js +187 -0
- package/dist/core/artifact-graph/resolver.js.map +1 -0
- package/dist/core/artifact-graph/schema.d.ts +13 -0
- package/dist/core/artifact-graph/schema.d.ts.map +1 -0
- package/dist/core/artifact-graph/schema.js +108 -0
- package/dist/core/artifact-graph/schema.js.map +1 -0
- package/dist/core/artifact-graph/state.d.ts +12 -0
- package/dist/core/artifact-graph/state.d.ts.map +1 -0
- package/dist/core/artifact-graph/state.js +54 -0
- package/dist/core/artifact-graph/state.js.map +1 -0
- package/dist/core/artifact-graph/types.d.ts +45 -0
- package/dist/core/artifact-graph/types.d.ts.map +1 -0
- package/dist/core/artifact-graph/types.js +43 -0
- package/dist/core/artifact-graph/types.js.map +1 -0
- package/dist/core/completions/command-registry.d.ts +7 -0
- package/dist/core/completions/command-registry.d.ts.map +1 -0
- package/dist/core/completions/command-registry.js +380 -0
- package/dist/core/completions/command-registry.js.map +1 -0
- package/dist/core/completions/completion-provider.d.ts +60 -0
- package/dist/core/completions/completion-provider.d.ts.map +1 -0
- package/dist/core/completions/completion-provider.js +102 -0
- package/dist/core/completions/completion-provider.js.map +1 -0
- package/dist/core/completions/generators/bash-generator.d.ts +32 -0
- package/dist/core/completions/generators/bash-generator.d.ts.map +1 -0
- package/dist/core/completions/generators/bash-generator.js +174 -0
- package/dist/core/completions/generators/bash-generator.js.map +1 -0
- package/dist/core/completions/generators/fish-generator.d.ts +32 -0
- package/dist/core/completions/generators/fish-generator.d.ts.map +1 -0
- package/dist/core/completions/generators/fish-generator.js +157 -0
- package/dist/core/completions/generators/fish-generator.js.map +1 -0
- package/dist/core/completions/generators/powershell-generator.d.ts +33 -0
- package/dist/core/completions/generators/powershell-generator.d.ts.map +1 -0
- package/dist/core/completions/generators/powershell-generator.js +207 -0
- package/dist/core/completions/generators/powershell-generator.js.map +1 -0
- package/dist/core/completions/generators/zsh-generator.d.ts +44 -0
- package/dist/core/completions/generators/zsh-generator.d.ts.map +1 -0
- package/dist/core/completions/generators/zsh-generator.js +250 -0
- package/dist/core/completions/generators/zsh-generator.js.map +1 -0
- package/dist/core/completions/templates/bash-templates.d.ts +6 -0
- package/dist/core/completions/templates/bash-templates.d.ts.map +1 -0
- package/dist/core/completions/templates/bash-templates.js +24 -0
- package/dist/core/completions/templates/bash-templates.js.map +1 -0
- package/dist/core/completions/templates/fish-templates.d.ts +7 -0
- package/dist/core/completions/templates/fish-templates.d.ts.map +1 -0
- package/dist/core/completions/templates/fish-templates.js +39 -0
- package/dist/core/completions/templates/fish-templates.js.map +1 -0
- package/dist/core/completions/templates/powershell-templates.d.ts +6 -0
- package/dist/core/completions/templates/powershell-templates.d.ts.map +1 -0
- package/dist/core/completions/templates/powershell-templates.js +25 -0
- package/dist/core/completions/templates/powershell-templates.js.map +1 -0
- package/dist/core/completions/templates/zsh-templates.d.ts +6 -0
- package/dist/core/completions/templates/zsh-templates.d.ts.map +1 -0
- package/dist/core/completions/templates/zsh-templates.js +36 -0
- package/dist/core/completions/templates/zsh-templates.js.map +1 -0
- package/dist/core/completions/types.d.ts +78 -0
- package/dist/core/completions/types.d.ts.map +1 -0
- package/dist/core/completions/types.js +2 -0
- package/dist/core/completions/types.js.map +1 -0
- package/dist/core/config-schema.d.ts +76 -0
- package/dist/core/config-schema.d.ts.map +1 -0
- package/dist/core/config-schema.js +200 -0
- package/dist/core/config-schema.js.map +1 -0
- package/dist/core/config.d.ts.map +1 -1
- package/dist/core/config.js +18 -0
- package/dist/core/config.js.map +1 -1
- package/dist/core/configurators/slash/antigravity.d.ts.map +1 -1
- package/dist/core/configurators/slash/antigravity.js +6 -0
- package/dist/core/configurators/slash/antigravity.js.map +1 -1
- package/dist/core/configurators/slash/base.js +1 -1
- package/dist/core/configurators/slash/base.js.map +1 -1
- package/dist/core/configurators/slash/claude.d.ts.map +1 -1
- package/dist/core/configurators/slash/claude.js +6 -0
- package/dist/core/configurators/slash/claude.js.map +1 -1
- package/dist/core/configurators/slash/codex.d.ts.map +1 -1
- package/dist/core/configurators/slash/codex.js +6 -0
- package/dist/core/configurators/slash/codex.js.map +1 -1
- package/dist/core/configurators/slash/github-copilot.d.ts.map +1 -1
- package/dist/core/configurators/slash/github-copilot.js +6 -0
- package/dist/core/configurators/slash/github-copilot.js.map +1 -1
- package/dist/core/configurators/slash/kilocode.d.ts.map +1 -1
- package/dist/core/configurators/slash/kilocode.js +6 -0
- package/dist/core/configurators/slash/kilocode.js.map +1 -1
- package/dist/core/configurators/slash/opencode.d.ts.map +1 -1
- package/dist/core/configurators/slash/opencode.js +6 -0
- package/dist/core/configurators/slash/opencode.js.map +1 -1
- package/dist/core/converters/json-converter.d.ts +6 -0
- package/dist/core/converters/json-converter.d.ts.map +1 -0
- package/dist/core/converters/json-converter.js +51 -0
- package/dist/core/converters/json-converter.js.map +1 -0
- package/dist/core/global-config.d.ts +39 -0
- package/dist/core/global-config.d.ts.map +1 -0
- package/dist/core/global-config.js +115 -0
- package/dist/core/global-config.js.map +1 -0
- package/dist/core/parsers/change-parser.d.ts +13 -0
- package/dist/core/parsers/change-parser.d.ts.map +1 -0
- package/dist/core/parsers/change-parser.js +193 -0
- package/dist/core/parsers/change-parser.js.map +1 -0
- package/dist/core/parsers/markdown-parser.d.ts +22 -0
- package/dist/core/parsers/markdown-parser.d.ts.map +1 -0
- package/dist/core/parsers/markdown-parser.js +187 -0
- package/dist/core/parsers/markdown-parser.js.map +1 -0
- package/dist/core/parsers/requirement-blocks.d.ts +37 -0
- package/dist/core/parsers/requirement-blocks.d.ts.map +1 -0
- package/dist/core/parsers/requirement-blocks.js +201 -0
- package/dist/core/parsers/requirement-blocks.js.map +1 -0
- package/dist/core/prompt-templates.d.ts +3 -0
- package/dist/core/prompt-templates.d.ts.map +1 -1
- package/dist/core/prompt-templates.js +66 -0
- package/dist/core/prompt-templates.js.map +1 -1
- package/dist/core/schemas/base.schema.d.ts +13 -0
- package/dist/core/schemas/base.schema.d.ts.map +1 -0
- package/dist/core/schemas/base.schema.js +13 -0
- package/dist/core/schemas/base.schema.js.map +1 -0
- package/dist/core/schemas/change.schema.d.ts +73 -0
- package/dist/core/schemas/change.schema.d.ts.map +1 -0
- package/dist/core/schemas/change.schema.js +31 -0
- package/dist/core/schemas/change.schema.js.map +1 -0
- package/dist/core/schemas/index.d.ts +4 -0
- package/dist/core/schemas/index.d.ts.map +1 -0
- package/dist/core/schemas/index.js +4 -0
- package/dist/core/schemas/index.js.map +1 -0
- package/dist/core/schemas/spec.schema.d.ts +18 -0
- package/dist/core/schemas/spec.schema.d.ts.map +1 -0
- package/dist/core/schemas/spec.schema.js +15 -0
- package/dist/core/schemas/spec.schema.js.map +1 -0
- package/dist/core/specs-apply.d.ts +73 -0
- package/dist/core/specs-apply.d.ts.map +1 -0
- package/dist/core/specs-apply.js +384 -0
- package/dist/core/specs-apply.js.map +1 -0
- package/dist/core/styles/palette.d.ts +7 -0
- package/dist/core/styles/palette.d.ts.map +1 -0
- package/dist/core/styles/palette.js +8 -0
- package/dist/core/styles/palette.js.map +1 -0
- package/dist/core/templates/agents-template.d.ts +1 -1
- package/dist/core/templates/agents-template.d.ts.map +1 -1
- package/dist/core/templates/agents-template.js +443 -19
- package/dist/core/templates/agents-template.js.map +1 -1
- package/dist/core/templates/slash-command-templates.d.ts +1 -1
- package/dist/core/templates/slash-command-templates.d.ts.map +1 -1
- package/dist/core/templates/slash-command-templates.js +4 -1
- package/dist/core/templates/slash-command-templates.js.map +1 -1
- package/dist/core/validation/constants.d.ts +34 -0
- package/dist/core/validation/constants.d.ts.map +1 -0
- package/dist/core/validation/constants.js +40 -0
- package/dist/core/validation/constants.js.map +1 -0
- package/dist/core/validation/types.d.ts +18 -0
- package/dist/core/validation/types.d.ts.map +1 -0
- package/dist/core/validation/types.js +2 -0
- package/dist/core/validation/types.js.map +1 -0
- package/dist/core/validation/validator.d.ts +33 -0
- package/dist/core/validation/validator.d.ts.map +1 -0
- package/dist/core/validation/validator.js +409 -0
- package/dist/core/validation/validator.js.map +1 -0
- package/dist/core/view.d.ts +8 -0
- package/dist/core/view.d.ts.map +1 -0
- package/dist/core/view.js +168 -0
- package/dist/core/view.js.map +1 -0
- package/dist/utils/change-metadata.d.ts +47 -0
- package/dist/utils/change-metadata.d.ts.map +1 -0
- package/dist/utils/change-metadata.js +130 -0
- package/dist/utils/change-metadata.js.map +1 -0
- package/dist/utils/change-utils.d.ts +51 -0
- package/dist/utils/change-utils.d.ts.map +1 -0
- package/dist/utils/change-utils.js +100 -0
- package/dist/utils/change-utils.js.map +1 -0
- package/dist/utils/file-system.d.ts +25 -0
- package/dist/utils/file-system.d.ts.map +1 -0
- package/dist/utils/file-system.js +218 -0
- package/dist/utils/file-system.js.map +1 -0
- package/dist/utils/index.d.ts +4 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/interactive.d.ts +18 -0
- package/dist/utils/interactive.d.ts.map +1 -0
- package/dist/utils/interactive.js +21 -0
- package/dist/utils/interactive.js.map +1 -0
- package/dist/utils/item-discovery.d.ts +4 -0
- package/dist/utils/item-discovery.d.ts.map +1 -0
- package/dist/utils/item-discovery.js +72 -0
- package/dist/utils/item-discovery.js.map +1 -0
- package/dist/utils/match.d.ts +3 -0
- package/dist/utils/match.d.ts.map +1 -0
- package/dist/utils/match.js +22 -0
- package/dist/utils/match.js.map +1 -0
- package/dist/utils/shell-detection.d.ts +20 -0
- package/dist/utils/shell-detection.d.ts.map +1 -0
- package/dist/utils/shell-detection.js +41 -0
- package/dist/utils/shell-detection.js.map +1 -0
- package/dist/utils/task-progress.d.ts +8 -0
- package/dist/utils/task-progress.d.ts.map +1 -0
- package/dist/utils/task-progress.js +36 -0
- package/dist/utils/task-progress.js.map +1 -0
- package/docs/tasks.md +1 -1
- package/package.json +6 -2
- package/prompt/apply.md +17 -0
- package/prompt/archive.md +21 -0
- package/prompt/proposal.md +22 -0
- package/src/cli/index.ts +151 -16
- package/src/commands/archive.ts +302 -0
- package/src/commands/change.ts +292 -0
- package/src/commands/config.ts +233 -0
- package/src/commands/init.ts +19 -5
- package/src/commands/list.ts +176 -66
- package/src/commands/show.ts +138 -0
- package/src/commands/spec.ts +251 -0
- package/src/commands/validate.ts +326 -0
- package/src/core/artifact-graph/graph.ts +167 -0
- package/src/core/artifact-graph/index.ts +44 -0
- package/src/core/artifact-graph/instruction-loader.ts +302 -0
- package/src/core/artifact-graph/resolver.ts +226 -0
- package/src/core/artifact-graph/schema.ts +124 -0
- package/src/core/artifact-graph/state.ts +64 -0
- package/src/core/artifact-graph/types.ts +65 -0
- package/src/core/completions/command-registry.ts +382 -0
- package/src/core/completions/completion-provider.ts +128 -0
- package/src/core/completions/generators/bash-generator.ts +191 -0
- package/src/core/completions/generators/fish-generator.ts +188 -0
- package/src/core/completions/generators/powershell-generator.ts +223 -0
- package/src/core/completions/generators/zsh-generator.ts +281 -0
- package/src/core/completions/templates/bash-templates.ts +24 -0
- package/src/core/completions/templates/fish-templates.ts +40 -0
- package/src/core/completions/templates/powershell-templates.ts +25 -0
- package/src/core/completions/templates/zsh-templates.ts +36 -0
- package/src/core/completions/types.ts +90 -0
- package/src/core/config-schema.ts +230 -0
- package/src/core/config.ts +18 -0
- package/src/core/configurators/slash/antigravity.ts +6 -0
- package/src/core/configurators/slash/base.ts +1 -1
- package/src/core/configurators/slash/claude.ts +6 -0
- package/src/core/configurators/slash/codex.ts +6 -0
- package/src/core/configurators/slash/github-copilot.ts +6 -0
- package/src/core/configurators/slash/kilocode.ts +6 -0
- package/src/core/configurators/slash/opencode.ts +6 -0
- package/src/core/converters/json-converter.ts +62 -0
- package/src/core/global-config.ts +136 -0
- package/src/core/parsers/change-parser.ts +234 -0
- package/src/core/parsers/markdown-parser.ts +237 -0
- package/src/core/parsers/requirement-blocks.ts +234 -0
- package/src/core/prompt-templates.ts +69 -0
- package/src/core/schemas/base.schema.ts +20 -0
- package/src/core/schemas/change.schema.ts +42 -0
- package/src/core/schemas/index.ts +20 -0
- package/src/core/schemas/spec.schema.ts +17 -0
- package/src/core/specs-apply.ts +483 -0
- package/src/core/styles/palette.ts +8 -0
- package/src/core/templates/agents-template.ts +443 -19
- package/src/core/templates/slash-command-templates.ts +7 -1
- package/src/core/validation/constants.ts +48 -0
- package/src/core/validation/types.ts +19 -0
- package/src/core/validation/validator.ts +449 -0
- package/src/core/view.ts +219 -0
- package/src/utils/change-metadata.ts +171 -0
- package/src/utils/change-utils.ts +131 -0
- package/src/utils/file-system.ts +252 -0
- package/src/utils/index.ts +12 -0
- package/src/utils/interactive.ts +29 -0
- package/src/utils/item-discovery.ts +66 -0
- package/src/utils/match.ts +26 -0
- package/src/utils/shell-detection.ts +62 -0
- package/src/utils/task-progress.ts +43 -0
- package/dist/commands/ai-humanizer.d.ts +0 -11
- package/dist/commands/ai-humanizer.d.ts.map +0 -1
- package/dist/commands/ai-humanizer.js +0 -97
- package/dist/commands/ai-humanizer.js.map +0 -1
- package/dist/commands/api-contract-generator.d.ts +0 -11
- package/dist/commands/api-contract-generator.d.ts.map +0 -1
- package/dist/commands/api-contract-generator.js +0 -97
- package/dist/commands/api-contract-generator.js.map +0 -1
- package/dist/commands/design-system.d.ts +0 -11
- package/dist/commands/design-system.d.ts.map +0 -1
- package/dist/commands/design-system.js +0 -97
- package/dist/commands/design-system.js.map +0 -1
- package/dist/commands/document-explainer.d.ts +0 -11
- package/dist/commands/document-explainer.d.ts.map +0 -1
- package/dist/commands/document-explainer.js +0 -97
- package/dist/commands/document-explainer.js.map +0 -1
- package/dist/commands/epic-generator.d.ts +0 -11
- package/dist/commands/epic-generator.d.ts.map +0 -1
- package/dist/commands/epic-generator.js +0 -97
- package/dist/commands/epic-generator.js.map +0 -1
- package/dist/commands/erd-generator.d.ts +0 -11
- package/dist/commands/erd-generator.d.ts.map +0 -1
- package/dist/commands/erd-generator.js +0 -97
- package/dist/commands/erd-generator.js.map +0 -1
- package/dist/commands/fsd-generator.d.ts +0 -11
- package/dist/commands/fsd-generator.d.ts.map +0 -1
- package/dist/commands/fsd-generator.js +0 -97
- package/dist/commands/fsd-generator.js.map +0 -1
- package/dist/commands/prd-agent-generator.d.ts +0 -11
- package/dist/commands/prd-agent-generator.d.ts.map +0 -1
- package/dist/commands/prd-agent-generator.js +0 -95
- package/dist/commands/prd-agent-generator.js.map +0 -1
- package/dist/commands/prd-generator.d.ts +0 -11
- package/dist/commands/prd-generator.d.ts.map +0 -1
- package/dist/commands/prd-generator.js +0 -97
- package/dist/commands/prd-generator.js.map +0 -1
- package/dist/commands/product-brief.d.ts +0 -11
- package/dist/commands/product-brief.d.ts.map +0 -1
- package/dist/commands/product-brief.js +0 -97
- package/dist/commands/product-brief.js.map +0 -1
- package/dist/commands/skill-creator.d.ts +0 -11
- package/dist/commands/skill-creator.d.ts.map +0 -1
- package/dist/commands/skill-creator.js +0 -101
- package/dist/commands/skill-creator.js.map +0 -1
- package/dist/commands/story-generator.d.ts +0 -11
- package/dist/commands/story-generator.d.ts.map +0 -1
- package/dist/commands/story-generator.js +0 -97
- package/dist/commands/story-generator.js.map +0 -1
- package/dist/commands/tdd-generator.d.ts +0 -11
- package/dist/commands/tdd-generator.d.ts.map +0 -1
- package/dist/commands/tdd-generator.js +0 -97
- package/dist/commands/tdd-generator.js.map +0 -1
- package/dist/commands/tdd-lite-generator.d.ts +0 -11
- package/dist/commands/tdd-lite-generator.d.ts.map +0 -1
- package/dist/commands/tdd-lite-generator.js +0 -97
- package/dist/commands/tdd-lite-generator.js.map +0 -1
- package/dist/commands/wireframe-generator.d.ts +0 -11
- package/dist/commands/wireframe-generator.d.ts.map +0 -1
- package/dist/commands/wireframe-generator.js +0 -97
- package/dist/commands/wireframe-generator.js.map +0 -1
- package/src/commands/ai-humanizer.ts +0 -118
- package/src/commands/api-contract-generator.ts +0 -118
- package/src/commands/design-system.ts +0 -118
- package/src/commands/document-explainer.ts +0 -118
- package/src/commands/epic-generator.ts +0 -118
- package/src/commands/erd-generator.ts +0 -118
- package/src/commands/fsd-generator.ts +0 -118
- package/src/commands/prd-agent-generator.ts +0 -115
- package/src/commands/prd-generator.ts +0 -118
- package/src/commands/product-brief.ts +0 -118
- package/src/commands/skill-creator.ts +0 -123
- package/src/commands/story-generator.ts +0 -118
- package/src/commands/tdd-generator.ts +0 -118
- package/src/commands/tdd-lite-generator.ts +0 -118
- package/src/commands/wireframe-generator.ts +0 -118
|
@@ -0,0 +1,380 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Common flags used across multiple commands
|
|
3
|
+
*/
|
|
4
|
+
const COMMON_FLAGS = {
|
|
5
|
+
json: {
|
|
6
|
+
name: 'json',
|
|
7
|
+
description: 'Output as JSON',
|
|
8
|
+
},
|
|
9
|
+
jsonValidation: {
|
|
10
|
+
name: 'json',
|
|
11
|
+
description: 'Output validation results as JSON',
|
|
12
|
+
},
|
|
13
|
+
strict: {
|
|
14
|
+
name: 'strict',
|
|
15
|
+
description: 'Enable strict validation mode',
|
|
16
|
+
},
|
|
17
|
+
noInteractive: {
|
|
18
|
+
name: 'no-interactive',
|
|
19
|
+
description: 'Disable interactive prompts',
|
|
20
|
+
},
|
|
21
|
+
type: {
|
|
22
|
+
name: 'type',
|
|
23
|
+
description: 'Specify item type when ambiguous',
|
|
24
|
+
takesValue: true,
|
|
25
|
+
values: ['change', 'spec'],
|
|
26
|
+
},
|
|
27
|
+
};
|
|
28
|
+
/**
|
|
29
|
+
* Registry of all Prompter CLI commands with their flags and metadata.
|
|
30
|
+
* This registry is used to generate shell completion scripts.
|
|
31
|
+
*/
|
|
32
|
+
export const COMMAND_REGISTRY = [
|
|
33
|
+
{
|
|
34
|
+
name: 'init',
|
|
35
|
+
description: 'Initialize Prompter in your project',
|
|
36
|
+
acceptsPositional: true,
|
|
37
|
+
positionalType: 'path',
|
|
38
|
+
flags: [
|
|
39
|
+
{
|
|
40
|
+
name: 'tools',
|
|
41
|
+
description: 'Configure AI tools non-interactively (e.g., "all", "none", or comma-separated tool IDs)',
|
|
42
|
+
takesValue: true,
|
|
43
|
+
},
|
|
44
|
+
],
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
name: 'update',
|
|
48
|
+
description: 'Update Prompter instruction files',
|
|
49
|
+
acceptsPositional: true,
|
|
50
|
+
positionalType: 'path',
|
|
51
|
+
flags: [],
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
name: 'list',
|
|
55
|
+
description: 'List items (changes by default, or specs with --specs)',
|
|
56
|
+
flags: [
|
|
57
|
+
{
|
|
58
|
+
name: 'specs',
|
|
59
|
+
description: 'List specs instead of changes',
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
name: 'changes',
|
|
63
|
+
description: 'List changes explicitly (default)',
|
|
64
|
+
},
|
|
65
|
+
],
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: 'view',
|
|
69
|
+
description: 'Display an interactive dashboard of specs and changes',
|
|
70
|
+
flags: [],
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
name: 'validate',
|
|
74
|
+
description: 'Validate changes and specs',
|
|
75
|
+
acceptsPositional: true,
|
|
76
|
+
positionalType: 'change-or-spec-id',
|
|
77
|
+
flags: [
|
|
78
|
+
{
|
|
79
|
+
name: 'all',
|
|
80
|
+
description: 'Validate all changes and specs',
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
name: 'changes',
|
|
84
|
+
description: 'Validate all changes',
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
name: 'specs',
|
|
88
|
+
description: 'Validate all specs',
|
|
89
|
+
},
|
|
90
|
+
COMMON_FLAGS.type,
|
|
91
|
+
COMMON_FLAGS.strict,
|
|
92
|
+
COMMON_FLAGS.jsonValidation,
|
|
93
|
+
{
|
|
94
|
+
name: 'concurrency',
|
|
95
|
+
description: 'Max concurrent validations (defaults to env PROMPTER_CONCURRENCY or 6)',
|
|
96
|
+
takesValue: true,
|
|
97
|
+
},
|
|
98
|
+
COMMON_FLAGS.noInteractive,
|
|
99
|
+
],
|
|
100
|
+
},
|
|
101
|
+
{
|
|
102
|
+
name: 'show',
|
|
103
|
+
description: 'Show a change or spec',
|
|
104
|
+
acceptsPositional: true,
|
|
105
|
+
positionalType: 'change-or-spec-id',
|
|
106
|
+
flags: [
|
|
107
|
+
COMMON_FLAGS.json,
|
|
108
|
+
COMMON_FLAGS.type,
|
|
109
|
+
COMMON_FLAGS.noInteractive,
|
|
110
|
+
{
|
|
111
|
+
name: 'deltas-only',
|
|
112
|
+
description: 'Show only deltas (JSON only, change-specific)',
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
name: 'requirements-only',
|
|
116
|
+
description: 'Alias for --deltas-only (deprecated, change-specific)',
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
name: 'requirements',
|
|
120
|
+
description: 'Show only requirements, exclude scenarios (JSON only, spec-specific)',
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
name: 'no-scenarios',
|
|
124
|
+
description: 'Exclude scenario content (JSON only, spec-specific)',
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
name: 'requirement',
|
|
128
|
+
short: 'r',
|
|
129
|
+
description: 'Show specific requirement by ID (JSON only, spec-specific)',
|
|
130
|
+
takesValue: true,
|
|
131
|
+
},
|
|
132
|
+
],
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
name: 'archive',
|
|
136
|
+
description: 'Archive a completed change and update main specs',
|
|
137
|
+
acceptsPositional: true,
|
|
138
|
+
positionalType: 'change-id',
|
|
139
|
+
flags: [
|
|
140
|
+
{
|
|
141
|
+
name: 'yes',
|
|
142
|
+
short: 'y',
|
|
143
|
+
description: 'Skip confirmation prompts',
|
|
144
|
+
},
|
|
145
|
+
{
|
|
146
|
+
name: 'skip-specs',
|
|
147
|
+
description: 'Skip spec update operations',
|
|
148
|
+
},
|
|
149
|
+
{
|
|
150
|
+
name: 'no-validate',
|
|
151
|
+
description: 'Skip validation (not recommended)',
|
|
152
|
+
},
|
|
153
|
+
],
|
|
154
|
+
},
|
|
155
|
+
{
|
|
156
|
+
name: 'feedback',
|
|
157
|
+
description: 'Submit feedback about Prompter',
|
|
158
|
+
acceptsPositional: true,
|
|
159
|
+
flags: [
|
|
160
|
+
{
|
|
161
|
+
name: 'body',
|
|
162
|
+
description: 'Detailed description for the feedback',
|
|
163
|
+
takesValue: true,
|
|
164
|
+
},
|
|
165
|
+
],
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
name: 'change',
|
|
169
|
+
description: 'Manage Prompter change proposals (deprecated)',
|
|
170
|
+
flags: [],
|
|
171
|
+
subcommands: [
|
|
172
|
+
{
|
|
173
|
+
name: 'show',
|
|
174
|
+
description: 'Show a change proposal',
|
|
175
|
+
acceptsPositional: true,
|
|
176
|
+
positionalType: 'change-id',
|
|
177
|
+
flags: [
|
|
178
|
+
COMMON_FLAGS.json,
|
|
179
|
+
{
|
|
180
|
+
name: 'deltas-only',
|
|
181
|
+
description: 'Show only deltas (JSON only)',
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
name: 'requirements-only',
|
|
185
|
+
description: 'Alias for --deltas-only (deprecated)',
|
|
186
|
+
},
|
|
187
|
+
COMMON_FLAGS.noInteractive,
|
|
188
|
+
],
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
name: 'list',
|
|
192
|
+
description: 'List all active changes (deprecated)',
|
|
193
|
+
flags: [
|
|
194
|
+
COMMON_FLAGS.json,
|
|
195
|
+
{
|
|
196
|
+
name: 'long',
|
|
197
|
+
description: 'Show id and title with counts',
|
|
198
|
+
},
|
|
199
|
+
],
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
name: 'validate',
|
|
203
|
+
description: 'Validate a change proposal',
|
|
204
|
+
acceptsPositional: true,
|
|
205
|
+
positionalType: 'change-id',
|
|
206
|
+
flags: [
|
|
207
|
+
COMMON_FLAGS.strict,
|
|
208
|
+
COMMON_FLAGS.jsonValidation,
|
|
209
|
+
COMMON_FLAGS.noInteractive,
|
|
210
|
+
],
|
|
211
|
+
},
|
|
212
|
+
],
|
|
213
|
+
},
|
|
214
|
+
{
|
|
215
|
+
name: 'spec',
|
|
216
|
+
description: 'Manage Prompter specifications',
|
|
217
|
+
flags: [],
|
|
218
|
+
subcommands: [
|
|
219
|
+
{
|
|
220
|
+
name: 'show',
|
|
221
|
+
description: 'Show a specification',
|
|
222
|
+
acceptsPositional: true,
|
|
223
|
+
positionalType: 'spec-id',
|
|
224
|
+
flags: [
|
|
225
|
+
COMMON_FLAGS.json,
|
|
226
|
+
{
|
|
227
|
+
name: 'requirements',
|
|
228
|
+
description: 'Show only requirements, exclude scenarios (JSON only)',
|
|
229
|
+
},
|
|
230
|
+
{
|
|
231
|
+
name: 'no-scenarios',
|
|
232
|
+
description: 'Exclude scenario content (JSON only)',
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
name: 'requirement',
|
|
236
|
+
short: 'r',
|
|
237
|
+
description: 'Show specific requirement by ID (JSON only)',
|
|
238
|
+
takesValue: true,
|
|
239
|
+
},
|
|
240
|
+
COMMON_FLAGS.noInteractive,
|
|
241
|
+
],
|
|
242
|
+
},
|
|
243
|
+
{
|
|
244
|
+
name: 'list',
|
|
245
|
+
description: 'List all specifications',
|
|
246
|
+
flags: [
|
|
247
|
+
COMMON_FLAGS.json,
|
|
248
|
+
{
|
|
249
|
+
name: 'long',
|
|
250
|
+
description: 'Show id and title with counts',
|
|
251
|
+
},
|
|
252
|
+
],
|
|
253
|
+
},
|
|
254
|
+
{
|
|
255
|
+
name: 'validate',
|
|
256
|
+
description: 'Validate a specification',
|
|
257
|
+
acceptsPositional: true,
|
|
258
|
+
positionalType: 'spec-id',
|
|
259
|
+
flags: [
|
|
260
|
+
COMMON_FLAGS.strict,
|
|
261
|
+
COMMON_FLAGS.jsonValidation,
|
|
262
|
+
COMMON_FLAGS.noInteractive,
|
|
263
|
+
],
|
|
264
|
+
},
|
|
265
|
+
],
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
name: 'completion',
|
|
269
|
+
description: 'Manage shell completions for Prompter CLI',
|
|
270
|
+
flags: [],
|
|
271
|
+
subcommands: [
|
|
272
|
+
{
|
|
273
|
+
name: 'generate',
|
|
274
|
+
description: 'Generate completion script for a shell (outputs to stdout)',
|
|
275
|
+
acceptsPositional: true,
|
|
276
|
+
positionalType: 'shell',
|
|
277
|
+
flags: [],
|
|
278
|
+
},
|
|
279
|
+
{
|
|
280
|
+
name: 'install',
|
|
281
|
+
description: 'Install completion script for a shell',
|
|
282
|
+
acceptsPositional: true,
|
|
283
|
+
positionalType: 'shell',
|
|
284
|
+
flags: [
|
|
285
|
+
{
|
|
286
|
+
name: 'verbose',
|
|
287
|
+
description: 'Show detailed installation output',
|
|
288
|
+
},
|
|
289
|
+
],
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
name: 'uninstall',
|
|
293
|
+
description: 'Uninstall completion script for a shell',
|
|
294
|
+
acceptsPositional: true,
|
|
295
|
+
positionalType: 'shell',
|
|
296
|
+
flags: [
|
|
297
|
+
{
|
|
298
|
+
name: 'yes',
|
|
299
|
+
short: 'y',
|
|
300
|
+
description: 'Skip confirmation prompts',
|
|
301
|
+
},
|
|
302
|
+
],
|
|
303
|
+
},
|
|
304
|
+
],
|
|
305
|
+
},
|
|
306
|
+
{
|
|
307
|
+
name: 'config',
|
|
308
|
+
description: 'View and modify global Prompter configuration',
|
|
309
|
+
flags: [
|
|
310
|
+
{
|
|
311
|
+
name: 'scope',
|
|
312
|
+
description: 'Config scope (only "global" supported currently)',
|
|
313
|
+
takesValue: true,
|
|
314
|
+
values: ['global'],
|
|
315
|
+
},
|
|
316
|
+
],
|
|
317
|
+
subcommands: [
|
|
318
|
+
{
|
|
319
|
+
name: 'path',
|
|
320
|
+
description: 'Show config file location',
|
|
321
|
+
flags: [],
|
|
322
|
+
},
|
|
323
|
+
{
|
|
324
|
+
name: 'list',
|
|
325
|
+
description: 'Show all current settings',
|
|
326
|
+
flags: [
|
|
327
|
+
COMMON_FLAGS.json,
|
|
328
|
+
],
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
name: 'get',
|
|
332
|
+
description: 'Get a specific value (raw, scriptable)',
|
|
333
|
+
acceptsPositional: true,
|
|
334
|
+
flags: [],
|
|
335
|
+
},
|
|
336
|
+
{
|
|
337
|
+
name: 'set',
|
|
338
|
+
description: 'Set a value (auto-coerce types)',
|
|
339
|
+
acceptsPositional: true,
|
|
340
|
+
flags: [
|
|
341
|
+
{
|
|
342
|
+
name: 'string',
|
|
343
|
+
description: 'Force value to be stored as string',
|
|
344
|
+
},
|
|
345
|
+
{
|
|
346
|
+
name: 'allow-unknown',
|
|
347
|
+
description: 'Allow setting unknown keys',
|
|
348
|
+
},
|
|
349
|
+
],
|
|
350
|
+
},
|
|
351
|
+
{
|
|
352
|
+
name: 'unset',
|
|
353
|
+
description: 'Remove a key (revert to default)',
|
|
354
|
+
acceptsPositional: true,
|
|
355
|
+
flags: [],
|
|
356
|
+
},
|
|
357
|
+
{
|
|
358
|
+
name: 'reset',
|
|
359
|
+
description: 'Reset configuration to defaults',
|
|
360
|
+
flags: [
|
|
361
|
+
{
|
|
362
|
+
name: 'all',
|
|
363
|
+
description: 'Reset all configuration (required)',
|
|
364
|
+
},
|
|
365
|
+
{
|
|
366
|
+
name: 'yes',
|
|
367
|
+
short: 'y',
|
|
368
|
+
description: 'Skip confirmation prompts',
|
|
369
|
+
},
|
|
370
|
+
],
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
name: 'edit',
|
|
374
|
+
description: 'Open config in $EDITOR',
|
|
375
|
+
flags: [],
|
|
376
|
+
},
|
|
377
|
+
],
|
|
378
|
+
},
|
|
379
|
+
];
|
|
380
|
+
//# sourceMappingURL=command-registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"command-registry.js","sourceRoot":"","sources":["../../../src/core/completions/command-registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provides dynamic completion suggestions for Prompter items (changes and specs).
|
|
3
|
+
* Implements a 2-second cache to avoid excessive file system operations during
|
|
4
|
+
* tab completion.
|
|
5
|
+
*/
|
|
6
|
+
export declare class CompletionProvider {
|
|
7
|
+
private readonly cacheTTLMs;
|
|
8
|
+
private readonly projectRoot;
|
|
9
|
+
private readonly cacheTTL;
|
|
10
|
+
private changeCache;
|
|
11
|
+
private specCache;
|
|
12
|
+
/**
|
|
13
|
+
* Creates a new completion provider
|
|
14
|
+
*
|
|
15
|
+
* @param cacheTTLMs - Cache time-to-live in milliseconds (default: 2000ms)
|
|
16
|
+
* @param projectRoot - Project root directory (default: process.cwd())
|
|
17
|
+
*/
|
|
18
|
+
constructor(cacheTTLMs?: number, projectRoot?: string);
|
|
19
|
+
/**
|
|
20
|
+
* Get all active change IDs for completion
|
|
21
|
+
*
|
|
22
|
+
* @returns Array of change IDs
|
|
23
|
+
*/
|
|
24
|
+
getChangeIds(): Promise<string[]>;
|
|
25
|
+
/**
|
|
26
|
+
* Get all spec IDs for completion
|
|
27
|
+
*
|
|
28
|
+
* @returns Array of spec IDs
|
|
29
|
+
*/
|
|
30
|
+
getSpecIds(): Promise<string[]>;
|
|
31
|
+
/**
|
|
32
|
+
* Get both change and spec IDs for completion
|
|
33
|
+
*
|
|
34
|
+
* @returns Object with changeIds and specIds arrays
|
|
35
|
+
*/
|
|
36
|
+
getAllIds(): Promise<{
|
|
37
|
+
changeIds: string[];
|
|
38
|
+
specIds: string[];
|
|
39
|
+
}>;
|
|
40
|
+
/**
|
|
41
|
+
* Clear all cached data
|
|
42
|
+
*/
|
|
43
|
+
clearCache(): void;
|
|
44
|
+
/**
|
|
45
|
+
* Get cache statistics for debugging
|
|
46
|
+
*
|
|
47
|
+
* @returns Cache status information
|
|
48
|
+
*/
|
|
49
|
+
getCacheStats(): {
|
|
50
|
+
changeCache: {
|
|
51
|
+
valid: boolean;
|
|
52
|
+
age?: number;
|
|
53
|
+
};
|
|
54
|
+
specCache: {
|
|
55
|
+
valid: boolean;
|
|
56
|
+
age?: number;
|
|
57
|
+
};
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
//# sourceMappingURL=completion-provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion-provider.d.ts","sourceRoot":"","sources":["../../../src/core/completions/completion-provider.ts"],"names":[],"mappings":"AAUA;;;;GAIG;AACH,qBAAa,kBAAkB;IAY3B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;IAZ9B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,WAAW,CAAqC;IACxD,OAAO,CAAC,SAAS,CAAqC;IAEtD;;;;;OAKG;gBAEgB,UAAU,GAAE,MAAa,EACzB,WAAW,GAAE,MAAsB;IAKtD;;;;OAIG;IACG,YAAY,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBvC;;;;OAIG;IACG,UAAU,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBrC;;;;OAIG;IACG,SAAS,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAStE;;OAEG;IACH,UAAU,IAAI,IAAI;IAKlB;;;;OAIG;IACH,aAAa,IAAI;QACf,WAAW,EAAE;YAAE,KAAK,EAAE,OAAO,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAC9C,SAAS,EAAE;YAAE,KAAK,EAAE,OAAO,CAAC;YAAC,GAAG,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;KAC7C;CAcF"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import { getActiveChangeIds, getSpecIds } from '../../utils/item-discovery.js';
|
|
2
|
+
/**
|
|
3
|
+
* Provides dynamic completion suggestions for Prompter items (changes and specs).
|
|
4
|
+
* Implements a 2-second cache to avoid excessive file system operations during
|
|
5
|
+
* tab completion.
|
|
6
|
+
*/
|
|
7
|
+
export class CompletionProvider {
|
|
8
|
+
cacheTTLMs;
|
|
9
|
+
projectRoot;
|
|
10
|
+
cacheTTL;
|
|
11
|
+
changeCache = null;
|
|
12
|
+
specCache = null;
|
|
13
|
+
/**
|
|
14
|
+
* Creates a new completion provider
|
|
15
|
+
*
|
|
16
|
+
* @param cacheTTLMs - Cache time-to-live in milliseconds (default: 2000ms)
|
|
17
|
+
* @param projectRoot - Project root directory (default: process.cwd())
|
|
18
|
+
*/
|
|
19
|
+
constructor(cacheTTLMs = 2000, projectRoot = process.cwd()) {
|
|
20
|
+
this.cacheTTLMs = cacheTTLMs;
|
|
21
|
+
this.projectRoot = projectRoot;
|
|
22
|
+
this.cacheTTL = cacheTTLMs;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Get all active change IDs for completion
|
|
26
|
+
*
|
|
27
|
+
* @returns Array of change IDs
|
|
28
|
+
*/
|
|
29
|
+
async getChangeIds() {
|
|
30
|
+
const now = Date.now();
|
|
31
|
+
// Check if cache is valid
|
|
32
|
+
if (this.changeCache && now - this.changeCache.timestamp < this.cacheTTL) {
|
|
33
|
+
return this.changeCache.data;
|
|
34
|
+
}
|
|
35
|
+
// Fetch fresh data
|
|
36
|
+
const changeIds = await getActiveChangeIds(this.projectRoot);
|
|
37
|
+
// Update cache
|
|
38
|
+
this.changeCache = {
|
|
39
|
+
data: changeIds,
|
|
40
|
+
timestamp: now,
|
|
41
|
+
};
|
|
42
|
+
return changeIds;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Get all spec IDs for completion
|
|
46
|
+
*
|
|
47
|
+
* @returns Array of spec IDs
|
|
48
|
+
*/
|
|
49
|
+
async getSpecIds() {
|
|
50
|
+
const now = Date.now();
|
|
51
|
+
// Check if cache is valid
|
|
52
|
+
if (this.specCache && now - this.specCache.timestamp < this.cacheTTL) {
|
|
53
|
+
return this.specCache.data;
|
|
54
|
+
}
|
|
55
|
+
// Fetch fresh data
|
|
56
|
+
const specIds = await getSpecIds(this.projectRoot);
|
|
57
|
+
// Update cache
|
|
58
|
+
this.specCache = {
|
|
59
|
+
data: specIds,
|
|
60
|
+
timestamp: now,
|
|
61
|
+
};
|
|
62
|
+
return specIds;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Get both change and spec IDs for completion
|
|
66
|
+
*
|
|
67
|
+
* @returns Object with changeIds and specIds arrays
|
|
68
|
+
*/
|
|
69
|
+
async getAllIds() {
|
|
70
|
+
const [changeIds, specIds] = await Promise.all([
|
|
71
|
+
this.getChangeIds(),
|
|
72
|
+
this.getSpecIds(),
|
|
73
|
+
]);
|
|
74
|
+
return { changeIds, specIds };
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Clear all cached data
|
|
78
|
+
*/
|
|
79
|
+
clearCache() {
|
|
80
|
+
this.changeCache = null;
|
|
81
|
+
this.specCache = null;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get cache statistics for debugging
|
|
85
|
+
*
|
|
86
|
+
* @returns Cache status information
|
|
87
|
+
*/
|
|
88
|
+
getCacheStats() {
|
|
89
|
+
const now = Date.now();
|
|
90
|
+
return {
|
|
91
|
+
changeCache: {
|
|
92
|
+
valid: this.changeCache !== null && now - this.changeCache.timestamp < this.cacheTTL,
|
|
93
|
+
age: this.changeCache ? now - this.changeCache.timestamp : undefined,
|
|
94
|
+
},
|
|
95
|
+
specCache: {
|
|
96
|
+
valid: this.specCache !== null && now - this.specCache.timestamp < this.cacheTTL,
|
|
97
|
+
age: this.specCache ? now - this.specCache.timestamp : undefined,
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=completion-provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"completion-provider.js","sourceRoot":"","sources":["../../../src/core/completions/completion-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { CompletionGenerator, CommandDefinition } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Generates Bash completion scripts for the Prompter CLI.
|
|
4
|
+
* Follows Bash completion conventions using complete builtin and COMPREPLY array.
|
|
5
|
+
*/
|
|
6
|
+
export declare class BashGenerator implements CompletionGenerator {
|
|
7
|
+
readonly shell: "bash";
|
|
8
|
+
/**
|
|
9
|
+
* Generate a Bash completion script
|
|
10
|
+
*
|
|
11
|
+
* @param commands - Command definitions to generate completions for
|
|
12
|
+
* @returns Bash completion script as a string
|
|
13
|
+
*/
|
|
14
|
+
generate(commands: CommandDefinition[]): string;
|
|
15
|
+
/**
|
|
16
|
+
* Generate completion case logic for a command
|
|
17
|
+
*/
|
|
18
|
+
private generateCommandCase;
|
|
19
|
+
/**
|
|
20
|
+
* Generate argument completion (flags and positional arguments)
|
|
21
|
+
*/
|
|
22
|
+
private generateArgumentCompletion;
|
|
23
|
+
/**
|
|
24
|
+
* Generate positional argument completion based on type
|
|
25
|
+
*/
|
|
26
|
+
private generatePositionalCompletion;
|
|
27
|
+
/**
|
|
28
|
+
* Escape command/subcommand names for safe use in Bash scripts
|
|
29
|
+
*/
|
|
30
|
+
private escapeCommandName;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=bash-generator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bash-generator.d.ts","sourceRoot":"","sources":["../../../../src/core/completions/generators/bash-generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAkB,MAAM,aAAa,CAAC;AAGrF;;;GAGG;AACH,qBAAa,aAAc,YAAW,mBAAmB;IACvD,QAAQ,CAAC,KAAK,EAAG,MAAM,CAAU;IAEjC;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,iBAAiB,EAAE,GAAG,MAAM;IA6D/C;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA4C3B;;OAEG;IACH,OAAO,CAAC,0BAA0B;IA2BlC;;OAEG;IACH,OAAO,CAAC,4BAA4B;IA0BpC;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAI1B"}
|