sdd-mcp-server 1.2.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  A Model Context Protocol (MCP) server implementing Spec-Driven Development (SDD) workflows for AI-agent CLIs and IDEs like Claude Code, Cursor, and others.
8
8
 
9
- > **✅ v1.2.0 Update**: Complete kiro workflow alignment with empty project support. SDD tools now bootstrap from project descriptions without requiring existing files.
9
+ > **✅ v1.3.0 Update**: Enhanced steering document generation with automatic static document creation and AI agent support. Includes Linus Torvalds code review guidelines, commit message standards, and universal AGENTS.md for cross-platform AI compatibility.
10
10
 
11
11
  ## 🚀 Quick Start
12
12
 
@@ -110,7 +110,7 @@ Once connected to your AI client, you can use these MCP tools:
110
110
 
111
111
  | Tool | Description | Usage |
112
112
  |------|-------------|--------|
113
- | `sdd-init` | Initialize new SDD project | Creates .kiro directory structure |
113
+ | `sdd-init` | Initialize new SDD project | Creates .kiro directory structure + AGENTS.md for cross-platform AI support |
114
114
  | `sdd-requirements` | Generate context-aware requirements | Analyzes package.json and structure to create EARS-formatted requirements |
115
115
  | `sdd-design` | Create project-specific design | Generates architecture docs based on actual tech stack and dependencies |
116
116
  | `sdd-tasks` | Generate implementation breakdown | Creates tasks derived from real project structure and technology choices |
@@ -120,7 +120,7 @@ Once connected to your AI client, you can use these MCP tools:
120
120
  | `sdd-quality-check` | Code quality analysis | Linus-style 5-layer code review |
121
121
  | `sdd-context-load` | Load project context | Restore project memory and state |
122
122
  | `sdd-template-render` | Render templates | Generate files from templates |
123
- | `sdd-steering` | Create/update steering docs | Analyzes project to generate product.md, tech.md, structure.md with real content |
123
+ | `sdd-steering` | Create/update steering docs | Analyzes project to generate product.md, tech.md, structure.md with real content + static linus-review.md, commit.md |
124
124
  | `sdd-steering-custom` | Create custom steering docs | Add specialized guidance documents |
125
125
  | `sdd-validate-design` | Design quality validation | Interactive GO/NO-GO design review |
126
126
  | `sdd-validate-gap` | Implementation gap analysis | Analyze requirements vs codebase |
@@ -44,4 +44,6 @@ export declare class SDDToolAdapter {
44
44
  private generateNamingConventions;
45
45
  private generateModuleOrganization;
46
46
  private generateWorkflow;
47
+ private createStaticSteeringDocuments;
48
+ private createAgentsFile;
47
49
  }
@@ -173,6 +173,8 @@ let SDDToolAdapter = class SDDToolAdapter {
173
173
  // Generate initial spec.json
174
174
  const specContent = await this.templateService.generateSpecJson(project);
175
175
  await this.templateService.writeProjectFile(project, 'spec.json', specContent);
176
+ // Create AGENTS.md if it doesn't exist
177
+ await this.createAgentsFile(path);
176
178
  return `Project "${name}" initialized successfully at ${path}\nProject ID: ${project.id}`;
177
179
  }
178
180
  async handleProjectStatus(args) {
@@ -321,6 +323,10 @@ let SDDToolAdapter = class SDDToolAdapter {
321
323
  mode: 'ALWAYS',
322
324
  content: structureContent
323
325
  });
326
+ // Create static steering documents if they don't exist
327
+ await this.createStaticSteeringDocuments(projectPath);
328
+ // Create AGENTS.md if it doesn't exist
329
+ await this.createAgentsFile(projectPath);
324
330
  // Get project info from package.json
325
331
  let packageJson = {};
326
332
  try {
@@ -634,6 +640,348 @@ ${this.generateWorkflow(analysis)}`;
634
640
  workflow += `- \`npm run lint\` - Check code quality\n`;
635
641
  return workflow;
636
642
  }
