@niujiajie/freespec 0.0.0-stage → 1.15.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.
- package/LICENSE +22 -0
- package/README.md +58 -2
- package/bin/freespec.js +5 -0
- package/dist/cli/index.d.ts +25 -0
- package/dist/cli/index.js +359 -0
- package/dist/commands/shared-output.d.ts +18 -0
- package/dist/commands/shared-output.js +61 -0
- package/dist/commands/workflow/default-schema.d.ts +2 -0
- package/dist/commands/workflow/default-schema.js +4 -0
- package/dist/commands/workflow/index.d.ts +13 -0
- package/dist/commands/workflow/index.js +10 -0
- package/dist/commands/workflow/instructions.d.ts +39 -0
- package/dist/commands/workflow/instructions.js +565 -0
- package/dist/commands/workflow/new-change.d.ts +19 -0
- package/dist/commands/workflow/new-change.js +135 -0
- package/dist/commands/workflow/shared.d.ts +94 -0
- package/dist/commands/workflow/shared.js +169 -0
- package/dist/commands/workflow/status.d.ts +18 -0
- package/dist/commands/workflow/status.js +201 -0
- package/dist/core/artifact-graph/graph.d.ts +72 -0
- package/dist/core/artifact-graph/graph.js +165 -0
- package/dist/core/artifact-graph/index.d.ts +9 -0
- package/dist/core/artifact-graph/index.js +14 -0
- package/dist/core/artifact-graph/instruction-loader.d.ts +208 -0
- package/dist/core/artifact-graph/instruction-loader.js +268 -0
- package/dist/core/artifact-graph/outputs.d.ts +19 -0
- package/dist/core/artifact-graph/outputs.js +351 -0
- package/dist/core/artifact-graph/resolver.d.ts +89 -0
- package/dist/core/artifact-graph/resolver.js +342 -0
- package/dist/core/artifact-graph/schema.d.ts +27 -0
- package/dist/core/artifact-graph/schema.js +160 -0
- package/dist/core/artifact-graph/state.d.ts +12 -0
- package/dist/core/artifact-graph/state.js +31 -0
- package/dist/core/artifact-graph/types.d.ts +40 -0
- package/dist/core/artifact-graph/types.js +59 -0
- package/dist/core/available-tools.d.ts +18 -0
- package/dist/core/available-tools.js +49 -0
- package/dist/core/change-layout.d.ts +17 -0
- package/dist/core/change-layout.js +30 -0
- package/dist/core/change-metadata/index.d.ts +2 -0
- package/dist/core/change-metadata/index.js +2 -0
- package/dist/core/change-metadata/schema.d.ts +23 -0
- package/dist/core/change-metadata/schema.js +46 -0
- package/dist/core/change-status-policy.d.ts +49 -0
- package/dist/core/change-status-policy.js +50 -0
- package/dist/core/command-generation/adapters/amazon-q.d.ts +17 -0
- package/dist/core/command-generation/adapters/amazon-q.js +32 -0
- package/dist/core/command-generation/adapters/antigravity.d.ts +13 -0
- package/dist/core/command-generation/adapters/antigravity.js +27 -0
- package/dist/core/command-generation/adapters/atomcode.d.ts +24 -0
- package/dist/core/command-generation/adapters/atomcode.js +46 -0
- package/dist/core/command-generation/adapters/auggie.d.ts +13 -0
- package/dist/core/command-generation/adapters/auggie.js +28 -0
- package/dist/core/command-generation/adapters/bob.d.ts +18 -0
- package/dist/core/command-generation/adapters/bob.js +33 -0
- package/dist/core/command-generation/adapters/claude.d.ts +13 -0
- package/dist/core/command-generation/adapters/claude.js +32 -0
- package/dist/core/command-generation/adapters/cline.d.ts +14 -0
- package/dist/core/command-generation/adapters/cline.js +27 -0
- package/dist/core/command-generation/adapters/codeassistant.d.ts +15 -0
- package/dist/core/command-generation/adapters/codeassistant.js +29 -0
- package/dist/core/command-generation/adapters/codebuddy.d.ts +13 -0
- package/dist/core/command-generation/adapters/codebuddy.js +29 -0
- package/dist/core/command-generation/adapters/codestudio.d.ts +13 -0
- package/dist/core/command-generation/adapters/codestudio.js +27 -0
- package/dist/core/command-generation/adapters/command-code.d.ts +19 -0
- package/dist/core/command-generation/adapters/command-code.js +34 -0
- package/dist/core/command-generation/adapters/continue.d.ts +13 -0
- package/dist/core/command-generation/adapters/continue.js +33 -0
- package/dist/core/command-generation/adapters/costrict.d.ts +13 -0
- package/dist/core/command-generation/adapters/costrict.js +28 -0
- package/dist/core/command-generation/adapters/crush.d.ts +13 -0
- package/dist/core/command-generation/adapters/crush.js +30 -0
- package/dist/core/command-generation/adapters/cursor.d.ts +14 -0
- package/dist/core/command-generation/adapters/cursor.js +31 -0
- package/dist/core/command-generation/adapters/devin.d.ts +19 -0
- package/dist/core/command-generation/adapters/devin.js +36 -0
- package/dist/core/command-generation/adapters/easycode.d.ts +17 -0
- package/dist/core/command-generation/adapters/easycode.js +28 -0
- package/dist/core/command-generation/adapters/factory.d.ts +13 -0
- package/dist/core/command-generation/adapters/factory.js +28 -0
- package/dist/core/command-generation/adapters/gemini.d.ts +13 -0
- package/dist/core/command-generation/adapters/gemini.js +27 -0
- package/dist/core/command-generation/adapters/gigacode.d.ts +17 -0
- package/dist/core/command-generation/adapters/gigacode.js +31 -0
- package/dist/core/command-generation/adapters/github-copilot.d.ts +13 -0
- package/dist/core/command-generation/adapters/github-copilot.js +27 -0
- package/dist/core/command-generation/adapters/iflow.d.ts +13 -0
- package/dist/core/command-generation/adapters/iflow.js +30 -0
- package/dist/core/command-generation/adapters/index.d.ts +40 -0
- package/dist/core/command-generation/adapters/index.js +40 -0
- package/dist/core/command-generation/adapters/junie.d.ts +13 -0
- package/dist/core/command-generation/adapters/junie.js +27 -0
- package/dist/core/command-generation/adapters/kilocode.d.ts +14 -0
- package/dist/core/command-generation/adapters/kilocode.js +23 -0
- package/dist/core/command-generation/adapters/kiro.d.ts +13 -0
- package/dist/core/command-generation/adapters/kiro.js +27 -0
- package/dist/core/command-generation/adapters/lingma.d.ts +13 -0
- package/dist/core/command-generation/adapters/lingma.js +30 -0
- package/dist/core/command-generation/adapters/oh-my-pi.d.ts +21 -0
- package/dist/core/command-generation/adapters/oh-my-pi.js +42 -0
- package/dist/core/command-generation/adapters/opencode.d.ts +14 -0
- package/dist/core/command-generation/adapters/opencode.js +38 -0
- package/dist/core/command-generation/adapters/pi.d.ts +18 -0
- package/dist/core/command-generation/adapters/pi.js +39 -0
- package/dist/core/command-generation/adapters/qoder.d.ts +13 -0
- package/dist/core/command-generation/adapters/qoder.js +30 -0
- package/dist/core/command-generation/adapters/qwen.d.ts +17 -0
- package/dist/core/command-generation/adapters/qwen.js +31 -0
- package/dist/core/command-generation/adapters/roocode.d.ts +14 -0
- package/dist/core/command-generation/adapters/roocode.js +27 -0
- package/dist/core/command-generation/adapters/trae.d.ts +13 -0
- package/dist/core/command-generation/adapters/trae.js +28 -0
- package/dist/core/command-generation/adapters/zcode.d.ts +16 -0
- package/dist/core/command-generation/adapters/zcode.js +33 -0
- package/dist/core/command-generation/generator.d.ts +29 -0
- package/dist/core/command-generation/generator.js +43 -0
- package/dist/core/command-generation/index.d.ts +22 -0
- package/dist/core/command-generation/index.js +24 -0
- package/dist/core/command-generation/invocation.d.ts +73 -0
- package/dist/core/command-generation/invocation.js +77 -0
- package/dist/core/command-generation/registry.d.ts +36 -0
- package/dist/core/command-generation/registry.js +114 -0
- package/dist/core/command-generation/toml.d.ts +19 -0
- package/dist/core/command-generation/toml.js +39 -0
- package/dist/core/command-generation/types.d.ts +63 -0
- package/dist/core/command-generation/types.js +8 -0
- package/dist/core/command-generation/yaml.d.ts +36 -0
- package/dist/core/command-generation/yaml.js +48 -0
- package/dist/core/command-surface.d.ts +15 -0
- package/dist/core/command-surface.js +33 -0
- package/dist/core/config-prompts.d.ts +9 -0
- package/dist/core/config-prompts.js +56 -0
- package/dist/core/config-schema.d.ts +98 -0
- package/dist/core/config-schema.js +308 -0
- package/dist/core/config.d.ts +50 -0
- package/dist/core/config.js +122 -0
- package/dist/core/file-state.d.ts +36 -0
- package/dist/core/file-state.js +144 -0
- package/dist/core/file-view.d.ts +13 -0
- package/dist/core/file-view.js +14 -0
- package/dist/core/global-config.d.ts +101 -0
- package/dist/core/global-config.js +182 -0
- package/dist/core/id.d.ts +17 -0
- package/dist/core/id.js +30 -0
- package/dist/core/index.d.ts +6 -0
- package/dist/core/index.js +7 -0
- package/dist/core/init.d.ts +57 -0
- package/dist/core/init.js +836 -0
- package/dist/core/list.d.ts +11 -0
- package/dist/core/list.js +197 -0
- package/dist/core/migration.d.ts +121 -0
- package/dist/core/migration.js +540 -0
- package/dist/core/onboarding-commands.d.ts +30 -0
- package/dist/core/onboarding-commands.js +38 -0
- package/dist/core/openspec-root.d.ts +47 -0
- package/dist/core/openspec-root.js +196 -0
- package/dist/core/planning-home.d.ts +16 -0
- package/dist/core/planning-home.js +67 -0
- package/dist/core/profile-sync-drift.d.ts +31 -0
- package/dist/core/profile-sync-drift.js +201 -0
- package/dist/core/profiles.d.ts +19 -0
- package/dist/core/profiles.js +33 -0
- package/dist/core/project-config.d.ts +132 -0
- package/dist/core/project-config.js +519 -0
- package/dist/core/references.d.ts +10 -0
- package/dist/core/references.js +46 -0
- package/dist/core/root-selection.d.ts +59 -0
- package/dist/core/root-selection.js +132 -0
- package/dist/core/shared/allowed-tools.d.ts +12 -0
- package/dist/core/shared/allowed-tools.js +12 -0
- package/dist/core/shared/ide-restart.d.ts +26 -0
- package/dist/core/shared/ide-restart.js +42 -0
- package/dist/core/shared/index.d.ts +11 -0
- package/dist/core/shared/index.js +11 -0
- package/dist/core/shared/skill-content-equivalence.d.ts +7 -0
- package/dist/core/shared/skill-content-equivalence.js +45 -0
- package/dist/core/shared/skill-files.d.ts +7 -0
- package/dist/core/shared/skill-files.js +43 -0
- package/dist/core/shared/skill-generation.d.ts +49 -0
- package/dist/core/shared/skill-generation.js +125 -0
- package/dist/core/shared/skill-paths.d.ts +13 -0
- package/dist/core/shared/skill-paths.js +23 -0
- package/dist/core/shared/tool-detection.d.ts +99 -0
- package/dist/core/shared/tool-detection.js +318 -0
- package/dist/core/shared-skill-target.d.ts +51 -0
- package/dist/core/shared-skill-target.js +239 -0
- package/dist/core/store/errors.d.ts +20 -0
- package/dist/core/store/errors.js +22 -0
- package/dist/core/store/index.d.ts +2 -0
- package/dist/core/store/index.js +2 -0
- package/dist/core/styles/palette.d.ts +7 -0
- package/dist/core/styles/palette.js +8 -0
- package/dist/core/templates/optional-workflow.d.ts +69 -0
- package/dist/core/templates/optional-workflow.js +140 -0
- package/dist/core/templates/types.d.ts +19 -0
- package/dist/core/templates/types.js +5 -0
- package/dist/core/templates/workflows/personal.d.ts +22 -0
- package/dist/core/templates/workflows/personal.js +225 -0
- package/dist/core/update-plan.d.ts +127 -0
- package/dist/core/update-plan.js +390 -0
- package/dist/core/update.d.ts +154 -0
- package/dist/core/update.js +723 -0
- package/dist/core/version-check.d.ts +188 -0
- package/dist/core/version-check.js +906 -0
- package/dist/core/zod-issues.d.ts +4 -0
- package/dist/core/zod-issues.js +10 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/prompts/searchable-multi-select.d.ts +35 -0
- package/dist/prompts/searchable-multi-select.js +188 -0
- package/dist/telemetry/config.d.ts +37 -0
- package/dist/telemetry/config.js +148 -0
- package/dist/telemetry/index.d.ts +39 -0
- package/dist/telemetry/index.js +217 -0
- package/dist/telemetry/opt-out.d.ts +17 -0
- package/dist/telemetry/opt-out.js +27 -0
- package/dist/ui/ascii-patterns.d.ts +16 -0
- package/dist/ui/ascii-patterns.js +133 -0
- package/dist/ui/welcome-screen.d.ts +18 -0
- package/dist/ui/welcome-screen.js +199 -0
- package/dist/utils/change-metadata.d.ts +116 -0
- package/dist/utils/change-metadata.js +324 -0
- package/dist/utils/change-utils.d.ts +79 -0
- package/dist/utils/change-utils.js +121 -0
- package/dist/utils/ci.d.ts +12 -0
- package/dist/utils/ci.js +16 -0
- package/dist/utils/command-references.d.ts +104 -0
- package/dist/utils/command-references.js +190 -0
- package/dist/utils/date.d.ts +8 -0
- package/dist/utils/date.js +13 -0
- package/dist/utils/executable-path.d.ts +5 -0
- package/dist/utils/executable-path.js +44 -0
- package/dist/utils/file-system.d.ts +58 -0
- package/dist/utils/file-system.js +432 -0
- package/dist/utils/index.d.ts +6 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/interactive.d.ts +85 -0
- package/dist/utils/interactive.js +174 -0
- package/dist/utils/item-discovery.d.ts +15 -0
- package/dist/utils/item-discovery.js +33 -0
- package/dist/utils/line-endings.d.ts +34 -0
- package/dist/utils/line-endings.js +46 -0
- package/dist/utils/match.d.ts +3 -0
- package/dist/utils/match.js +22 -0
- package/dist/utils/nested-change.d.ts +35 -0
- package/dist/utils/nested-change.js +185 -0
- package/dist/utils/shell-detection.d.ts +20 -0
- package/dist/utils/shell-detection.js +94 -0
- package/dist/utils/task-progress.d.ts +67 -0
- package/dist/utils/task-progress.js +184 -0
- package/package.json +74 -4
- package/schemas//351/273/230/350/256/244/schema.yaml +68 -0
- package/schemas//351/273/230/350/256/244/templates//344/273/273/345/212/241/346/270/205/345/215/225.md +25 -0
- package/schemas//351/273/230/350/256/244/templates//346/265/213/350/257/225/347/224/250/344/276/213.md +34 -0
- package/schemas//351/273/230/350/256/244/templates//350/256/276/350/256/241/346/226/207/346/241/243.md +172 -0
- package/schemas//351/273/230/350/256/244/templates//351/234/200/346/261/202/346/226/207/346/241/243.md +19 -0
- package/skill-files//344/273/273/345/212/241/references//346/212/244/346/240/217.md +43 -0
- package/skill-files//344/273/273/345/212/241/references//347/262/222/345/272/246.md +23 -0
- package/skill-files//344/273/273/345/212/241/references//347/272/246/346/235/237.md +8 -0
- package/skill-files//344/273/273/345/212/241/scripts/check-tasks.mjs +83 -0
- package/skill-files//345/206/231Java/references/Java/350/247/204/350/214/203.md +25 -0
- package/skill-files//345/206/231Java/references//345/215/261/351/231/251/345/206/231/346/263/225.md +27 -0
- package/skill-files//345/206/231Java/references//345/256/214/346/210/220/345/257/271/347/205/247.md +15 -0
- package/skill-files//345/206/231Java/references//346/212/244/346/240/217.md +35 -0
- package/skill-files//345/206/231Java/references//347/272/246/346/235/237.md +8 -0
- package/skill-files//345/206/231Java/references//350/270/251/345/235/221.md +17 -0
- package/skill-files//345/256/241Java/references//346/212/244/346/240/217.md +19 -0
- package/skill-files//345/256/241Java/references//347/244/272/344/276/213.md +23 -0
- package/skill-files//345/256/241Java/references//347/272/246/346/235/237.md +7 -0
- package/skill-files//345/256/241Java/references//350/247/204/345/210/231.md +23 -0
- package/skill-files//345/256/241Java/references//351/242/206/345/237/237/346/243/200/351/241/271.md +58 -0
- package/skill-files//345/256/241/346/226/207/346/241/243/references//346/212/244/346/240/217.md +18 -0
- package/skill-files//345/256/241/346/226/207/346/241/243/references//347/272/246/346/235/237.md +8 -0
- package/skill-files//345/256/241/346/226/207/346/241/243/references//347/273/264/345/272/246.md +17 -0
- package/skill-files//345/256/241/346/226/207/346/241/243/references//350/270/251/345/235/221.md +11 -0
- package/skill-files//346/226/260/345/273/272/references//344/272/244/346/216/245.md +11 -0
- package/skill-files//346/226/260/345/273/272/references//346/212/244/346/240/217.md +14 -0
- package/skill-files//346/226/260/345/273/272/references//347/272/246/346/235/237.md +7 -0
- package/skill-files//346/267/261/346/200/235/config/prompts.yaml +114 -0
- package/skill-files//346/267/261/346/200/235/references//344/270/211/346/226/271/346/240/270/345/257/271.md +72 -0
- package/skill-files//346/267/261/346/200/235/references//344/276/213/345/255/220.md +39 -0
- package/skill-files//346/267/261/346/200/235/references//346/200/216/344/271/210/346/203/263.md +61 -0
- package/skill-files//346/267/261/346/200/235/references//346/212/244/346/240/217.md +26 -0
- package/skill-files//346/267/261/346/200/235/references//347/202/271/351/200/211/346/217/220/351/227/256.md +66 -0
- package/skill-files//346/267/261/346/200/235/references//347/231/273/350/256/260.md +45 -0
- package/skill-files//346/267/261/346/200/235/references//347/272/246/346/235/237.md +9 -0
- package/skill-files//347/224/250/344/276/213/references//346/200/216/344/271/210/345/206/231.md +13 -0
- package/skill-files//347/224/250/344/276/213/references//346/212/244/346/240/217.md +42 -0
- package/skill-files//347/224/250/344/276/213/references//347/272/246/346/235/237.md +5 -0
- package/skill-files//347/224/250/344/276/213/scripts/check-cases.mjs +70 -0
- package/skill-files//350/256/276/350/256/241/references//345/207/206/345/244/207.md +25 -0
- package/skill-files//350/256/276/350/256/241/references//346/212/244/346/240/217.md +134 -0
- package/skill-files//350/256/276/350/256/241/references//346/226/207/351/243/216.md +17 -0
- package/skill-files//350/256/276/350/256/241/references//347/225/214/351/235/242.md +18 -0
- package/skill-files//350/256/276/350/256/241/references//347/261/273/345/236/213.md +19 -0
- package/skill-files//350/256/276/350/256/241/references//347/272/246/346/235/237.md +25 -0
- package/skill-files//350/256/276/350/256/241/scripts/_smoke.mjs +72 -0
- package/skill-files//350/256/276/350/256/241/scripts/check-design.mjs +331 -0
- package/skill-files//351/234/200/346/261/202/references//346/212/244/346/240/217.md +26 -0
- package/skill-files//351/234/200/346/261/202/references//346/226/207/351/243/216.md +23 -0
- package/skill-files//351/234/200/346/261/202/references//346/267/261/346/200/235/346/221/204/345/205/245.md +21 -0
- package/skill-files//351/234/200/346/261/202/references//347/272/246/346/235/237.md +8 -0
- package/skill-files//351/234/200/346/261/202/references//351/234/200/346/261/202/345/276/205/345/256/232.md +13 -0
- package/skill-files//351/234/200/346/261/202/scripts/check-requirements.mjs +60 -0
- package/skill-files//351/252/214/346/224/266/references//346/212/244/346/240/217.md +27 -0
- package/skill-files//351/252/214/346/224/266/references//346/240/270/345/257/271.md +17 -0
- package/skill-files//351/252/214/346/224/266/references//347/272/246/346/235/237.md +7 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GigaCode Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for GigaCode using its Markdown custom command format.
|
|
5
|
+
* Project commands live in `.gigacode/commands/` and accept an optional
|
|
6
|
+
* `description` field in YAML frontmatter.
|
|
7
|
+
*
|
|
8
|
+
* @see https://gitverse.ru/docs/ai/ai-assistant-gigacode/gigacode-cli/commands
|
|
9
|
+
*/
|
|
10
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* GigaCode adapter for command generation.
|
|
13
|
+
* File path: .gigacode/commands/freespec-<id>.md
|
|
14
|
+
* Format: Markdown with description frontmatter
|
|
15
|
+
*/
|
|
16
|
+
export declare const gigacodeAdapter: ToolCommandAdapter;
|
|
17
|
+
//# sourceMappingURL=gigacode.d.ts.map
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GigaCode Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for GigaCode using its Markdown custom command format.
|
|
5
|
+
* Project commands live in `.gigacode/commands/` and accept an optional
|
|
6
|
+
* `description` field in YAML frontmatter.
|
|
7
|
+
*
|
|
8
|
+
* @see https://gitverse.ru/docs/ai/ai-assistant-gigacode/gigacode-cli/commands
|
|
9
|
+
*/
|
|
10
|
+
import path from 'path';
|
|
11
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
12
|
+
/**
|
|
13
|
+
* GigaCode adapter for command generation.
|
|
14
|
+
* File path: .gigacode/commands/freespec-<id>.md
|
|
15
|
+
* Format: Markdown with description frontmatter
|
|
16
|
+
*/
|
|
17
|
+
export const gigacodeAdapter = {
|
|
18
|
+
toolId: 'gigacode',
|
|
19
|
+
getFilePath(commandId) {
|
|
20
|
+
return path.join('.gigacode', 'commands', `freespec-${commandId}.md`);
|
|
21
|
+
},
|
|
22
|
+
formatFile(content) {
|
|
23
|
+
return `---
|
|
24
|
+
description: ${escapeYamlValue(content.description)}
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
${content.body}
|
|
28
|
+
`;
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=gigacode.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHub Copilot Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for GitHub Copilot following its .prompt.md specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* GitHub Copilot adapter for command generation.
|
|
9
|
+
* File path: .github/prompts/freespec-<id>.prompt.md
|
|
10
|
+
* Frontmatter: description
|
|
11
|
+
*/
|
|
12
|
+
export declare const githubCopilotAdapter: ToolCommandAdapter;
|
|
13
|
+
//# sourceMappingURL=github-copilot.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GitHub Copilot Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for GitHub Copilot following its .prompt.md specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
8
|
+
/**
|
|
9
|
+
* GitHub Copilot adapter for command generation.
|
|
10
|
+
* File path: .github/prompts/freespec-<id>.prompt.md
|
|
11
|
+
* Frontmatter: description
|
|
12
|
+
*/
|
|
13
|
+
export const githubCopilotAdapter = {
|
|
14
|
+
toolId: 'github-copilot',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.github', 'prompts', `freespec-${commandId}.prompt.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `---
|
|
20
|
+
description: ${escapeYamlValue(content.description)}
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
${content.body}
|
|
24
|
+
`;
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=github-copilot.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* iFlow Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for iFlow following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* iFlow adapter for command generation.
|
|
9
|
+
* File path: .iflow/commands/freespec-<id>.md
|
|
10
|
+
* Frontmatter: name, id, category, description
|
|
11
|
+
*/
|
|
12
|
+
export declare const iflowAdapter: ToolCommandAdapter;
|
|
13
|
+
//# sourceMappingURL=iflow.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* iFlow Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for iFlow following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
8
|
+
/**
|
|
9
|
+
* iFlow adapter for command generation.
|
|
10
|
+
* File path: .iflow/commands/freespec-<id>.md
|
|
11
|
+
* Frontmatter: name, id, category, description
|
|
12
|
+
*/
|
|
13
|
+
export const iflowAdapter = {
|
|
14
|
+
toolId: 'iflow',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.iflow', 'commands', `freespec-${commandId}.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `---
|
|
20
|
+
name: ${escapeYamlValue(`/freespec-${content.id}`)}
|
|
21
|
+
id: ${escapeYamlValue(`freespec-${content.id}`)}
|
|
22
|
+
category: ${escapeYamlValue(content.category)}
|
|
23
|
+
description: ${escapeYamlValue(content.description)}
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
${content.body}
|
|
27
|
+
`;
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=iflow.js.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Command Adapters Index
|
|
3
|
+
*
|
|
4
|
+
* Re-exports all tool command adapters.
|
|
5
|
+
*/
|
|
6
|
+
export { amazonQAdapter } from './amazon-q.js';
|
|
7
|
+
export { antigravityAdapter } from './antigravity.js';
|
|
8
|
+
export { atomcodeAdapter } from './atomcode.js';
|
|
9
|
+
export { auggieAdapter } from './auggie.js';
|
|
10
|
+
export { bobAdapter } from './bob.js';
|
|
11
|
+
export { claudeAdapter } from './claude.js';
|
|
12
|
+
export { clineAdapter } from './cline.js';
|
|
13
|
+
export { commandCodeAdapter } from './command-code.js';
|
|
14
|
+
export { codebuddyAdapter } from './codebuddy.js';
|
|
15
|
+
export { codeStudioAdapter } from './codestudio.js';
|
|
16
|
+
export { continueAdapter } from './continue.js';
|
|
17
|
+
export { costrictAdapter } from './costrict.js';
|
|
18
|
+
export { crushAdapter } from './crush.js';
|
|
19
|
+
export { cursorAdapter } from './cursor.js';
|
|
20
|
+
export { devinAdapter } from './devin.js';
|
|
21
|
+
export { easycodeAdapter } from './easycode.js';
|
|
22
|
+
export { factoryAdapter } from './factory.js';
|
|
23
|
+
export { geminiAdapter } from './gemini.js';
|
|
24
|
+
export { githubCopilotAdapter } from './github-copilot.js';
|
|
25
|
+
export { gigacodeAdapter } from './gigacode.js';
|
|
26
|
+
export { iflowAdapter } from './iflow.js';
|
|
27
|
+
export { junieAdapter } from './junie.js';
|
|
28
|
+
export { kilocodeAdapter } from './kilocode.js';
|
|
29
|
+
export { kiroAdapter } from './kiro.js';
|
|
30
|
+
export { ohMyPiAdapter } from './oh-my-pi.js';
|
|
31
|
+
export { opencodeAdapter } from './opencode.js';
|
|
32
|
+
export { piAdapter } from './pi.js';
|
|
33
|
+
export { codeassistantAdapter } from './codeassistant.js';
|
|
34
|
+
export { qoderAdapter } from './qoder.js';
|
|
35
|
+
export { lingmaAdapter } from './lingma.js';
|
|
36
|
+
export { qwenAdapter } from './qwen.js';
|
|
37
|
+
export { roocodeAdapter } from './roocode.js';
|
|
38
|
+
export { traeAdapter } from './trae.js';
|
|
39
|
+
export { zcodeAdapter } from './zcode.js';
|
|
40
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Command Adapters Index
|
|
3
|
+
*
|
|
4
|
+
* Re-exports all tool command adapters.
|
|
5
|
+
*/
|
|
6
|
+
export { amazonQAdapter } from './amazon-q.js';
|
|
7
|
+
export { antigravityAdapter } from './antigravity.js';
|
|
8
|
+
export { atomcodeAdapter } from './atomcode.js';
|
|
9
|
+
export { auggieAdapter } from './auggie.js';
|
|
10
|
+
export { bobAdapter } from './bob.js';
|
|
11
|
+
export { claudeAdapter } from './claude.js';
|
|
12
|
+
export { clineAdapter } from './cline.js';
|
|
13
|
+
export { commandCodeAdapter } from './command-code.js';
|
|
14
|
+
export { codebuddyAdapter } from './codebuddy.js';
|
|
15
|
+
export { codeStudioAdapter } from './codestudio.js';
|
|
16
|
+
export { continueAdapter } from './continue.js';
|
|
17
|
+
export { costrictAdapter } from './costrict.js';
|
|
18
|
+
export { crushAdapter } from './crush.js';
|
|
19
|
+
export { cursorAdapter } from './cursor.js';
|
|
20
|
+
export { devinAdapter } from './devin.js';
|
|
21
|
+
export { easycodeAdapter } from './easycode.js';
|
|
22
|
+
export { factoryAdapter } from './factory.js';
|
|
23
|
+
export { geminiAdapter } from './gemini.js';
|
|
24
|
+
export { githubCopilotAdapter } from './github-copilot.js';
|
|
25
|
+
export { gigacodeAdapter } from './gigacode.js';
|
|
26
|
+
export { iflowAdapter } from './iflow.js';
|
|
27
|
+
export { junieAdapter } from './junie.js';
|
|
28
|
+
export { kilocodeAdapter } from './kilocode.js';
|
|
29
|
+
export { kiroAdapter } from './kiro.js';
|
|
30
|
+
export { ohMyPiAdapter } from './oh-my-pi.js';
|
|
31
|
+
export { opencodeAdapter } from './opencode.js';
|
|
32
|
+
export { piAdapter } from './pi.js';
|
|
33
|
+
export { codeassistantAdapter } from './codeassistant.js';
|
|
34
|
+
export { qoderAdapter } from './qoder.js';
|
|
35
|
+
export { lingmaAdapter } from './lingma.js';
|
|
36
|
+
export { qwenAdapter } from './qwen.js';
|
|
37
|
+
export { roocodeAdapter } from './roocode.js';
|
|
38
|
+
export { traeAdapter } from './trae.js';
|
|
39
|
+
export { zcodeAdapter } from './zcode.js';
|
|
40
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Junie Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Junie following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Junie adapter for command generation.
|
|
9
|
+
* File path: .junie/commands/freespec-<id>.md
|
|
10
|
+
* Frontmatter: description
|
|
11
|
+
*/
|
|
12
|
+
export declare const junieAdapter: ToolCommandAdapter;
|
|
13
|
+
//# sourceMappingURL=junie.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Junie Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Junie following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
8
|
+
/**
|
|
9
|
+
* Junie adapter for command generation.
|
|
10
|
+
* File path: .junie/commands/freespec-<id>.md
|
|
11
|
+
* Frontmatter: description
|
|
12
|
+
*/
|
|
13
|
+
export const junieAdapter = {
|
|
14
|
+
toolId: 'junie',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.junie', 'commands', `freespec-${commandId}.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `---
|
|
20
|
+
description: ${escapeYamlValue(content.description)}
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
${content.body}
|
|
24
|
+
`;
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=junie.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Kilo Code Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Kilo Code following its workflow specification.
|
|
5
|
+
* Kilo Code workflows don't use frontmatter.
|
|
6
|
+
*/
|
|
7
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Kilo Code adapter for command generation.
|
|
10
|
+
* File path: .kilo/command/freespec-<id>.md
|
|
11
|
+
* Format: Plain markdown without frontmatter
|
|
12
|
+
*/
|
|
13
|
+
export declare const kilocodeAdapter: ToolCommandAdapter;
|
|
14
|
+
//# sourceMappingURL=kilocode.d.ts.map
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Kilo Code Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Kilo Code following its workflow specification.
|
|
5
|
+
* Kilo Code workflows don't use frontmatter.
|
|
6
|
+
*/
|
|
7
|
+
import path from 'path';
|
|
8
|
+
/**
|
|
9
|
+
* Kilo Code adapter for command generation.
|
|
10
|
+
* File path: .kilo/command/freespec-<id>.md
|
|
11
|
+
* Format: Plain markdown without frontmatter
|
|
12
|
+
*/
|
|
13
|
+
export const kilocodeAdapter = {
|
|
14
|
+
toolId: 'kilocode',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.kilo', 'command', `freespec-${commandId}.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `${content.body}
|
|
20
|
+
`;
|
|
21
|
+
},
|
|
22
|
+
};
|
|
23
|
+
//# sourceMappingURL=kilocode.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Kiro Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Kiro following its .prompt.md specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Kiro adapter for command generation.
|
|
9
|
+
* File path: .kiro/prompts/freespec-<id>.prompt.md
|
|
10
|
+
* Frontmatter: description
|
|
11
|
+
*/
|
|
12
|
+
export declare const kiroAdapter: ToolCommandAdapter;
|
|
13
|
+
//# sourceMappingURL=kiro.d.ts.map
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Kiro Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Kiro following its .prompt.md specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
8
|
+
/**
|
|
9
|
+
* Kiro adapter for command generation.
|
|
10
|
+
* File path: .kiro/prompts/freespec-<id>.prompt.md
|
|
11
|
+
* Frontmatter: description
|
|
12
|
+
*/
|
|
13
|
+
export const kiroAdapter = {
|
|
14
|
+
toolId: 'kiro',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.kiro', 'prompts', `freespec-${commandId}.prompt.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `---
|
|
20
|
+
description: ${escapeYamlValue(content.description)}
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
${content.body}
|
|
24
|
+
`;
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=kiro.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lingma Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Lingma following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Lingma adapter for command generation.
|
|
9
|
+
* File path: .lingma/commands/freespec/<id>.md
|
|
10
|
+
* Frontmatter: name, description, category, tags
|
|
11
|
+
*/
|
|
12
|
+
export declare const lingmaAdapter: ToolCommandAdapter;
|
|
13
|
+
//# sourceMappingURL=lingma.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Lingma Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Lingma following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue, formatTagsArray } from '../yaml.js';
|
|
8
|
+
/**
|
|
9
|
+
* Lingma adapter for command generation.
|
|
10
|
+
* File path: .lingma/commands/freespec/<id>.md
|
|
11
|
+
* Frontmatter: name, description, category, tags
|
|
12
|
+
*/
|
|
13
|
+
export const lingmaAdapter = {
|
|
14
|
+
toolId: 'lingma',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.lingma', 'commands', 'freespec', `${commandId}.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `---
|
|
20
|
+
name: ${escapeYamlValue(content.name)}
|
|
21
|
+
description: ${escapeYamlValue(content.description)}
|
|
22
|
+
category: ${escapeYamlValue(content.category)}
|
|
23
|
+
tags: ${formatTagsArray(content.tags)}
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
${content.body}
|
|
27
|
+
`;
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=lingma.js.map
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Oh My Pi (OMP) Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Oh My Pi following its slash command specification.
|
|
5
|
+
* OMP loads slash commands from .omp/commands/*.md with YAML frontmatter.
|
|
6
|
+
* The filename (minus .md) becomes the slash command name.
|
|
7
|
+
*/
|
|
8
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
9
|
+
/**
|
|
10
|
+
* Oh My Pi adapter for command generation.
|
|
11
|
+
* File path: .omp/commands/freespec-<id>.md
|
|
12
|
+
* Frontmatter: description
|
|
13
|
+
*
|
|
14
|
+
* OMP uses the filename (minus .md) as the slash command name, so
|
|
15
|
+
* freespec-propose.md → /freespec-propose. generateCommand rewrites the body's
|
|
16
|
+
* command references to that form before this adapter formats it, and
|
|
17
|
+
* $@ is injected after **Input**: headings so user-supplied arguments
|
|
18
|
+
* (e.g. /freespec-propose my-feature) are visible to the agent.
|
|
19
|
+
*/
|
|
20
|
+
export declare const ohMyPiAdapter: ToolCommandAdapter;
|
|
21
|
+
//# sourceMappingURL=oh-my-pi.d.ts.map
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Oh My Pi (OMP) Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Oh My Pi following its slash command specification.
|
|
5
|
+
* OMP loads slash commands from .omp/commands/*.md with YAML frontmatter.
|
|
6
|
+
* The filename (minus .md) becomes the slash command name.
|
|
7
|
+
*/
|
|
8
|
+
import path from 'path';
|
|
9
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
10
|
+
const OMP_INPUT_HEADING = /^\*\*Input\*\*:[^\n]*$/m;
|
|
11
|
+
function injectOmpArgs(body) {
|
|
12
|
+
if (body.includes('$@') || body.includes('$ARGUMENTS')) {
|
|
13
|
+
return body;
|
|
14
|
+
}
|
|
15
|
+
return body.replace(OMP_INPUT_HEADING, (heading) => `${heading}\n**Provided arguments**: $@`);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Oh My Pi adapter for command generation.
|
|
19
|
+
* File path: .omp/commands/freespec-<id>.md
|
|
20
|
+
* Frontmatter: description
|
|
21
|
+
*
|
|
22
|
+
* OMP uses the filename (minus .md) as the slash command name, so
|
|
23
|
+
* freespec-propose.md → /freespec-propose. generateCommand rewrites the body's
|
|
24
|
+
* command references to that form before this adapter formats it, and
|
|
25
|
+
* $@ is injected after **Input**: headings so user-supplied arguments
|
|
26
|
+
* (e.g. /freespec-propose my-feature) are visible to the agent.
|
|
27
|
+
*/
|
|
28
|
+
export const ohMyPiAdapter = {
|
|
29
|
+
toolId: 'oh-my-pi',
|
|
30
|
+
getFilePath(commandId) {
|
|
31
|
+
return path.join('.omp', 'commands', `freespec-${commandId}.md`);
|
|
32
|
+
},
|
|
33
|
+
formatFile(content) {
|
|
34
|
+
return `---
|
|
35
|
+
description: ${escapeYamlValue(content.description)}
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
${injectOmpArgs(content.body)}
|
|
39
|
+
`;
|
|
40
|
+
},
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=oh-my-pi.js.map
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenCode Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for OpenCode following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* OpenCode adapter for command generation.
|
|
9
|
+
* File path: .opencode/commands/freespec-<id>.md
|
|
10
|
+
* Frontmatter: description. $ARGUMENTS is injected after the complete input
|
|
11
|
+
* contract because OpenCode only passes arguments through explicit placeholders.
|
|
12
|
+
*/
|
|
13
|
+
export declare const opencodeAdapter: ToolCommandAdapter;
|
|
14
|
+
//# sourceMappingURL=opencode.d.ts.map
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* OpenCode Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for OpenCode following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
8
|
+
const OPENCODE_INPUT_BLOCK = /^\*\*Input\*\*:[^\r\n]*(?:\r?\n(?!\r?\n)[^\r\n]*)*/m;
|
|
9
|
+
const OPENCODE_NO_INPUT = /^\*\*Input\*\*:\s*None required\b/im;
|
|
10
|
+
const OPENCODE_ARGUMENT_PLACEHOLDER = /\$(?:ARGUMENTS\b|[1-9]\d*\b)/;
|
|
11
|
+
function injectOpenCodeArgs(body) {
|
|
12
|
+
if (OPENCODE_ARGUMENT_PLACEHOLDER.test(body) || OPENCODE_NO_INPUT.test(body)) {
|
|
13
|
+
return body;
|
|
14
|
+
}
|
|
15
|
+
const eol = body.includes('\r\n') ? '\r\n' : '\n';
|
|
16
|
+
return body.replace(OPENCODE_INPUT_BLOCK, (input) => `${input}${eol}**Provided arguments**: $ARGUMENTS`);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* OpenCode adapter for command generation.
|
|
20
|
+
* File path: .opencode/commands/freespec-<id>.md
|
|
21
|
+
* Frontmatter: description. $ARGUMENTS is injected after the complete input
|
|
22
|
+
* contract because OpenCode only passes arguments through explicit placeholders.
|
|
23
|
+
*/
|
|
24
|
+
export const opencodeAdapter = {
|
|
25
|
+
toolId: 'opencode',
|
|
26
|
+
getFilePath(commandId) {
|
|
27
|
+
return path.join('.opencode', 'commands', `freespec-${commandId}.md`);
|
|
28
|
+
},
|
|
29
|
+
formatFile(content) {
|
|
30
|
+
return `---
|
|
31
|
+
description: ${escapeYamlValue(content.description)}
|
|
32
|
+
---
|
|
33
|
+
|
|
34
|
+
${injectOpenCodeArgs(content.body)}
|
|
35
|
+
`;
|
|
36
|
+
},
|
|
37
|
+
};
|
|
38
|
+
//# sourceMappingURL=opencode.js.map
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pi Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Pi (pi.dev) following its prompt template specification.
|
|
5
|
+
* Pi prompt templates live in .pi/prompts/*.md with description frontmatter.
|
|
6
|
+
*/
|
|
7
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
8
|
+
/**
|
|
9
|
+
* Pi adapter for prompt template generation.
|
|
10
|
+
* File path: .pi/prompts/freespec-<id>.md
|
|
11
|
+
* Frontmatter: description
|
|
12
|
+
*
|
|
13
|
+
* Pi uses the filename (minus .md) as the slash command name, so
|
|
14
|
+
* freespec-propose.md → /freespec-propose. generateCommand rewrites the body's
|
|
15
|
+
* command references to that form before this adapter formats it.
|
|
16
|
+
*/
|
|
17
|
+
export declare const piAdapter: ToolCommandAdapter;
|
|
18
|
+
//# sourceMappingURL=pi.d.ts.map
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pi Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Pi (pi.dev) following its prompt template specification.
|
|
5
|
+
* Pi prompt templates live in .pi/prompts/*.md with description frontmatter.
|
|
6
|
+
*/
|
|
7
|
+
import path from 'path';
|
|
8
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
9
|
+
const PI_INPUT_HEADING = /^\*\*Input\*\*:[^\n]*$/m;
|
|
10
|
+
function injectPiArgs(body) {
|
|
11
|
+
if (body.includes('$@') || body.includes('$ARGUMENTS')) {
|
|
12
|
+
return body;
|
|
13
|
+
}
|
|
14
|
+
return body.replace(PI_INPUT_HEADING, (heading) => `${heading}\n**Provided arguments**: $@`);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Pi adapter for prompt template generation.
|
|
18
|
+
* File path: .pi/prompts/freespec-<id>.md
|
|
19
|
+
* Frontmatter: description
|
|
20
|
+
*
|
|
21
|
+
* Pi uses the filename (minus .md) as the slash command name, so
|
|
22
|
+
* freespec-propose.md → /freespec-propose. generateCommand rewrites the body's
|
|
23
|
+
* command references to that form before this adapter formats it.
|
|
24
|
+
*/
|
|
25
|
+
export const piAdapter = {
|
|
26
|
+
toolId: 'pi',
|
|
27
|
+
getFilePath(commandId) {
|
|
28
|
+
return path.join('.pi', 'prompts', `freespec-${commandId}.md`);
|
|
29
|
+
},
|
|
30
|
+
formatFile(content) {
|
|
31
|
+
return `---
|
|
32
|
+
description: ${escapeYamlValue(content.description)}
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
${injectPiArgs(content.body)}
|
|
36
|
+
`;
|
|
37
|
+
},
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=pi.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qoder Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Qoder following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Qoder adapter for command generation.
|
|
9
|
+
* File path: .qoder/commands/freespec/<id>.md
|
|
10
|
+
* Frontmatter: name, description, category, tags
|
|
11
|
+
*/
|
|
12
|
+
export declare const qoderAdapter: ToolCommandAdapter;
|
|
13
|
+
//# sourceMappingURL=qoder.d.ts.map
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qoder Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Qoder following its frontmatter specification.
|
|
5
|
+
*/
|
|
6
|
+
import path from 'path';
|
|
7
|
+
import { escapeYamlValue, formatTagsArray } from '../yaml.js';
|
|
8
|
+
/**
|
|
9
|
+
* Qoder adapter for command generation.
|
|
10
|
+
* File path: .qoder/commands/freespec/<id>.md
|
|
11
|
+
* Frontmatter: name, description, category, tags
|
|
12
|
+
*/
|
|
13
|
+
export const qoderAdapter = {
|
|
14
|
+
toolId: 'qoder',
|
|
15
|
+
getFilePath(commandId) {
|
|
16
|
+
return path.join('.qoder', 'commands', 'freespec', `${commandId}.md`);
|
|
17
|
+
},
|
|
18
|
+
formatFile(content) {
|
|
19
|
+
return `---
|
|
20
|
+
name: ${escapeYamlValue(content.name)}
|
|
21
|
+
description: ${escapeYamlValue(content.description)}
|
|
22
|
+
category: ${escapeYamlValue(content.category)}
|
|
23
|
+
tags: ${formatTagsArray(content.tags)}
|
|
24
|
+
---
|
|
25
|
+
|
|
26
|
+
${content.body}
|
|
27
|
+
`;
|
|
28
|
+
},
|
|
29
|
+
};
|
|
30
|
+
//# sourceMappingURL=qoder.js.map
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qwen Code Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Qwen Code following its Markdown custom command
|
|
5
|
+
* specification. Qwen Code has deprecated TOML commands in favor of
|
|
6
|
+
* Markdown files with YAML frontmatter.
|
|
7
|
+
*
|
|
8
|
+
* @see https://qwenlm.github.io/qwen-code-docs/en/users/features/commands/#markdown-file-format-specification-recommended
|
|
9
|
+
*/
|
|
10
|
+
import type { ToolCommandAdapter } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Qwen adapter for command generation.
|
|
13
|
+
* File path: .qwen/commands/freespec-<id>.md
|
|
14
|
+
* Format: Markdown with description frontmatter
|
|
15
|
+
*/
|
|
16
|
+
export declare const qwenAdapter: ToolCommandAdapter;
|
|
17
|
+
//# sourceMappingURL=qwen.d.ts.map
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qwen Code Command Adapter
|
|
3
|
+
*
|
|
4
|
+
* Formats commands for Qwen Code following its Markdown custom command
|
|
5
|
+
* specification. Qwen Code has deprecated TOML commands in favor of
|
|
6
|
+
* Markdown files with YAML frontmatter.
|
|
7
|
+
*
|
|
8
|
+
* @see https://qwenlm.github.io/qwen-code-docs/en/users/features/commands/#markdown-file-format-specification-recommended
|
|
9
|
+
*/
|
|
10
|
+
import path from 'path';
|
|
11
|
+
import { escapeYamlValue } from '../yaml.js';
|
|
12
|
+
/**
|
|
13
|
+
* Qwen adapter for command generation.
|
|
14
|
+
* File path: .qwen/commands/freespec-<id>.md
|
|
15
|
+
* Format: Markdown with description frontmatter
|
|
16
|
+
*/
|
|
17
|
+
export const qwenAdapter = {
|
|
18
|
+
toolId: 'qwen',
|
|
19
|
+
getFilePath(commandId) {
|
|
20
|
+
return path.join('.qwen', 'commands', `freespec-${commandId}.md`);
|
|
21
|
+
},
|
|
22
|
+
formatFile(content) {
|
|
23
|
+
return `---
|
|
24
|
+
description: ${escapeYamlValue(content.description)}
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
${content.body}
|
|
28
|
+
`;
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=qwen.js.map
|