sdd-mcp-server 3.5.0 → 4.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/README.md +97 -671
  2. package/agents/architect.md +15 -93
  3. package/agents/implementer.md +16 -141
  4. package/agents/planner.md +16 -84
  5. package/agents/reviewer.md +16 -239
  6. package/agents/security-auditor.md +16 -114
  7. package/agents/tdd-guide.md +17 -228
  8. package/dist/adapters/cli/SDDToolAdapter.d.ts +14 -5
  9. package/dist/adapters/cli/SDDToolAdapter.js +189 -362
  10. package/dist/adapters/cli/SDDToolAdapter.js.map +1 -1
  11. package/dist/application/services/ContextCompactionService.d.ts +81 -16
  12. package/dist/application/services/ContextCompactionService.js +370 -187
  13. package/dist/application/services/ContextCompactionService.js.map +1 -1
  14. package/dist/application/services/SpecPathResolver.d.ts +24 -0
  15. package/dist/application/services/SpecPathResolver.js +70 -0
  16. package/dist/application/services/SpecPathResolver.js.map +1 -0
  17. package/dist/application/services/WorkflowEngineService.d.ts +100 -46
  18. package/dist/application/services/WorkflowEngineService.js +468 -288
  19. package/dist/application/services/WorkflowEngineService.js.map +1 -1
  20. package/dist/cli/install-skills.d.ts +3 -9
  21. package/dist/cli/install-skills.js +130 -175
  22. package/dist/cli/install-skills.js.map +1 -1
  23. package/dist/cli/install-target.d.ts +45 -14
  24. package/dist/cli/install-target.js +26 -12
  25. package/dist/cli/install-target.js.map +1 -1
  26. package/dist/cli/sdd-mcp-cli.d.ts +1 -1
  27. package/dist/cli/sdd-mcp-cli.js +7 -6
  28. package/dist/cli/sdd-mcp-cli.js.map +1 -1
  29. package/dist/cli/tool-support/claude-code.js +13 -34
  30. package/dist/cli/tool-support/claude-code.js.map +1 -1
  31. package/dist/cli/tool-support/codex.d.ts +0 -53
  32. package/dist/cli/tool-support/codex.js +6 -94
  33. package/dist/cli/tool-support/codex.js.map +1 -1
  34. package/dist/cli/tool-support/index.d.ts +3 -2
  35. package/dist/cli/tool-support/index.js +3 -1
  36. package/dist/cli/tool-support/index.js.map +1 -1
  37. package/dist/cli/tool-support/omp.d.ts +5 -0
  38. package/dist/cli/tool-support/omp.js +43 -0
  39. package/dist/cli/tool-support/omp.js.map +1 -0
  40. package/dist/cli/tool-support/root-guidance.d.ts +2 -9
  41. package/dist/cli/tool-support/root-guidance.js +44 -37
  42. package/dist/cli/tool-support/root-guidance.js.map +1 -1
  43. package/dist/cli/tool-support/target-agent-renderer.d.ts +1 -0
  44. package/dist/cli/tool-support/target-agent-renderer.js +37 -4
  45. package/dist/cli/tool-support/target-agent-renderer.js.map +1 -1
  46. package/dist/cli/tool-support/target-installer.d.ts +8 -2
  47. package/dist/cli/tool-support/target-installer.js +94 -26
  48. package/dist/cli/tool-support/target-installer.js.map +1 -1
  49. package/dist/cli/utils/preserving-writer.d.ts +22 -0
  50. package/dist/cli/utils/preserving-writer.js +233 -11
  51. package/dist/cli/utils/preserving-writer.js.map +1 -1
  52. package/dist/domain/ports.d.ts +4 -0
  53. package/dist/index.d.ts +13 -10
  54. package/dist/index.js +16 -1199
  55. package/dist/index.js.map +1 -1
  56. package/dist/infrastructure/adapters/NodeFileSystemAdapter.d.ts +3 -0
  57. package/dist/infrastructure/adapters/NodeFileSystemAdapter.js +10 -0
  58. package/dist/infrastructure/adapters/NodeFileSystemAdapter.js.map +1 -1
  59. package/dist/infrastructure/mcp/CapabilityNegotiator.js +3 -3
  60. package/dist/infrastructure/mcp/CapabilityNegotiator.js.map +1 -1
  61. package/dist/infrastructure/mcp/sddToolDefinitions.d.ts +6 -0
  62. package/dist/infrastructure/mcp/sddToolDefinitions.js +124 -0
  63. package/dist/infrastructure/mcp/sddToolDefinitions.js.map +1 -0
  64. package/dist/utils/atomicWrite.d.ts +8 -35
  65. package/dist/utils/atomicWrite.js +12 -60
  66. package/dist/utils/atomicWrite.js.map +1 -1
  67. package/mcp-server.js +5 -2883
  68. package/package.json +5 -2
  69. package/scripts/context-usage-report.mjs +602 -0
  70. package/sdd-entry.js +17 -6
  71. package/skills/sdd-commit/REFERENCE.md +31 -0
  72. package/skills/sdd-commit/SKILL.md +17 -273
  73. package/skills/sdd-design/REFERENCE.md +35 -0
  74. package/skills/sdd-design/SKILL.md +19 -265
  75. package/skills/sdd-implement/REFERENCE.md +26 -0
  76. package/skills/sdd-implement/SKILL.md +22 -283
  77. package/skills/sdd-requirements/REFERENCE.md +31 -0
  78. package/skills/sdd-requirements/SKILL.md +23 -135
  79. package/skills/sdd-review/REFERENCE.md +26 -0
  80. package/skills/sdd-review/SKILL.md +17 -181
  81. package/skills/sdd-security-check/REFERENCE.md +19 -0
  82. package/skills/sdd-security-check/SKILL.md +18 -184
  83. package/skills/sdd-steering/REFERENCE.md +25 -0
  84. package/skills/sdd-steering/SKILL.md +18 -216
  85. package/skills/sdd-steering-custom/REFERENCE.md +27 -0
  86. package/skills/sdd-steering-custom/SKILL.md +19 -203
  87. package/skills/sdd-tasks/REFERENCE.md +25 -0
  88. package/skills/sdd-tasks/SKILL.md +19 -248
  89. package/skills/sdd-test-gen/REFERENCE.md +15 -0
  90. package/skills/sdd-test-gen/SKILL.md +17 -287
  91. package/skills/simple-task/REFERENCE.md +22 -0
  92. package/skills/simple-task/SKILL.md +17 -138
  93. package/templates/CLAUDE.md +18 -30
  94. package/rules/git-workflow.md +0 -92
  95. package/rules/sdd-workflow.md +0 -116
