@specforge/mcp 3.2.3 → 3.3.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/README.md +1 -1
- package/dist/autopilot/api/autopilot-api-client.js +1 -1
- package/dist/autopilot/api/autopilot-api-client.js.map +1 -1
- package/dist/cli/commands/complete.d.ts +14 -0
- package/dist/cli/commands/complete.d.ts.map +1 -0
- package/dist/cli/commands/complete.js +96 -0
- package/dist/cli/commands/complete.js.map +1 -0
- package/dist/cli/commands/docs/content/examples.d.ts.map +1 -1
- package/dist/cli/commands/docs/content/examples.js +35 -40
- package/dist/cli/commands/docs/content/examples.js.map +1 -1
- package/dist/cli/commands/docs/content/workflow.d.ts.map +1 -1
- package/dist/cli/commands/docs/content/workflow.js +9 -13
- package/dist/cli/commands/docs/content/workflow.js.map +1 -1
- package/dist/cli/commands/index.d.ts +2 -0
- package/dist/cli/commands/index.d.ts.map +1 -1
- package/dist/cli/commands/index.js +2 -0
- package/dist/cli/commands/index.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +100 -14
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/init.types.d.ts +2 -0
- package/dist/cli/commands/init.types.d.ts.map +1 -1
- package/dist/cli/commands/init.types.js.map +1 -1
- package/dist/cli/commands/review-planning.d.ts +1 -0
- package/dist/cli/commands/review-planning.d.ts.map +1 -1
- package/dist/cli/commands/review-planning.js +2 -0
- package/dist/cli/commands/review-planning.js.map +1 -1
- package/dist/cli/commands/scaffold/agent-types.d.ts +1 -7
- package/dist/cli/commands/scaffold/agent-types.d.ts.map +1 -1
- package/dist/cli/commands/scaffold/agent-types.js +0 -12
- package/dist/cli/commands/scaffold/agent-types.js.map +1 -1
- package/dist/cli/commands/scaffold/types.d.ts +1 -7
- package/dist/cli/commands/scaffold/types.d.ts.map +1 -1
- package/dist/cli/commands/scaffold/types.js +2 -7
- package/dist/cli/commands/scaffold/types.js.map +1 -1
- package/dist/cli/commands/set-status.d.ts +14 -0
- package/dist/cli/commands/set-status.d.ts.map +1 -0
- package/dist/cli/commands/set-status.js +109 -0
- package/dist/cli/commands/set-status.js.map +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/templates/agents/content/core/sfag-orchestrator.d.ts +3 -2
- package/dist/cli/templates/agents/content/core/sfag-orchestrator.d.ts.map +1 -1
- package/dist/cli/templates/agents/content/core/sfag-orchestrator.js +118 -61
- package/dist/cli/templates/agents/content/core/sfag-orchestrator.js.map +1 -1
- package/dist/cli/templates/agents/content/core/sfag-spec-creator.d.ts +3 -2
- package/dist/cli/templates/agents/content/core/sfag-spec-creator.d.ts.map +1 -1
- package/dist/cli/templates/agents/content/core/sfag-spec-creator.js +302 -81
- package/dist/cli/templates/agents/content/core/sfag-spec-creator.js.map +1 -1
- package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.d.ts +3 -2
- package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.d.ts.map +1 -1
- package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.js +209 -83
- package/dist/cli/templates/agents/content/core/sfag-ticket-implementer.js.map +1 -1
- package/dist/cli/templates/agents/content/research/sfag-package-researcher.d.ts +2 -2
- package/dist/cli/templates/agents/content/research/sfag-package-researcher.d.ts.map +1 -1
- package/dist/cli/templates/agents/content/research/sfag-package-researcher.js +84 -106
- package/dist/cli/templates/agents/content/research/sfag-package-researcher.js.map +1 -1
- package/dist/cli/templates/agents/index.d.ts.map +1 -1
- package/dist/cli/templates/agents/index.js +0 -23
- package/dist/cli/templates/agents/index.js.map +1 -1
- package/dist/cli/templates/commands.d.ts +0 -3
- package/dist/cli/templates/commands.d.ts.map +1 -1
- package/dist/cli/templates/commands.js +0 -89
- package/dist/cli/templates/commands.js.map +1 -1
- package/dist/cli/templates/content/sf-blockers.d.ts +1 -1
- package/dist/cli/templates/content/sf-blockers.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-blockers.js +5 -2
- package/dist/cli/templates/content/sf-blockers.js.map +1 -1
- package/dist/cli/templates/content/sf-commit.d.ts +1 -1
- package/dist/cli/templates/content/sf-commit.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-commit.js +11 -8
- package/dist/cli/templates/content/sf-commit.js.map +1 -1
- package/dist/cli/templates/content/sf-context.d.ts +1 -1
- package/dist/cli/templates/content/sf-context.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-context.js +16 -15
- package/dist/cli/templates/content/sf-context.js.map +1 -1
- package/dist/cli/templates/content/sf-help.d.ts +1 -1
- package/dist/cli/templates/content/sf-help.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-help.js +4 -21
- package/dist/cli/templates/content/sf-help.js.map +1 -1
- package/dist/cli/templates/content/sf-init.d.ts +1 -1
- package/dist/cli/templates/content/sf-init.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-init.js +10 -7
- package/dist/cli/templates/content/sf-init.js.map +1 -1
- package/dist/cli/templates/content/sf-reset.d.ts +1 -1
- package/dist/cli/templates/content/sf-reset.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-reset.js +10 -19
- package/dist/cli/templates/content/sf-reset.js.map +1 -1
- package/dist/cli/templates/content/sf-search.d.ts +1 -1
- package/dist/cli/templates/content/sf-search.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-search.js +5 -4
- package/dist/cli/templates/content/sf-search.js.map +1 -1
- package/dist/cli/templates/content/sf-status.d.ts +1 -1
- package/dist/cli/templates/content/sf-status.d.ts.map +1 -1
- package/dist/cli/templates/content/sf-status.js +5 -8
- package/dist/cli/templates/content/sf-status.js.map +1 -1
- package/dist/cli/ui/banner.d.ts +17 -0
- package/dist/cli/ui/banner.d.ts.map +1 -0
- package/dist/cli/ui/banner.js +105 -0
- package/dist/cli/ui/banner.js.map +1 -0
- package/dist/tools/core/admin.js +5 -5
- package/dist/tools/core/admin.js.map +1 -1
- package/dist/tools/core/help.js +1 -1
- package/dist/tools/core/help.js.map +1 -1
- package/dist/tools/index.js +4 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/types/index.d.ts +2 -2
- package/dist/types/index.d.ts.map +1 -1
- package/dist/validation/index.js +1 -1
- package/dist/validation/index.js.map +1 -1
- package/package.json +1 -1
- package/src/cli/templates/agents/content/core/sfag-orchestrator.ts +118 -61
- package/src/cli/templates/agents/content/core/sfag-spec-creator.ts +302 -81
- package/src/cli/templates/agents/content/core/sfag-ticket-implementer.ts +209 -83
- package/src/cli/templates/agents/content/research/sfag-package-researcher.ts +84 -106
- package/src/cli/templates/agents/index.ts +0 -27
- package/src/cli/templates/commands.ts +0 -89
- package/src/cli/templates/content/sf-blockers.ts +5 -2
- package/src/cli/templates/content/sf-commit.ts +11 -8
- package/src/cli/templates/content/sf-context.ts +16 -15
- package/src/cli/templates/content/sf-help.ts +4 -21
- package/src/cli/templates/content/sf-init.ts +10 -7
- package/src/cli/templates/content/sf-reset.ts +10 -19
- package/src/cli/templates/content/sf-search.ts +5 -4
- package/src/cli/templates/content/sf-status.ts +5 -8
- package/src/cli/templates/skills/specforge-orchestrator.md +1 -1
- package/src/cli/templates/skills/specforge-worker.md +51 -19
- package/src/cli/templates/agents/content/core/sfag-implementer.ts +0 -113
- package/src/cli/templates/agents/content/task-type/sfag-api-implementer.ts +0 -132
- package/src/cli/templates/agents/content/task-type/sfag-docs-writer.ts +0 -183
- package/src/cli/templates/agents/content/task-type/sfag-frontend-builder.ts +0 -141
- package/src/cli/templates/agents/content/task-type/sfag-infra-architect.ts +0 -149
- package/src/cli/templates/agents/content/task-type/sfag-schema-designer.ts +0 -132
- package/src/cli/templates/agents/content/task-type/sfag-test-writer.ts +0 -171
- package/src/cli/templates/content/sf-autonomous.ts +0 -78
- package/src/cli/templates/content/sf-create-epics.ts +0 -129
- package/src/cli/templates/content/sf-create-spec.ts +0 -136
- package/src/cli/templates/content/sf-create-tickets.ts +0 -148
- package/src/cli/templates/content/sf-epic.ts +0 -69
- package/src/cli/templates/content/sf-import.ts +0 -88
- package/src/cli/templates/content/sf-next.ts +0 -67
- package/src/cli/templates/content/sf-review.ts +0 -67
- package/src/cli/templates/content/sf-ticket.ts +0 -76
- package/src/cli/templates/content/sf-validate.ts +0 -78
package/README.md
CHANGED
|
@@ -229,7 +229,7 @@ The SpecForge MCP server provides the following tool categories:
|
|
|
229
229
|
- `validate_ticket_completion` - Validate completion criteria
|
|
230
230
|
|
|
231
231
|
### Discovery Tools
|
|
232
|
-
- `
|
|
232
|
+
- `discover_work_session` - Report bugs, tech debt, or new requirements
|
|
233
233
|
- `get_pending_discoveries` - Get unresolved discoveries
|
|
234
234
|
- `resolve_discovery` - Mark a discovery as resolved
|
|
235
235
|
|
|
@@ -324,7 +324,7 @@ export class AutopilotApiClient {
|
|
|
324
324
|
*/
|
|
325
325
|
async createDiscovery(discovery) {
|
|
326
326
|
try {
|
|
327
|
-
const result = await this.client.call('
|
|
327
|
+
const result = await this.client.call('discover_work_session', {
|
|
328
328
|
ticketId: discovery.ticketId,
|
|
329
329
|
type: discovery.type,
|
|
330
330
|
description: discovery.description,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"autopilot-api-client.js","sourceRoot":"","sources":["../../../src/autopilot/api/autopilot-api-client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"autopilot-api-client.js","sourceRoot":"","sources":["../../../src/autopilot/api/autopilot-api-client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Complete Specification Command
|
|
3
|
+
*
|
|
4
|
+
* CLI command to complete a specification that has passed implementation review.
|
|
5
|
+
* Calls the complete_specification API operation.
|
|
6
|
+
*/
|
|
7
|
+
import { Command } from 'commander';
|
|
8
|
+
interface CompleteOptions {
|
|
9
|
+
json?: boolean;
|
|
10
|
+
}
|
|
11
|
+
export declare function completeCommand(specId: string | undefined, options: CompleteOptions): Promise<void>;
|
|
12
|
+
export declare function registerCompleteCommand(program: Command): void;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=complete.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"complete.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/complete.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAWpC,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAeD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,IAAI,CAAC,CAoEf;AAMD,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAmB9D"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Complete Specification Command
|
|
3
|
+
*
|
|
4
|
+
* CLI command to complete a specification that has passed implementation review.
|
|
5
|
+
* Calls the complete_specification API operation.
|
|
6
|
+
*/
|
|
7
|
+
import chalk from 'chalk';
|
|
8
|
+
import ora from 'ora';
|
|
9
|
+
import { resolveConfig } from '../config/index.js';
|
|
10
|
+
import { ApiClient } from '../../client/api-client.js';
|
|
11
|
+
import { withErrorHandler, CliError } from '../middleware/error-handler.js';
|
|
12
|
+
// =============================================================================
|
|
13
|
+
// Command handler
|
|
14
|
+
// =============================================================================
|
|
15
|
+
export async function completeCommand(specId, options) {
|
|
16
|
+
const config = resolveConfig();
|
|
17
|
+
if (!config.apiKey) {
|
|
18
|
+
throw new CliError('Not authenticated', 1, 'Run `specforge login` to authenticate first');
|
|
19
|
+
}
|
|
20
|
+
const specificationId = specId || config.specificationId;
|
|
21
|
+
if (!specificationId) {
|
|
22
|
+
console.error(chalk.red('\nError: No specification specified and no active specification.'));
|
|
23
|
+
console.error('Usage: specforge complete [specId]');
|
|
24
|
+
console.error(chalk.dim("Run 'specforge init' or 'specforge switch' to set an active specification."));
|
|
25
|
+
process.exit(1);
|
|
26
|
+
}
|
|
27
|
+
const spinner = options.json ? null : ora('Completing specification...').start();
|
|
28
|
+
try {
|
|
29
|
+
const client = new ApiClient({
|
|
30
|
+
apiKey: config.apiKey,
|
|
31
|
+
apiUrl: config.apiUrl,
|
|
32
|
+
debug: config.debug,
|
|
33
|
+
});
|
|
34
|
+
const response = await client.call('complete_specification', {
|
|
35
|
+
specificationId,
|
|
36
|
+
});
|
|
37
|
+
spinner?.stop();
|
|
38
|
+
if (options.json) {
|
|
39
|
+
console.log(JSON.stringify(response, null, 2));
|
|
40
|
+
}
|
|
41
|
+
else {
|
|
42
|
+
console.log('');
|
|
43
|
+
if (response.completed) {
|
|
44
|
+
console.log(chalk.green('\u2713') + chalk.bold(' Specification completed'));
|
|
45
|
+
console.log(chalk.gray('\u2500'.repeat(40)));
|
|
46
|
+
console.log(chalk.dim(` ${response.previousStatus} \u2192 ${response.newStatus}`));
|
|
47
|
+
console.log(chalk.dim(` ${response.message}`));
|
|
48
|
+
}
|
|
49
|
+
else {
|
|
50
|
+
console.log(chalk.red('\u2717') + chalk.bold(' Specification not completed'));
|
|
51
|
+
console.log(chalk.gray('\u2500'.repeat(40)));
|
|
52
|
+
console.log(chalk.dim(` ${response.message}`));
|
|
53
|
+
if (response.pendingBlockers) {
|
|
54
|
+
console.log(chalk.yellow(` ${response.pendingBlockers} blocker-severity discovery(ies) pending`));
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
console.log('');
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
catch (error) {
|
|
61
|
+
spinner?.fail('Complete specification failed');
|
|
62
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
63
|
+
console.error(chalk.red(`\nError: ${message}`));
|
|
64
|
+
if (!options.json) {
|
|
65
|
+
console.error(chalk.dim('\nPossible causes:'));
|
|
66
|
+
console.error(chalk.dim(' - Specification is not in "reviewed" state'));
|
|
67
|
+
console.error(chalk.dim(' - Invalid specification ID'));
|
|
68
|
+
console.error(chalk.dim(' - Authentication expired (try: specforge login)'));
|
|
69
|
+
}
|
|
70
|
+
process.exit(1);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
// =============================================================================
|
|
74
|
+
// Command registration
|
|
75
|
+
// =============================================================================
|
|
76
|
+
export function registerCompleteCommand(program) {
|
|
77
|
+
program
|
|
78
|
+
.command('complete [specId]')
|
|
79
|
+
.description('Complete a specification that has passed implementation review')
|
|
80
|
+
.addHelpText('after', `
|
|
81
|
+
Arguments:
|
|
82
|
+
specId Specification ID (defaults to active specification)
|
|
83
|
+
|
|
84
|
+
Examples:
|
|
85
|
+
$ specforge complete # Complete active specification
|
|
86
|
+
$ specforge complete spec_abc123 # Complete specific specification
|
|
87
|
+
$ specforge complete --json # JSON output
|
|
88
|
+
|
|
89
|
+
Prerequisites:
|
|
90
|
+
The specification must be in "reviewed" state (passed implementation review).
|
|
91
|
+
Any blocker-severity discoveries must be resolved first.
|
|
92
|
+
`)
|
|
93
|
+
.option('--json', 'Output as JSON')
|
|
94
|
+
.action(withErrorHandler(completeCommand));
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=complete.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"complete.js","sourceRoot":"","sources":["../../../src/cli/commands/complete.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,GAAG,MAAM,KAAK,CAAC;AACtB,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,4BAA4B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAmB5E,gFAAgF;AAChF,kBAAkB;AAClB,gFAAgF;AAEhF,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,MAA0B,EAC1B,OAAwB;IAExB,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,IAAI,QAAQ,CAChB,mBAAmB,EACnB,CAAC,EACD,6CAA6C,CAC9C,CAAC;IACJ,CAAC;IAED,MAAM,eAAe,GAAG,MAAM,IAAI,MAAM,CAAC,eAAe,CAAC;IAEzD,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC,CAAC;QAC7F,OAAO,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC;QACpD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAC,CAAC;QACvG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,6BAA6B,CAAC,CAAC,KAAK,EAAE,CAAC;IAEjF,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;YAC3B,MAAM,EAAE,MAAM,CAAC,MAAO;YACtB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC,CAAC;QAEH,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,IAAI,CAAgC,wBAAwB,EAAE;YAC1F,eAAe;SAChB,CAAC,CAAC;QAEH,OAAO,EAAE,IAAI,EAAE,CAAC;QAEhB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,IAAI,QAAQ,CAAC,SAAS,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;gBAC5E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,cAAc,WAAW,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;gBACpF,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YAClD,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;gBAC9E,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;gBAChD,IAAI,QAAQ,CAAC,eAAe,EAAE,CAAC;oBAC7B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,QAAQ,CAAC,eAAe,0CAA0C,CAAC,CAAC,CAAC;gBACrG,CAAC;YACH,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,EAAE,IAAI,CAAC,+BAA+B,CAAC,CAAC;QAC/C,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QACzE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC,CAAC;QAEhD,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,CAAC;YAC/C,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC,CAAC;YACzE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC,CAAC;YACzD,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAChF,CAAC;QAED,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,gFAAgF;AAChF,uBAAuB;AACvB,gFAAgF;AAEhF,MAAM,UAAU,uBAAuB,CAAC,OAAgB;IACtD,OAAO;SACJ,OAAO,CAAC,mBAAmB,CAAC;SAC5B,WAAW,CAAC,gEAAgE,CAAC;SAC7E,WAAW,CAAC,OAAO,EAAE;;;;;;;;;;;;KAYrB,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;SAClC,MAAM,CAAC,gBAAgB,CAAC,eAAe,CAAC,CAAC,CAAC;AAC/C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"examples.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/examples.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"examples.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/examples.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,gBAAgB,QAuE5B,CAAC"}
|
|
@@ -8,36 +8,50 @@ export const EXAMPLES_CONTENT = `
|
|
|
8
8
|
${chalk.bold('SpecForge Usage Examples')}
|
|
9
9
|
${'═'.repeat(50)}
|
|
10
10
|
|
|
11
|
-
${chalk.bold('Example 1:
|
|
11
|
+
${chalk.bold('Example 1: Check Project Status')}
|
|
12
12
|
${'─'.repeat(50)}
|
|
13
|
-
#
|
|
14
|
-
/sf-
|
|
13
|
+
# View current context
|
|
14
|
+
/sf-context
|
|
15
15
|
|
|
16
|
-
#
|
|
17
|
-
|
|
18
|
-
# - Epics for each phase
|
|
19
|
-
# - Tickets with dependencies
|
|
16
|
+
# Check specification progress
|
|
17
|
+
/sf-status
|
|
20
18
|
|
|
21
|
-
${chalk.bold('Example 2:
|
|
19
|
+
${chalk.bold('Example 2: Search and Filter')}
|
|
22
20
|
${'─'.repeat(50)}
|
|
23
|
-
#
|
|
24
|
-
/sf-
|
|
21
|
+
# Find pending tickets
|
|
22
|
+
/sf-search status:pending
|
|
25
23
|
|
|
26
|
-
#
|
|
27
|
-
/sf-
|
|
24
|
+
# Find high priority tickets
|
|
25
|
+
/sf-search priority:high
|
|
26
|
+
|
|
27
|
+
# Search by tags
|
|
28
|
+
/sf-search tags:test
|
|
28
29
|
|
|
29
|
-
|
|
30
|
-
|
|
30
|
+
${chalk.bold('Example 3: Identify Issues')}
|
|
31
|
+
${'─'.repeat(50)}
|
|
32
|
+
# View blocked tickets and reasons
|
|
33
|
+
/sf-analyze-blockers
|
|
34
|
+
|
|
35
|
+
# Find tickets with dependency issues
|
|
36
|
+
/sf-search blockReason:*
|
|
37
|
+
|
|
38
|
+
${chalk.bold('Example 4: Reset and Reconcile')}
|
|
39
|
+
${'─'.repeat(50)}
|
|
40
|
+
# Reset ticket statuses based on dependencies
|
|
41
|
+
/sf-reset
|
|
31
42
|
|
|
32
|
-
#
|
|
33
|
-
/sf-
|
|
43
|
+
# Reset specific epic
|
|
44
|
+
/sf-reset epic-id
|
|
34
45
|
|
|
35
|
-
${chalk.bold('Example
|
|
46
|
+
${chalk.bold('Example 5: Track Work')}
|
|
36
47
|
${'─'.repeat(50)}
|
|
37
|
-
#
|
|
38
|
-
/sf-
|
|
48
|
+
# Link commit to ticket
|
|
49
|
+
/sf-commit abc123def456 TICKET-42 "Implement auth"
|
|
39
50
|
|
|
40
|
-
|
|
51
|
+
# View ticket details with dependencies
|
|
52
|
+
/sf-search id:TICKET-42
|
|
53
|
+
|
|
54
|
+
${chalk.bold('Example 6: CLI Commands')}
|
|
41
55
|
${'─'.repeat(50)}
|
|
42
56
|
# View current context
|
|
43
57
|
specforge status
|
|
@@ -54,31 +68,12 @@ specforge tickets --status pending
|
|
|
54
68
|
# View ticket details
|
|
55
69
|
specforge ticket 42
|
|
56
70
|
|
|
57
|
-
${chalk.bold('Example
|
|
71
|
+
${chalk.bold('Example 7: MCP Tool Calls')}
|
|
58
72
|
${'─'.repeat(50)}
|
|
59
73
|
# Direct tool call
|
|
60
74
|
specforge call get_ticket --args='{"ticketId":"abc123"}'
|
|
61
75
|
|
|
62
76
|
# List available tools
|
|
63
77
|
specforge tools --category context
|
|
64
|
-
|
|
65
|
-
${chalk.bold('Example 6: Session Management')}
|
|
66
|
-
${'─'.repeat(50)}
|
|
67
|
-
# Start implementation session
|
|
68
|
-
specforge session start
|
|
69
|
-
|
|
70
|
-
# Check session status
|
|
71
|
-
specforge session
|
|
72
|
-
|
|
73
|
-
# End session with summary
|
|
74
|
-
specforge session end --summary "Completed auth module"
|
|
75
|
-
|
|
76
|
-
${chalk.bold('Example 7: Scaffolding Commands')}
|
|
77
|
-
${'─'.repeat(50)}
|
|
78
|
-
# Scaffold for Claude Code
|
|
79
|
-
specforge scaffold --target claude
|
|
80
|
-
|
|
81
|
-
# Scaffold for project
|
|
82
|
-
specforge scaffold --target claude --project
|
|
83
78
|
`;
|
|
84
79
|
//# sourceMappingURL=examples.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"examples.js","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/examples.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,gBAAgB,GAAG;EAC9B,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC;EACtC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;EAEd,KAAK,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"examples.js","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/examples.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,gBAAgB,GAAG;EAC9B,KAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC;EACtC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;EAEd,KAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC;EAC7C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;;EAOd,KAAK,CAAC,IAAI,CAAC,8BAA8B,CAAC;EAC1C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;;;;;EAUd,KAAK,CAAC,IAAI,CAAC,4BAA4B,CAAC;EACxC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;;EAOd,KAAK,CAAC,IAAI,CAAC,gCAAgC,CAAC;EAC5C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;;EAOd,KAAK,CAAC,IAAI,CAAC,uBAAuB,CAAC;EACnC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;;EAOd,KAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC;EACrC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;;;;;;;;;;;EAgBd,KAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC;EACvC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;;;;CAMf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/workflow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"workflow.d.ts","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/workflow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,gBAAgB,QAgC5B,CAAC"}
|
|
@@ -12,21 +12,18 @@ ${chalk.bold('1. Setup')}
|
|
|
12
12
|
specforge login # One-time authentication
|
|
13
13
|
specforge init # Configure project
|
|
14
14
|
|
|
15
|
-
${chalk.bold('2.
|
|
16
|
-
/sf-
|
|
17
|
-
/sf-
|
|
18
|
-
/sf-create-epics <spec> # Add epics to spec
|
|
19
|
-
/sf-create-tickets <epic> # Add tickets to epic
|
|
15
|
+
${chalk.bold('2. Status & Context')}
|
|
16
|
+
/sf-context # View current project/spec
|
|
17
|
+
/sf-status # View progress and readiness
|
|
20
18
|
|
|
21
19
|
${chalk.bold('3. Implementation')}
|
|
22
|
-
/sf-
|
|
23
|
-
/sf-
|
|
24
|
-
/sf-
|
|
25
|
-
/sf-
|
|
20
|
+
/sf-analyze-blockers # Identify blocked tickets
|
|
21
|
+
/sf-search # Find tickets by criteria
|
|
22
|
+
/sf-reset # Reset ticket statuses
|
|
23
|
+
/sf-commit # Link commits to tickets
|
|
26
24
|
|
|
27
|
-
${chalk.bold('4.
|
|
28
|
-
/sf-
|
|
29
|
-
/sf-validate # System health check
|
|
25
|
+
${chalk.bold('4. Help & Utilities')}
|
|
26
|
+
/sf-help # Show available commands
|
|
30
27
|
|
|
31
28
|
${chalk.bold('Key Concepts')}
|
|
32
29
|
${'─'.repeat(50)}
|
|
@@ -34,7 +31,6 @@ ${'─'.repeat(50)}
|
|
|
34
31
|
• ${chalk.cyan('Epic')}: Group of related tickets with shared patterns
|
|
35
32
|
• ${chalk.cyan('Ticket')}: Single implementable unit of work
|
|
36
33
|
• ${chalk.cyan('Pattern')}: Reusable code standards and conventions
|
|
37
|
-
• ${chalk.cyan('Working Context')}: Current focus (project/spec/epic/ticket)
|
|
38
34
|
|
|
39
35
|
${chalk.bold('Status Flow')}
|
|
40
36
|
${'─'.repeat(50)}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/workflow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,gBAAgB,GAAG;EAC9B,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC;EAC/C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;EAEd,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;;;;EAItB,KAAK,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"workflow.js","sourceRoot":"","sources":["../../../../../src/cli/commands/docs/content/workflow.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,MAAM,gBAAgB,GAAG;EAC9B,KAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC;EAC/C,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;EAEd,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC;;;;EAItB,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC;;;;EAIjC,KAAK,CAAC,IAAI,CAAC,mBAAmB,CAAC;;;;;;EAM/B,KAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC;;;EAGjC,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC;EAC1B,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;IACZ,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC;IAC3B,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;IAClB,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;IACpB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC;;EAEvB,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC;EACzB,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;;;CAGf,CAAC"}
|
|
@@ -27,4 +27,6 @@ export { registerPlanCommand } from './plan.js';
|
|
|
27
27
|
export { registerScoreCommand } from './score/index.js';
|
|
28
28
|
export { registerReviewPlanningCommand } from './review-planning.js';
|
|
29
29
|
export { registerReviewImplementationCommand } from './review-implementation.js';
|
|
30
|
+
export { registerCompleteCommand } from './complete.js';
|
|
31
|
+
export { registerSetStatusCommand } from './set-status.js';
|
|
30
32
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -27,4 +27,6 @@ export { registerPlanCommand } from './plan.js';
|
|
|
27
27
|
export { registerScoreCommand } from './score/index.js';
|
|
28
28
|
export { registerReviewPlanningCommand } from './review-planning.js';
|
|
29
29
|
export { registerReviewImplementationCommand } from './review-implementation.js';
|
|
30
|
+
export { registerCompleteCommand } from './complete.js';
|
|
31
|
+
export { registerSetStatusCommand } from './set-status.js';
|
|
30
32
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,yBAAyB,EAAE,MAAM,iBAAiB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACtD,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,mCAAmC,EAAE,MAAM,4BAA4B,CAAC;AACjF,OAAO,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA8BpC,OAAO,EACL,WAAW,EAaZ,MAAM,iBAAiB,CAAC;AAqdzB;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CA0RpE;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CA6B1D"}
|
|
@@ -13,6 +13,7 @@ import { resolveConfig, loadGlobalConfig, loadProjectConfig, saveProjectConfig,
|
|
|
13
13
|
import { withErrorHandler, CliError, NetworkError, ValidationError } from '../middleware/error-handler.js';
|
|
14
14
|
import { printSuccess, printWarning, printBlank, printHeader, printField, printHint, } from '../ui/output.js';
|
|
15
15
|
import { colors } from '../ui/colors.js';
|
|
16
|
+
import { printBanner } from '../ui/banner.js';
|
|
16
17
|
import { ApiClient } from '../../client/api-client.js';
|
|
17
18
|
import { FORMAT_CHOICES, DEFAULT_FORMAT, STRATEGY_CHOICES, SKILL_TEMPLATE_FILES, } from './init.types.js';
|
|
18
19
|
/**
|
|
@@ -330,6 +331,32 @@ async function scaffoldSkillFiles(projectName, skipPrompts) {
|
|
|
330
331
|
printWarning('Could not create .claude/skills/ directory. Skipping skill scaffolding.');
|
|
331
332
|
return;
|
|
332
333
|
}
|
|
334
|
+
// Count existing files and determine batch overwrite policy
|
|
335
|
+
const existingFiles = SKILL_TEMPLATE_FILES.filter(file => {
|
|
336
|
+
const targetPath = path.join(targetDir, file);
|
|
337
|
+
return fs.existsSync(targetPath);
|
|
338
|
+
});
|
|
339
|
+
let overwritePolicy = 'ask';
|
|
340
|
+
if (existingFiles.length > 0 && !skipPrompts) {
|
|
341
|
+
const { policy } = await inquirer.prompt([
|
|
342
|
+
{
|
|
343
|
+
type: 'list',
|
|
344
|
+
name: 'policy',
|
|
345
|
+
message: `${existingFiles.length} skill file(s) already exist. How should we proceed?`,
|
|
346
|
+
choices: [
|
|
347
|
+
{ name: 'Skip all existing', value: 'skip' },
|
|
348
|
+
{ name: 'Overwrite all', value: 'overwrite' },
|
|
349
|
+
{ name: 'Ask for each', value: 'ask' },
|
|
350
|
+
],
|
|
351
|
+
default: 'ask',
|
|
352
|
+
},
|
|
353
|
+
]);
|
|
354
|
+
overwritePolicy = policy;
|
|
355
|
+
}
|
|
356
|
+
else if (skipPrompts) {
|
|
357
|
+
// In non-interactive mode, skip existing files by default
|
|
358
|
+
overwritePolicy = 'skip';
|
|
359
|
+
}
|
|
333
360
|
const scaffolded = [];
|
|
334
361
|
for (const file of SKILL_TEMPLATE_FILES) {
|
|
335
362
|
const sourcePath = path.join(templatesDir, file);
|
|
@@ -338,18 +365,24 @@ async function scaffoldSkillFiles(projectName, skipPrompts) {
|
|
|
338
365
|
continue;
|
|
339
366
|
}
|
|
340
367
|
// Check if file already exists
|
|
341
|
-
if (fs.existsSync(targetPath)
|
|
342
|
-
|
|
343
|
-
{
|
|
344
|
-
type: 'confirm',
|
|
345
|
-
name: 'overwrite',
|
|
346
|
-
message: `Skill file ${file} already exists. Overwrite?`,
|
|
347
|
-
default: false,
|
|
348
|
-
},
|
|
349
|
-
]);
|
|
350
|
-
if (!overwrite) {
|
|
368
|
+
if (fs.existsSync(targetPath)) {
|
|
369
|
+
if (overwritePolicy === 'skip') {
|
|
351
370
|
continue;
|
|
352
371
|
}
|
|
372
|
+
else if (overwritePolicy === 'ask') {
|
|
373
|
+
const { overwrite } = await inquirer.prompt([
|
|
374
|
+
{
|
|
375
|
+
type: 'confirm',
|
|
376
|
+
name: 'overwrite',
|
|
377
|
+
message: `Skill file ${file} already exists. Overwrite?`,
|
|
378
|
+
default: false,
|
|
379
|
+
},
|
|
380
|
+
]);
|
|
381
|
+
if (!overwrite) {
|
|
382
|
+
continue;
|
|
383
|
+
}
|
|
384
|
+
}
|
|
385
|
+
// If overwritePolicy === 'overwrite', proceed to write
|
|
353
386
|
}
|
|
354
387
|
try {
|
|
355
388
|
// Read template content
|
|
@@ -388,10 +421,34 @@ export async function initAction(options) {
|
|
|
388
421
|
if (!config.apiKey) {
|
|
389
422
|
throw new CliError('Not authenticated', 1, 'Run `specforge login` to authenticate first');
|
|
390
423
|
}
|
|
424
|
+
// Spec-only mode: switch specification without re-initializing
|
|
425
|
+
if (options.specOnly) {
|
|
426
|
+
const existing = loadProjectConfig();
|
|
427
|
+
if (!existing?.projectId) {
|
|
428
|
+
throw new CliError('No .specforge.json found — run `specforge init` first');
|
|
429
|
+
}
|
|
430
|
+
const client = new ApiClient({ apiKey: config.apiKey, apiUrl: config.apiUrl, debug: config.debug });
|
|
431
|
+
const specs = await fetchSpecifications(client, existing.projectId);
|
|
432
|
+
let selectedSpec;
|
|
433
|
+
if (options.spec) {
|
|
434
|
+
selectedSpec = validateSpecificationId(options.spec, specs);
|
|
435
|
+
}
|
|
436
|
+
else {
|
|
437
|
+
const { specId } = await inquirer.prompt([{
|
|
438
|
+
type: 'list',
|
|
439
|
+
name: 'specId',
|
|
440
|
+
message: 'Select specification:',
|
|
441
|
+
choices: specs.map(s => ({ name: `${s.title} (${s.status})`, value: s.id })),
|
|
442
|
+
}]);
|
|
443
|
+
selectedSpec = specs.find(s => s.id === specId);
|
|
444
|
+
}
|
|
445
|
+
saveProjectConfig({ ...existing, specificationId: selectedSpec.id });
|
|
446
|
+
printSuccess(`Switched to: ${selectedSpec.title}`);
|
|
447
|
+
return;
|
|
448
|
+
}
|
|
391
449
|
// Header
|
|
392
450
|
printBlank();
|
|
393
|
-
|
|
394
|
-
console.log(colors.muted(`Using API key from ${config.sources.apiKey === 'env' ? 'environment' : '~/.specforge/config.json'}`));
|
|
451
|
+
printBanner('figlet');
|
|
395
452
|
printBlank();
|
|
396
453
|
// Check for existing files
|
|
397
454
|
const existing = checkExistingFiles();
|
|
@@ -538,8 +595,35 @@ export async function initAction(options) {
|
|
|
538
595
|
});
|
|
539
596
|
printSuccess('Saved Agent Teams configuration to .specforge.json');
|
|
540
597
|
}
|
|
541
|
-
// Scaffold skill files
|
|
542
|
-
|
|
598
|
+
// Scaffold skill files only if Agent Teams is enabled
|
|
599
|
+
if (agentTeamsConfig?.enabled) {
|
|
600
|
+
await scaffoldSkillFiles(selectedProject.name, isNonInteractive);
|
|
601
|
+
}
|
|
602
|
+
// Offer to scaffold commands and agents
|
|
603
|
+
if (!isNonInteractive) {
|
|
604
|
+
const { scaffoldCmds } = await inquirer.prompt([{
|
|
605
|
+
type: 'confirm',
|
|
606
|
+
name: 'scaffoldCmds',
|
|
607
|
+
message: 'Scaffold slash commands (.claude/commands)?',
|
|
608
|
+
default: true,
|
|
609
|
+
}]);
|
|
610
|
+
if (scaffoldCmds) {
|
|
611
|
+
const { scaffoldCommand } = await import('./scaffold/scaffold.js');
|
|
612
|
+
await scaffoldCommand({ target: 'claude', update: true });
|
|
613
|
+
}
|
|
614
|
+
if (agentTeamsConfig?.enabled) {
|
|
615
|
+
const { scaffoldAgents } = await inquirer.prompt([{
|
|
616
|
+
type: 'confirm',
|
|
617
|
+
name: 'scaffoldAgents',
|
|
618
|
+
message: 'Scaffold agent definitions (.claude/agents)?',
|
|
619
|
+
default: true,
|
|
620
|
+
}]);
|
|
621
|
+
if (scaffoldAgents) {
|
|
622
|
+
const { scaffoldCommand } = await import('./scaffold/scaffold.js');
|
|
623
|
+
await scaffoldCommand({ agents: true, target: 'claude', update: true });
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
}
|
|
543
627
|
// Success summary
|
|
544
628
|
printBlank();
|
|
545
629
|
printHeader('Configuration Complete');
|
|
@@ -576,6 +660,7 @@ export function registerInitCommand(program) {
|
|
|
576
660
|
.option('-f, --force', 'Overwrite existing configuration files')
|
|
577
661
|
.option('-s, --show', 'Display current configuration settings')
|
|
578
662
|
.option('-y, --yes', 'Skip interactive prompts, use defaults')
|
|
663
|
+
.option('--spec-only', 'Switch active specification (quick switch)')
|
|
579
664
|
.addHelpText('after', `
|
|
580
665
|
Examples:
|
|
581
666
|
$ specforge init # Interactive setup
|
|
@@ -584,6 +669,7 @@ Examples:
|
|
|
584
669
|
$ specforge init --project proj_abc --spec spec_xyz --format toon
|
|
585
670
|
$ specforge init --force # Overwrite existing config
|
|
586
671
|
$ specforge init --yes # Use defaults, skip prompts
|
|
672
|
+
$ specforge init --spec-only # Switch specification
|
|
587
673
|
|
|
588
674
|
This command creates:
|
|
589
675
|
.mcp.json - Claude Code MCP server configuration
|