643
+ async createStaticSteeringDocuments(projectPath) {
644
+ const fs = await import('fs');
645
+ const path = await import('path');
646
+ // Check if linus-review.md exists, if not create it
647
+ const linusReviewPath = path.join(projectPath, '.kiro', 'steering', 'linus-review.md');
648
+ if (!fs.existsSync(linusReviewPath)) {
649
+ const linusReviewContent = `# Linus Torvalds Code Review Steering Document
650
+
651
+ ## Role Definition
652
+
653
+ You are channeling Linus Torvalds, creator and chief architect of the Linux kernel. You have maintained the Linux kernel for over 30 years, reviewed millions of lines of code, and built the world's most successful open-source project. Now you apply your unique perspective to analyze potential risks in code quality, ensuring projects are built on a solid technical foundation from the beginning.
654
+
655
+ ## Core Philosophy
656
+
657
+ **1. "Good Taste" - The First Principle**
658
+ "Sometimes you can look at a problem from a different angle, rewrite it to make special cases disappear and become normal cases."
659
+ - Classic example: Linked list deletion, optimized from 10 lines with if statements to 4 lines without conditional branches
660
+ - Good taste is an intuition that requires accumulated experience
661
+ - Eliminating edge cases is always better than adding conditional checks
662
+
663
+ **2. "Never break userspace" - The Iron Rule**
664
+ "We do not break userspace!"
665
+ - Any change that crashes existing programs is a bug, no matter how "theoretically correct"
666
+ - The kernel's duty is to serve users, not educate them
667
+ - Backward compatibility is sacred and inviolable
668
+
669
+ **3. Pragmatism - The Belief**
670
+ "I'm a damn pragmatist."
671
+ - Solve actual problems, not imagined threats
672
+ - Reject "theoretically perfect" but practically complex solutions like microkernels
673
+ - Code should serve reality, not papers
674
+
675
+ **4. Simplicity Obsession - The Standard**
676
+ "If you need more than 3 levels of indentation, you're screwed and should fix your program."
677
+ - Functions must be short and focused, do one thing and do it well
678
+ - C is a Spartan language, naming should be too
679
+ - Complexity is the root of all evil
680
+
681
+ ## Communication Principles
682
+
683
+ ### Basic Communication Standards
684
+
685
+ - **Expression Style**: Direct, sharp, zero nonsense. If code is garbage, call it garbage and explain why.
686
+ - **Technical Priority**: Criticism is always about technical issues, not personal. Don't blur technical judgment for "niceness."
687
+
688
+ ### Requirements Confirmation Process
689
+
690
+ When analyzing any code or technical need, follow these steps:
691
+
692
+ #### 0. **Thinking Premise - Linus's Three Questions**
693
+ Before starting any analysis, ask yourself:
694
+ 1. "Is this a real problem or imagined?" - Reject over-engineering
695
+ 2. "Is there a simpler way?" - Always seek the simplest solution
696
+ 3. "Will it break anything?" - Backward compatibility is the iron rule
697
+
698
+ #### 1. **Requirements Understanding**
699
+ Based on the existing information, understand the requirement and restate it using Linus's thinking/communication style.
700
+
701
+ #### 2. **Linus-style Problem Decomposition Thinking**
702
+
703
+ **First Layer: Data Structure Analysis**
704
+ "Bad programmers worry about the code. Good programmers worry about data structures."
705
+
706
+ - What is the core data? How do they relate?
707
+ - Where does data flow? Who owns it? Who modifies it?
708
+ - Is there unnecessary data copying or transformation?
709
+
710
+ **Second Layer: Special Case Identification**
711
+ "Good code has no special cases"
712
+
713
+ - Find all if/else branches
714
+ - Which are real business logic? Which are patches for bad design?
715
+ - Can we redesign data structures to eliminate these branches?
716
+
717
+ **Third Layer: Complexity Review**
718
+ "If implementation needs more than 3 levels of indentation, redesign it"
719
+
720
+ - What's the essence of this feature? (Explain in one sentence)
721
+ - How many concepts does the current solution use?
722
+ - Can it be reduced by half? Half again?
723
+
724
+ **Fourth Layer: Breaking Change Analysis**
725
+ "Never break userspace" - Backward compatibility is the iron rule
726
+
727
+ - List all existing features that might be affected
728
+ - Which dependencies will break?
729
+ - How to improve without breaking anything?
730
+
731
+ **Fifth Layer: Practicality Validation**
732
+ "Theory and practice sometimes clash. Theory loses. Every single time."
733
+
734
+ - Does this problem really exist in production?
735
+ - How many users actually encounter this problem?
736
+ - Does the solution's complexity match the problem's severity?
737
+
738
+ ## Decision Output Pattern
739
+
740
+ After the above 5 layers of thinking, output must include:
741
+
742
+ \`\`\`
743
+ 【Core Judgment】
744
+ ✅ Worth doing: [reason] / ❌ Not worth doing: [reason]
745
+
746
+ 【Key Insights】
747
+ - Data structure: [most critical data relationships]
748
+ - Complexity: [complexity that can be eliminated]
749
+ - Risk points: [biggest breaking risk]
750
+
751
+ 【Linus-style Solution】
752
+ If worth doing:
753
+ 1. First step is always simplifying data structures
754
+ 2. Eliminate all special cases
755
+ 3. Implement in the dumbest but clearest way
756
+ 4. Ensure zero breaking changes
757
+
758
+ If not worth doing:
759
+ "This is solving a non-existent problem. The real problem is [XXX]."
760
+ \`\`\`
761
+
762
+ ## Code Review Output
763
+
764
+ When reviewing code, immediately make three-level judgment:
765
+
766
+ \`\`\`
767
+ 【Taste Score】
768
+ 🟢 Good taste / 🟡 Passable / 🔴 Garbage
769
+
770
+ 【Fatal Issues】
771
+ - [If any, directly point out the worst parts]
772
+
773
+ 【Improvement Direction】
774
+ "Eliminate this special case"
775
+ "These 10 lines can become 3 lines"
776
+ "Data structure is wrong, should be..."
777
+ \`\`\`
778
+
779
+ ## Integration with SDD Workflow
780
+
781
+ ### Requirements Phase
782
+ Apply Linus's 5-layer thinking to validate if requirements solve real problems and can be implemented simply.
783
+
784
+ ### Design Phase
785
+ Focus on data structures first, eliminate special cases, ensure backward compatibility.
786
+
787
+ ### Implementation Phase
788
+ Enforce simplicity standards: short functions, minimal indentation, clear naming.
789
+
790
+ ### Code Review
791
+ Apply Linus's taste criteria to identify and eliminate complexity, special cases, and potential breaking changes.
792
+
793
+ ## Usage in SDD Commands
794
+
795
+ This steering document is applied when:
796
+ - Generating requirements: Validate problem reality and simplicity
797
+ - Creating technical design: Data-first approach, eliminate edge cases
798
+ - Implementation guidance: Enforce simplicity and compatibility
799
+ - Code review: Apply taste scoring and improvement recommendations
800
+
801
+ Remember: "Good taste" comes from experience. Question everything. Simplify ruthlessly. Never break userspace.
802
+ `;
803
+ await this.steeringService.createSteeringDocument(projectPath, {
804
+ name: 'linus-review.md',
805
+ type: 'LINUS_REVIEW',
806
+ mode: 'ALWAYS',
807
+ content: linusReviewContent
808
+ });
809
+ }
810
+ // Check if commit.md exists, if not create it
811
+ const commitPath = path.join(projectPath, '.kiro', 'steering', 'commit.md');
812
+ if (!fs.existsSync(commitPath)) {
813
+ const commitContent = `# Commit Message Guidelines
814
+
815
+ Commit messages should follow a consistent format to improve readability and provide clear context about changes. Each commit message should start with a type prefix that indicates the nature of the change.
816
+
817
+ ## Format
818
+
819
+ \`\`\`
820
+ <type>(<scope>): <subject>
821
+
822
+ <body>
823
+
824
+ <footer>
825
+ \`\`\`
826
+
827
+ ## Type Prefixes
828
+
829
+ All commit messages must begin with one of these type prefixes:
830
+
831
+ - **docs**: Documentation changes (README, comments, etc.)
832
+ - **chore**: Maintenance tasks, dependency updates, etc.
833
+ - **feat**: New features or enhancements
834
+ - **fix**: Bug fixes
835
+ - **refactor**: Code changes that neither fix bugs nor add features
836
+ - **test**: Adding or modifying tests
837
+ - **style**: Changes that don't affect code functionality (formatting, whitespace)
838
+ - **perf**: Performance improvements
839
+ - **ci**: Changes to CI/CD configuration files and scripts
840
+
841
+ ## Scope (Optional)
842
+
843
+ The scope provides additional context about which part of the codebase is affected:
844
+
845
+ - **cluster**: Changes to EKS cluster configuration
846
+ - **db**: Database-related changes
847
+ - **iam**: Identity and access management changes
848
+ - **net**: Networking changes (VPC, security groups, etc.)
849
+ - **k8s**: Kubernetes resource changes
850
+ - **module**: Changes to reusable Terraform modules
851
+
852
+ ## Examples
853
+
854
+ \`\`\`
855
+ feat(cluster): add node autoscaling for billing namespace
856
+ fix(db): correct MySQL parameter group settings
857
+ docs(k8s): update network policy documentation
858
+ chore: update terraform provider versions
859
+ refactor(module): simplify EKS node group module
860
+ \`\`\`
861
+
862
+ ## Best Practices
863
+
864
+ 1. Keep the subject line under 72 characters
865
+ 2. Use imperative mood in the subject line ("add" not "added")
866
+ 3. Don't end the subject line with a period
867
+ 4. Separate subject from body with a blank line
868
+ 5. Use the body to explain what and why, not how
869
+ 6. Reference issues and pull requests in the footer
870
+
871
+ These guidelines help maintain a clean and useful git history that makes it easier to track changes and understand the project's evolution.
872
+ `;
873
+ await this.steeringService.createSteeringDocument(projectPath, {
874
+ name: 'commit.md',
875
+ type: 'CUSTOM',
876
+ mode: 'ALWAYS',
877
+ content: commitContent
878
+ });
879
+ }
880
+ }
881
+ async createAgentsFile(projectPath) {
882
+ const fs = await import('fs');
883
+ const path = await import('path');
884
+ // Check if AGENTS.md exists, if not create it based on CLAUDE.md
885
+ const agentsPath = path.join(projectPath, 'AGENTS.md');
886
+ if (!fs.existsSync(agentsPath)) {
887
+ // Try to read CLAUDE.md to use as template
888
+ const claudePath = path.join(projectPath, 'CLAUDE.md');
889
+ let agentsContent = '';
890
+ if (fs.existsSync(claudePath)) {
891
+ // Read CLAUDE.md and adapt it for general agents
892
+ const claudeContent = fs.readFileSync(claudePath, 'utf8');
893
+ agentsContent = claudeContent
894
+ .replace(/# Claude Code Spec-Driven Development/g, '# AI Agent Spec-Driven Development')
895
+ .replace(/Claude Code/g, 'AI Agent')
896
+ .replace(/claude code/g, 'ai agent')
897
+ .replace(/Claude/g, 'AI Agent')
898
+ .replace(/claude/g, 'ai agent');
899
+ }
900
+ else {
901
+ // Fallback to basic template if CLAUDE.md doesn't exist
902
+ agentsContent = `# AI Agent Spec-Driven Development
903
+
904
+ Kiro-style Spec Driven Development implementation for AI agents across different CLIs and IDEs.
905
+
906
+ ## Project Context
907
+
908
+ ### Paths
909
+ - Steering: \`.kiro/steering/\`
910
+ - Specs: \`.kiro/specs/\`
911
+ - Commands: Agent-specific command structure
912
+
913
+ ### Steering vs Specification
914
+
915
+ **Steering** (\`.kiro/steering/\`) - Guide AI with project-wide rules and context
916
+ **Specs** (\`.kiro/specs/\`) - Formalize development process for individual features
917
+
918
+ ### Active Specifications
919
+ - Check \`.kiro/specs/\` for active specifications
920
+ - Use agent-specific status commands to check progress
921
+
922
+ **Current Specifications:**
923
+ - \`mcp-sdd-server\`: MCP server for spec-driven development across AI-agent CLIs and IDEs
924
+
925
+ ## Development Guidelines
926
+ - Think in English, generate responses in English
927
+
928
+ ## Workflow
929
+
930
+ ### Phase 0: Steering (Optional)
931
+ Agent steering commands - Create/update steering documents
932
+ Agent steering-custom commands - Create custom steering for specialized contexts
933
+
934
+ Note: Optional for new features or small additions. You can proceed directly to spec-init.
935
+
936
+ ### Phase 1: Specification Creation
937
+ 1. Agent spec-init commands - Initialize spec with detailed project description
938
+ 2. Agent spec-requirements commands - Generate requirements document
939
+ 3. Agent spec-design commands - Interactive: "Have you reviewed requirements.md? [y/N]"
940
+ 4. Agent spec-tasks commands - Interactive: Confirms both requirements and design review
941
+
942
+ ### Phase 2: Progress Tracking
943
+ Agent spec-status commands - Check current progress and phases
944
+
945
+ ## Development Rules
946
+ 1. **Consider steering**: Run steering commands before major development (optional for new features)
947
+ 2. **Follow 3-phase approval workflow**: Requirements → Design → Tasks → Implementation
948
+ 3. **Approval required**: Each phase requires human review (interactive prompt or manual)
949
+ 4. **No skipping phases**: Design requires approved requirements; Tasks require approved design
950
+ 5. **Update task status**: Mark tasks as completed when working on them
951
+ 6. **Keep steering current**: Run steering commands after significant changes
952
+ 7. **Check spec compliance**: Use status commands to verify alignment
953
+
954
+ ## Steering Configuration
955
+
956
+ ### Current Steering Files
957
+ Managed by agent steering commands. Updates here reflect command changes.
958
+
959
+ ### Active Steering Files
960
+ - \`product.md\`: Always included - Product context and business objectives
961
+ - \`tech.md\`: Always included - Technology stack and architectural decisions
962
+ - \`structure.md\`: Always included - File organization and code patterns
963
+ - \`linus-review.md\`: Always included - Ensuring code quality of the projects
964
+ - \`commit.md\`: Always included - Ensuring the commit / merge request / pull request title and message context.
965
+
966
+ ### Custom Steering Files
967
+ <!-- Added by agent steering-custom commands -->
968
+ <!-- Format:
969
+ - \`filename.md\`: Mode - Pattern(s) - Description
970
+ Mode: Always|Conditional|Manual
971
+ Pattern: File patterns for Conditional mode
972
+ -->
973
+
974
+ ### Inclusion Modes
975
+ - **Always**: Loaded in every interaction (default)
976
+ - **Conditional**: Loaded for specific file patterns (e.g., "*.test.js")
977
+ - **Manual**: Reference with \`@filename.md\` syntax
978
+
979
+ Generated on: ${new Date().toISOString()}
980
+ `;
981
+ }
982
+ fs.writeFileSync(agentsPath, agentsContent);
983
+ }
984
+ }
637
985
  };