@@ -1 +1 @@
1
- {"version":3,"file":"ContextCompactionService.js","sourceRoot":"","sources":["../../../src/application/services/ContextCompactionService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ContextCompactionService.js","sourceRoot":"","sources":["../../../src/application/services/ContextCompactionService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ import { FileSystemPort } from '../../domain/ports.js';
2
+ export declare class InvalidFeatureNameError extends Error {
3
+ readonly code = "InvalidFeatureName";
4
+ constructor(featureName: string);
5
+ }
6
+ export declare class SpecPathEscapeError extends Error {
7
+ readonly code = "SpecPathEscape";
8
+ constructor(candidate: string);
9
+ }
10
+ export interface ResolvedSpecPaths {
11
+ readonly projectRoot: string;
12
+ readonly specsRoot: string;
13
+ readonly featureRoot: string;
14
+ }
15
+ export declare function validateFeatureName(featureName: string): void;
16
+ /** Resolves feature paths and rejects lexical and symlink escapes before I/O. */
17
+ export declare class SpecPathResolver {
18
+ private readonly fileSystem;
19
+ constructor(fileSystem: FileSystemPort);
20
+ resolve(projectRoot: string, featureName: string): Promise<ResolvedSpecPaths>;
21
+ assertContained(root: string, candidate: string): Promise<void>;
22
+ private canonicalExisting;
23
+ private isContained;
24
+ }
@@ -0,0 +1,70 @@
1
+ import path from 'node:path';
2
+ export class InvalidFeatureNameError extends Error {
3
+ code = 'InvalidFeatureName';
4
+ constructor(featureName) {
5
+ super(`Invalid feature name: ${featureName}`);
6
+ this.name = 'InvalidFeatureNameError';
7
+ }
8
+ }
9
+ export class SpecPathEscapeError extends Error {
10
+ code = 'SpecPathEscape';
11
+ constructor(candidate) {
12
+ super(`Spec path escapes the project specification root: ${candidate}`);
13
+ this.name = 'SpecPathEscapeError';
14
+ }
15
+ }
16
+ export function validateFeatureName(featureName) {
17
+ if (!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(featureName) || featureName === '.' || featureName === '..') {
18
+ throw new InvalidFeatureNameError(featureName);
19
+ }
20
+ }
21
+ /** Resolves feature paths and rejects lexical and symlink escapes before I/O. */
22
+ export class SpecPathResolver {
23
+ fileSystem;
24
+ constructor(fileSystem) {
25
+ this.fileSystem = fileSystem;
26
+ }
27
+ async resolve(projectRoot, featureName) {
28
+ validateFeatureName(featureName);
29
+ const absoluteProject = path.resolve(projectRoot);
30
+ const specsRoot = path.join(absoluteProject, '.spec', 'specs');
31
+ const featureRoot = path.join(specsRoot, featureName);
32
+ if (!this.isContained(specsRoot, featureRoot)) {
33
+ throw new SpecPathEscapeError(featureRoot);
34
+ }
35
+ const canonicalProject = await this.canonicalExisting(absoluteProject);
36
+ const canonicalSpecs = await this.canonicalExisting(specsRoot);
37
+ if (!this.isContained(canonicalProject, canonicalSpecs)) {
38
+ throw new SpecPathEscapeError(specsRoot);
39
+ }
40
+ if (await this.fileSystem.exists(featureRoot)) {
41
+ const canonicalFeature = await this.canonicalExisting(featureRoot);
42
+ if (!this.isContained(canonicalSpecs, canonicalFeature)) {
43
+ throw new SpecPathEscapeError(featureRoot);
44
+ }
45
+ }
46
+ return { projectRoot: canonicalProject, specsRoot: canonicalSpecs, featureRoot };
47
+ }
48
+ async assertContained(root, candidate) {
49
+ if (!this.isContained(root, candidate)) {
50
+ throw new SpecPathEscapeError(candidate);
51
+ }
52
+ if (await this.fileSystem.exists(candidate)) {
53
+ const [canonicalRoot, canonicalCandidate] = await Promise.all([
54
+ this.canonicalExisting(root),
55
+ this.canonicalExisting(candidate),
56
+ ]);
57
+ if (!this.isContained(canonicalRoot, canonicalCandidate)) {
58
+ throw new SpecPathEscapeError(candidate);
59
+ }
60
+ }
61
+ }
62
+ async canonicalExisting(candidate) {
63
+ return this.fileSystem.realpath ? this.fileSystem.realpath(candidate) : path.resolve(candidate);
64
+ }
65
+ isContained(root, candidate) {
66
+ const relative = path.relative(path.resolve(root), path.resolve(candidate));
67
+ return relative === '' || (!relative.startsWith('..') && !path.isAbsolute(relative));
68
+ }
69
+ }
70
+ //# sourceMappingURL=SpecPathResolver.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SpecPathResolver.js","sourceRoot":"","sources":["../../../src/application/services/SpecPathResolver.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,68 @@
1
- import { Project, WorkflowPhase, PhaseApprovals } from '../../domain/types.js';
2
- import { ProjectRepository, LoggerPort, ValidationPort } from '../../domain/ports.js';
3
- import { WorkflowStateMachine, WorkflowAuditEntry } from '../../domain/workflow/WorkflowStateMachine.js';
1
+ import { Project, WorkflowPhase } from '../../domain/types.js';
2
+ import { ProjectRepository, LoggerPort, FileSystemPort } from '../../domain/ports.js';
4
3
  import { ProjectService } from './ProjectService.js';
5
4
  import { TemplateService } from './TemplateService.js';
6
- import { ContextCompactionService } from './ContextCompactionService.js';
7
- export interface WorkflowProgressionResult {
8
- success: boolean;
9
- updatedProject?: Project;
10
- message: string;
11
- auditEntry?: WorkflowAuditEntry;
12
- nextSteps?: string[];
13
- }
14
- export interface WorkflowRollbackResult {
15
- success: boolean;
16
- updatedProject?: Project;
17
- message: string;
18
- auditEntry?: WorkflowAuditEntry;
5
+ import { ContextCompactionService, ApprovablePhase } from './ContextCompactionService.js';
6
+ export interface ApprovalRequest {
7
+ readonly projectRoot: string;
8
+ readonly featureName: string;
9
+ readonly phase: ApprovablePhase;
10
+ }
11
+ export interface ReviewTestCasesRequest {
12
+ readonly projectRoot: string;
13
+ readonly featureName: string;
14
+ }
15
+ export interface RollbackRequest {
16
+ readonly projectRoot: string;
17
+ readonly featureName: string;
18
+ readonly triggeredBy: string;
19
+ }
20
+ export interface HandoffPublication {
21
+ readonly status: 'published' | 'pending-regeneration';
22
+ readonly path?: string;
23
+ readonly fingerprint?: string;
24
+ readonly payloadEstimatedTokens?: number;
25
+ readonly warning?: {
26
+ readonly code: 'HandoffPublicationFailed';
27
+ readonly message: string;
28
+ };
29
+ }
30
+ export interface ApprovalResult {
31
+ readonly featureName: string;
32
+ readonly phase: ApprovablePhase;
33
+ readonly approved: true;
34
+ readonly canProgressToNext: boolean;
35
+ readonly handoff: HandoffPublication;
36
+ }
37
+ export interface ReviewTestCasesResult {
38
+ readonly featureName: string;
39
+ readonly reviewed: true;
40
+ readonly canApproveTasks: boolean;
41
+ readonly handoff: HandoffPublication;
42
+ }
43
+ export interface FeatureRequest {
44
+ readonly projectRoot: string;
45
+ readonly featureName: string;
46
+ }
47
+ export interface InitializeFeatureRequest extends FeatureRequest {
48
+ readonly language: string;
49
+ readonly reviewTestCases: boolean;
50
+ }
51
+ export interface GeneratePhaseRequest extends FeatureRequest {
52
+ readonly phase: ApprovablePhase;
53
+ readonly reviewTestCases?: boolean;
54
+ }
55
+ export interface DurableFeatureStatus {
56
+ readonly featureName: string;
57
+ readonly phase: WorkflowPhase;
58
+ readonly currentPhase?: WorkflowPhase;
59
+ readonly nextPhase?: WorkflowPhase;
60
+ readonly canProgress?: boolean;
61
+ readonly blockers?: string[];
62
+ readonly testCases?: {
63
+ required: boolean;
64
+ reviewed: boolean;
65
+ };
19
66
  }
20
67
  export declare class WorkflowEngineService {
21
68
  private readonly projectRepository;
@@ -23,36 +70,43 @@ export declare class WorkflowEngineService {
23
70
  private readonly templateService;
24
71
  private readonly contextCompactionService;
25
72
  private readonly logger;
26
- private readonly validation;
27
- private readonly stateMachine;
28
- constructor(projectRepository: ProjectRepository, projectService: ProjectService, templateService: TemplateService, contextCompactionService: ContextCompactionService, logger: LoggerPort, validation: ValidationPort);
29
- progressToNextPhase(projectId: string, triggeredBy: string): Promise<WorkflowProgressionResult>;
30
- transitionToPhase(projectId: string, targetPhase: WorkflowPhase, triggeredBy: string): Promise<WorkflowProgressionResult>;
31
- rollbackToPreviousPhase(projectId: string, triggeredBy: string): Promise<WorkflowRollbackResult>;
32
- updateApprovalStatus(projectId: string, phase: keyof PhaseApprovals, approval: Partial<{
33
- generated: boolean;
34
- approved: boolean;
35
- }>, triggeredBy: string): Promise<{
36
- success: boolean;
37
- updatedProject?: Project;
38
- message: string;
39
- canProgressToNext?: boolean;
73
+ private readonly fileSystem?;
74
+ private static readonly featureLocks;
75
+ constructor(projectRepository: ProjectRepository, projectService: ProjectService, templateService: TemplateService, contextCompactionService: ContextCompactionService, logger: LoggerPort, fileSystem?: FileSystemPort);
76
+ approve(request: ApprovalRequest): Promise<ApprovalResult>;
77
+ reviewTestCases(request: ReviewTestCasesRequest): Promise<ReviewTestCasesResult>;
78
+ rollback(request: RollbackRequest): Promise<{
79
+ readonly featureName: string;
80
+ readonly rolledBackPhase: ApprovablePhase;
81
+ readonly handoff: HandoffPublication;
40
82
  }>;
41
- getWorkflowStatus(projectId: string): Promise<{
42
- project: Project;
43
- progress: ReturnType<WorkflowStateMachine['getPhaseProgress']>;
44
- auditTrail: WorkflowAuditEntry[];
45
- integrity: ReturnType<WorkflowStateMachine['validateWorkflowIntegrity']>;
46
- validTransitions: WorkflowPhase[];
47
- } | null>;
48
- validateWorkflowState(projectId: string): Promise<{
49
- isValid: boolean;
50
- violations: string[];
51
- recommendations: string[];
52
- canProgress: boolean;
53
- nextPhase?: WorkflowPhase;
83
+ initializeFeature(request: InitializeFeatureRequest): Promise<Project>;
84
+ listFeatureStatuses(request: {
85
+ readonly projectRoot: string;
86
+ }): Promise<DurableFeatureStatus[]>;
87
+ getFeatureStatus(request: FeatureRequest): Promise<DurableFeatureStatus>;
88
+ loadProject(request: FeatureRequest): Promise<Project>;
89
+ generatePhase(request: GeneratePhaseRequest): Promise<string>;
90
+ beginImplementation(request: FeatureRequest): Promise<{
91
+ readonly featureName: string;
92
+ readonly phase: WorkflowPhase;
93
+ readonly ready: true;
54
94
  }>;
55
- private generatePhaseDeliverables;
56
- private resetPhaseApprovals;
57
- private getNextSteps;
95
+ private requireAtomicFileSystem;
96
+ private assertPhaseCanBeGenerated;
97
+ private persistPhaseDocument;
98
+ private buildGeneratedSpec;
99
+ private renderPhase;
100
+ private phaseTitle;
101
+ private hydrateProject;
102
+ private readDate;
103
+ private readWorkflowPhase;
104
+ private resolveProgression;
105
+ private withFeatureLock;
106
+ private readDiskSpec;
107
+ private readApprovals;
108
+ private readReviewState;
109
+ private writeSpecAtomic;
110
+ private publishHandoff;
111
+ private synchronizeRepository;
58
112
  }