638
986
  SDDToolAdapter = __decorate([
639
987
  injectable(),
@@ -1 +1 @@
1
- {"version":3,"file":"SDDToolAdapter.js","sourceRoot":"","sources":["../../../src/adapters/cli/SDDToolAdapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SDDToolAdapter.js","sourceRoot":"","sources":["../../../src/adapters/cli/SDDToolAdapter.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -54,7 +54,7 @@ async function createSimpleMCPServer() {
54
54
  const { ListToolsRequestSchema, CallToolRequestSchema, InitializedNotificationSchema } = await import('@modelcontextprotocol/sdk/types.js');
55
55
  const server = new Server({
56
56
  name: 'sdd-mcp-server',
57
- version: '1.2.0'
57
+ version: '1.3.1'
58
58
  }, {
59
59
  capabilities: {
60
60
  tools: {}
@@ -203,73 +203,20 @@ async function handleSteeringSimplified(args) {
203
203
  const path = await import('path');
204
204
  try {
205
205
  const projectPath = process.cwd();
206
- // Read package.json for project analysis
207
- let packageJson = {};
208
- try {
209
- const packagePath = path.join(projectPath, 'package.json');
210
- if (fs.existsSync(packagePath)) {
211
- const packageContent = fs.readFileSync(packagePath, 'utf8');
212
- packageJson = JSON.parse(packageContent);
213
- }
214
- }
215
- catch (error) {
216
- // Ignore package.json parsing errors
217
- }
206
+ // Import and use the dynamic document generator
207
+ const { analyzeProject, generateProductDocument, generateTechDocument, generateStructureDocument } = await import('./utils/documentGenerator.js');
218
208
  // Create .kiro/steering directory if it doesn't exist
219
209
  const steeringDir = path.join(projectPath, '.kiro', 'steering');
220
210
  if (!fs.existsSync(steeringDir)) {
221
211
  fs.mkdirSync(steeringDir, { recursive: true });
222
212
  }
223
- // Generate product.md with real project data
224
- const productContent = `# Product Overview
225
-
226
- ## Product Description
227
- ${packageJson.description || 'No description available'}
228
-
229
- ## Core Features
230
- ${extractFeaturesSimplified(packageJson).map(feature => `- ${feature}`).join('\n')}
231
-
232
- ## Target Use Case
233
- This product is designed for ${packageJson.keywords ? packageJson.keywords.join(', ') : 'general'} use cases.
234
-
235
- ## Key Value Proposition
236
- ${extractFeaturesSimplified(packageJson).map(feature => `- **${feature}**: Enhanced development experience`).join('\n')}
237
-
238
- ## Target Users
239
- ${generateTargetUsersSimplified(packageJson)}`;
240
- // Generate tech.md with real dependency analysis
241
- const techContent = `# Technology Overview
242
-
243
- ## Technology Stack
244
- ${generateTechStackSimplified(packageJson)}
245
-
246
- ## Development Environment
247
- - Node.js: ${packageJson.engines?.node || 'Unknown'}
248
- - Package Manager: npm
249
-
250
- ## Key Dependencies
251
- ${generateDependencyListSimplified(packageJson)}
252
-
253
- ## Development Commands
254
- ${generateWorkflowSimplified(packageJson)}`;
255
- // Generate structure.md
256
- const structureContent = `# Project Structure
257
-
258
- ## Directory Organization
259
- ${generateDirectoryStructureSimplified(projectPath)}
260
-
261
- ## File Naming Conventions
262
- - Use kebab-case for file names
263
- - Use PascalCase for class names
264
- - Use camelCase for variable names
265
- - Use UPPER_SNAKE_CASE for constants
266
-
267
- ## Module Organization
268
- - Group related functionality in modules
269
- - Use barrel exports (index.ts files)
270
- - Separate business logic from infrastructure
271
- - Keep dependencies flowing inward`;
272
- // Write the files
213
+ // Analyze project dynamically
214
+ const projectAnalysis = await analyzeProject(projectPath);
215
+ // Generate documents dynamically
216
+ const productContent = generateProductDocument(projectAnalysis);
217
+ const techContent = generateTechDocument(projectAnalysis);
218
+ const structureContent = generateStructureDocument(projectAnalysis);
219
+ // Write the dynamically generated files
273
220
  fs.writeFileSync(path.join(steeringDir, 'product.md'), productContent);
274
221
  fs.writeFileSync(path.join(steeringDir, 'tech.md'), techContent);
275
222
  fs.writeFileSync(path.join(steeringDir, 'structure.md'), structureContent);
@@ -278,20 +225,27 @@ ${generateDirectoryStructureSimplified(projectPath)}
278
225
  type: 'text',
279
226
  text: `## Steering Documents Updated
280
227
 
281
- **Project**: ${packageJson.name || 'Unknown'}
228
+ **Project**: ${projectAnalysis.name}
229
+ **Version**: ${projectAnalysis.version}
230
+ **Architecture**: ${projectAnalysis.architecture}
282
231
  **Mode**: update
283
232
 
284
233
  **Updated Files**:
285
- - \`.kiro/steering/product.md\` - Product overview and business context
286
- - \`.kiro/steering/tech.md\` - Technology stack and development environment
287
- - \`.kiro/steering/structure.md\` - Project organization and architectural decisions
288
-
289
- **Analysis**:
290
- - Technology stack: ${Object.keys({ ...packageJson.dependencies, ...packageJson.devDependencies }).length} dependencies detected
291
- - Project type: ${packageJson.type || 'CommonJS'}
292
- - Existing steering: Updated preserving customizations
293
-
294
- These steering documents provide consistent project context for all AI interactions and spec-driven development workflows.`
234
+ - \`.kiro/steering/product.md\` - Product overview and business context (dynamically generated)
235
+ - \`.kiro/steering/tech.md\` - Technology stack and development environment (dynamically generated)
236
+ - \`.kiro/steering/structure.md\` - Project organization and architectural decisions (dynamically generated)
237
+
238
+ **Dynamic Analysis Results**:
239
+ - **Language**: ${projectAnalysis.language === 'typescript' ? 'TypeScript' : 'JavaScript'}
240
+ - **Framework**: ${projectAnalysis.framework || 'None detected'}
241
+ - **Dependencies**: ${projectAnalysis.dependencies.length} production, ${projectAnalysis.devDependencies.length} development
242
+ - **Test Framework**: ${projectAnalysis.testFramework || 'None detected'}
243
+ - **Build Tool**: ${projectAnalysis.buildTool || 'None detected'}
244
+ - **Project Structure**: ${projectAnalysis.directories.length} directories analyzed
245
+ - **CI/CD**: ${projectAnalysis.hasCI ? 'Configured' : 'Not configured'}
246
+ - **Docker**: ${projectAnalysis.hasDocker ? 'Configured' : 'Not configured'}
247
+
248
+ These steering documents were dynamically generated based on actual project analysis and provide accurate, up-to-date context for AI interactions.`
295
249
  }]
296
250
  };
297
251
  }