@dcyfr/ai 1.0.1 → 1.0.3

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 (155) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/README.md +19 -22
  3. package/bin/cli.js +12 -0
  4. package/bin/tui/config-wizard.js +107 -0
  5. package/bin/tui/validation-dashboard.js +123 -0
  6. package/bin/tui.js +259 -0
  7. package/dist/ai/agents/agent-loader.d.ts +131 -0
  8. package/dist/ai/agents/agent-loader.d.ts.map +1 -0
  9. package/dist/ai/agents/agent-loader.js +399 -0
  10. package/dist/ai/agents/agent-loader.js.map +1 -0
  11. package/dist/ai/agents/agent-registry.d.ts +120 -0
  12. package/dist/ai/agents/agent-registry.d.ts.map +1 -0
  13. package/dist/ai/agents/agent-registry.js +345 -0
  14. package/dist/ai/agents/agent-registry.js.map +1 -0
  15. package/dist/ai/agents/agent-router.d.ts +97 -0
  16. package/dist/ai/agents/agent-router.d.ts.map +1 -0
  17. package/dist/ai/agents/agent-router.js +375 -0
  18. package/dist/ai/agents/agent-router.js.map +1 -0
  19. package/dist/ai/agents/index.d.ts +10 -0
  20. package/dist/ai/agents/index.d.ts.map +1 -0
  21. package/dist/ai/agents/index.js +12 -0
  22. package/dist/ai/agents/index.js.map +1 -0
  23. package/dist/ai/agents/types.d.ts +264 -0
  24. package/dist/ai/agents/types.d.ts.map +1 -0
  25. package/dist/ai/agents/types.js +10 -0
  26. package/dist/ai/agents/types.js.map +1 -0
  27. package/dist/ai/agents-builtin/architecture/architecture-reviewer.d.ts +12 -0
  28. package/dist/ai/agents-builtin/architecture/architecture-reviewer.d.ts.map +1 -0
  29. package/dist/ai/agents-builtin/architecture/architecture-reviewer.js +92 -0
  30. package/dist/ai/agents-builtin/architecture/architecture-reviewer.js.map +1 -0
  31. package/dist/ai/agents-builtin/architecture/cloud-architect.d.ts +12 -0
  32. package/dist/ai/agents-builtin/architecture/cloud-architect.d.ts.map +1 -0
  33. package/dist/ai/agents-builtin/architecture/cloud-architect.js +103 -0
  34. package/dist/ai/agents-builtin/architecture/cloud-architect.js.map +1 -0
  35. package/dist/ai/agents-builtin/architecture/database-architect.d.ts +12 -0
  36. package/dist/ai/agents-builtin/architecture/database-architect.d.ts.map +1 -0
  37. package/dist/ai/agents-builtin/architecture/database-architect.js +95 -0
  38. package/dist/ai/agents-builtin/architecture/database-architect.js.map +1 -0
  39. package/dist/ai/agents-builtin/architecture/index.d.ts +11 -0
  40. package/dist/ai/agents-builtin/architecture/index.d.ts.map +1 -0
  41. package/dist/ai/agents-builtin/architecture/index.js +11 -0
  42. package/dist/ai/agents-builtin/architecture/index.js.map +1 -0
  43. package/dist/ai/agents-builtin/content/index.d.ts +9 -0
  44. package/dist/ai/agents-builtin/content/index.d.ts.map +1 -0
  45. package/dist/ai/agents-builtin/content/index.js +9 -0
  46. package/dist/ai/agents-builtin/content/index.js.map +1 -0
  47. package/dist/ai/agents-builtin/content/technical-writer.d.ts +12 -0
  48. package/dist/ai/agents-builtin/content/technical-writer.d.ts.map +1 -0
  49. package/dist/ai/agents-builtin/content/technical-writer.js +93 -0
  50. package/dist/ai/agents-builtin/content/technical-writer.js.map +1 -0
  51. package/dist/ai/agents-builtin/data/data-scientist.d.ts +12 -0
  52. package/dist/ai/agents-builtin/data/data-scientist.d.ts.map +1 -0
  53. package/dist/ai/agents-builtin/data/data-scientist.js +92 -0
  54. package/dist/ai/agents-builtin/data/data-scientist.js.map +1 -0
  55. package/dist/ai/agents-builtin/data/index.d.ts +9 -0
  56. package/dist/ai/agents-builtin/data/index.d.ts.map +1 -0
  57. package/dist/ai/agents-builtin/data/index.js +9 -0
  58. package/dist/ai/agents-builtin/data/index.js.map +1 -0
  59. package/dist/ai/agents-builtin/development/backend-architect.d.ts +12 -0
  60. package/dist/ai/agents-builtin/development/backend-architect.d.ts.map +1 -0
  61. package/dist/ai/agents-builtin/development/backend-architect.js +99 -0
  62. package/dist/ai/agents-builtin/development/backend-architect.js.map +1 -0
  63. package/dist/ai/agents-builtin/development/frontend-developer.d.ts +12 -0
  64. package/dist/ai/agents-builtin/development/frontend-developer.d.ts.map +1 -0
  65. package/dist/ai/agents-builtin/development/frontend-developer.js +106 -0
  66. package/dist/ai/agents-builtin/development/frontend-developer.js.map +1 -0
  67. package/dist/ai/agents-builtin/development/fullstack-developer.d.ts +12 -0
  68. package/dist/ai/agents-builtin/development/fullstack-developer.d.ts.map +1 -0
  69. package/dist/ai/agents-builtin/development/fullstack-developer.js +86 -0
  70. package/dist/ai/agents-builtin/development/fullstack-developer.js.map +1 -0
  71. package/dist/ai/agents-builtin/development/index.d.ts +12 -0
  72. package/dist/ai/agents-builtin/development/index.d.ts.map +1 -0
  73. package/dist/ai/agents-builtin/development/index.js +12 -0
  74. package/dist/ai/agents-builtin/development/index.js.map +1 -0
  75. package/dist/ai/agents-builtin/development/typescript-pro.d.ts +12 -0
  76. package/dist/ai/agents-builtin/development/typescript-pro.d.ts.map +1 -0
  77. package/dist/ai/agents-builtin/development/typescript-pro.js +98 -0
  78. package/dist/ai/agents-builtin/development/typescript-pro.js.map +1 -0
  79. package/dist/ai/agents-builtin/devops/devops-engineer.d.ts +12 -0
  80. package/dist/ai/agents-builtin/devops/devops-engineer.d.ts.map +1 -0
  81. package/dist/ai/agents-builtin/devops/devops-engineer.js +98 -0
  82. package/dist/ai/agents-builtin/devops/devops-engineer.js.map +1 -0
  83. package/dist/ai/agents-builtin/devops/index.d.ts +9 -0
  84. package/dist/ai/agents-builtin/devops/index.d.ts.map +1 -0
  85. package/dist/ai/agents-builtin/devops/index.js +9 -0
  86. package/dist/ai/agents-builtin/devops/index.js.map +1 -0
  87. package/dist/ai/agents-builtin/index.d.ts +36 -0
  88. package/dist/ai/agents-builtin/index.d.ts.map +1 -0
  89. package/dist/ai/agents-builtin/index.js +107 -0
  90. package/dist/ai/agents-builtin/index.js.map +1 -0
  91. package/dist/ai/agents-builtin/performance/index.d.ts +9 -0
  92. package/dist/ai/agents-builtin/performance/index.d.ts.map +1 -0
  93. package/dist/ai/agents-builtin/performance/index.js +9 -0
  94. package/dist/ai/agents-builtin/performance/index.js.map +1 -0
  95. package/dist/ai/agents-builtin/performance/performance-profiler.d.ts +12 -0
  96. package/dist/ai/agents-builtin/performance/performance-profiler.d.ts.map +1 -0
  97. package/dist/ai/agents-builtin/performance/performance-profiler.js +89 -0
  98. package/dist/ai/agents-builtin/performance/performance-profiler.js.map +1 -0
  99. package/dist/ai/agents-builtin/research/index.d.ts +9 -0
  100. package/dist/ai/agents-builtin/research/index.d.ts.map +1 -0
  101. package/dist/ai/agents-builtin/research/index.js +9 -0
  102. package/dist/ai/agents-builtin/research/index.js.map +1 -0
  103. package/dist/ai/agents-builtin/research/research-orchestrator.d.ts +12 -0
  104. package/dist/ai/agents-builtin/research/research-orchestrator.d.ts.map +1 -0
  105. package/dist/ai/agents-builtin/research/research-orchestrator.js +83 -0
  106. package/dist/ai/agents-builtin/research/research-orchestrator.js.map +1 -0
  107. package/dist/ai/agents-builtin/security/index.d.ts +9 -0
  108. package/dist/ai/agents-builtin/security/index.d.ts.map +1 -0
  109. package/dist/ai/agents-builtin/security/index.js +9 -0
  110. package/dist/ai/agents-builtin/security/index.js.map +1 -0
  111. package/dist/ai/agents-builtin/security/security-engineer.d.ts +12 -0
  112. package/dist/ai/agents-builtin/security/security-engineer.d.ts.map +1 -0
  113. package/dist/ai/agents-builtin/security/security-engineer.js +90 -0
  114. package/dist/ai/agents-builtin/security/security-engineer.js.map +1 -0
  115. package/dist/ai/agents-builtin/testing/debugger.d.ts +13 -0
  116. package/dist/ai/agents-builtin/testing/debugger.d.ts.map +1 -0
  117. package/dist/ai/agents-builtin/testing/debugger.js +89 -0
  118. package/dist/ai/agents-builtin/testing/debugger.js.map +1 -0
  119. package/dist/ai/agents-builtin/testing/index.d.ts +10 -0
  120. package/dist/ai/agents-builtin/testing/index.d.ts.map +1 -0
  121. package/dist/ai/agents-builtin/testing/index.js +10 -0
  122. package/dist/ai/agents-builtin/testing/index.js.map +1 -0
  123. package/dist/ai/agents-builtin/testing/test-engineer.d.ts +12 -0
  124. package/dist/ai/agents-builtin/testing/test-engineer.d.ts.map +1 -0
  125. package/dist/ai/agents-builtin/testing/test-engineer.js +93 -0
  126. package/dist/ai/agents-builtin/testing/test-engineer.js.map +1 -0
  127. package/dist/ai/config/loader.d.ts +19 -5
  128. package/dist/ai/config/loader.d.ts.map +1 -1
  129. package/dist/ai/config/loader.js +53 -18
  130. package/dist/ai/config/loader.js.map +1 -1
  131. package/dist/ai/config/schema.d.ts +600 -8
  132. package/dist/ai/config/schema.d.ts.map +1 -1
  133. package/dist/ai/config/schema.js +156 -0
  134. package/dist/ai/config/schema.js.map +1 -1
  135. package/dist/ai/index.d.ts +4 -1
  136. package/dist/ai/index.d.ts.map +1 -1
  137. package/dist/ai/index.js +35 -1
  138. package/dist/ai/index.js.map +1 -1
  139. package/dist/ai/mcp/index.d.ts +8 -0
  140. package/dist/ai/mcp/index.d.ts.map +1 -0
  141. package/dist/ai/mcp/index.js +8 -0
  142. package/dist/ai/mcp/index.js.map +1 -0
  143. package/dist/ai/mcp/mcp-registry.d.ts +127 -0
  144. package/dist/ai/mcp/mcp-registry.d.ts.map +1 -0
  145. package/dist/ai/mcp/mcp-registry.js +355 -0
  146. package/dist/ai/mcp/mcp-registry.js.map +1 -0
  147. package/dist/ai/mcp/types.d.ts +126 -0
  148. package/dist/ai/mcp/types.d.ts.map +1 -0
  149. package/dist/ai/mcp/types.js +9 -0
  150. package/dist/ai/mcp/types.js.map +1 -0
  151. package/dist/ai/utils/storage.d.ts +6 -1
  152. package/dist/ai/utils/storage.d.ts.map +1 -1
  153. package/dist/ai/utils/storage.js +57 -22
  154. package/dist/ai/utils/storage.js.map +1 -1
  155. package/package.json +24 -8
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Security Engineer Agent
3
+ *
4
+ * Security specialist for vulnerability assessment, secure coding, and security architecture.
5
+ * Use for security reviews, vulnerability fixes, and implementing security best practices.
6
+ *
7
+ * @module @dcyfr/ai/agents-builtin/security/security-engineer
8
+ */
9
+ export const securityEngineer = {
10
+ manifest: {
11
+ name: 'security-engineer',
12
+ version: '1.0.0',
13
+ description: 'Security specialist for vulnerability assessment, secure coding, and security architecture. Use for security audits, implementing authentication, and fixing security vulnerabilities.',
14
+ category: 'security',
15
+ tier: 'public',
16
+ model: 'opus',
17
+ permissionMode: 'acceptEdits',
18
+ tools: ['Read', 'Write', 'Edit', 'Bash'],
19
+ delegatesTo: ['api-security-audit'],
20
+ tags: ['security', 'owasp', 'authentication', 'encryption', 'vulnerability', 'audit'],
21
+ },
22
+ systemPrompt: `You are a security engineering specialist focused on building secure systems and identifying vulnerabilities.
23
+
24
+ ## Security Expertise
25
+
26
+ ### Application Security
27
+ - **OWASP Top 10**: Common vulnerabilities and mitigations
28
+ - **Input Validation**: Sanitization and validation patterns
29
+ - **Output Encoding**: XSS prevention through proper encoding
30
+ - **SQL Injection**: Parameterized queries and ORM safety
31
+
32
+ ### Authentication & Authorization
33
+ - **Authentication Patterns**: JWT, OAuth 2.0, OIDC, SAML
34
+ - **Session Management**: Secure session handling
35
+ - **Access Control**: RBAC, ABAC implementation
36
+ - **MFA Implementation**: TOTP, WebAuthn, SMS backup
37
+
38
+ ### Data Protection
39
+ - **Encryption at Rest**: Database and file encryption
40
+ - **Encryption in Transit**: TLS configuration
41
+ - **Key Management**: Secure key storage and rotation
42
+ - **PII Handling**: GDPR/CCPA compliance patterns
43
+
44
+ ### Security Operations
45
+ - **Logging & Monitoring**: Security event detection
46
+ - **Incident Response**: Breach handling procedures
47
+ - **Vulnerability Scanning**: SAST, DAST, dependency scanning
48
+ - **Penetration Testing**: Common attack vectors
49
+
50
+ ## Security Principles
51
+
52
+ 1. **Defense in Depth**: Multiple layers of security
53
+ 2. **Least Privilege**: Minimal required permissions
54
+ 3. **Fail Secure**: Safe defaults on failure
55
+ 4. **Security by Design**: Build security in from the start
56
+ 5. **Zero Trust**: Verify explicitly, never trust implicitly`,
57
+ instructions: `## Security Implementation Guidelines
58
+
59
+ ### Secure Coding Practices
60
+ - Always validate and sanitize user input
61
+ - Use parameterized queries for database operations
62
+ - Encode output based on context (HTML, URL, JavaScript)
63
+ - Implement proper error handling without information disclosure
64
+
65
+ ### Authentication Implementation
66
+ \`\`\`typescript
67
+ // Secure password hashing
68
+ const hashedPassword = await bcrypt.hash(password, 12);
69
+
70
+ // Secure token generation
71
+ const token = jwt.sign(payload, secret, {
72
+ expiresIn: '1h',
73
+ algorithm: 'RS256'
74
+ });
75
+ \`\`\`
76
+
77
+ ### Security Headers
78
+ - Content-Security-Policy: Prevent XSS
79
+ - X-Content-Type-Options: nosniff
80
+ - X-Frame-Options: DENY
81
+ - Strict-Transport-Security: HTTPS enforcement
82
+
83
+ ### Dependency Security
84
+ - Regular dependency audits (npm audit)
85
+ - Automated vulnerability scanning in CI
86
+ - Version pinning for reproducible builds
87
+ - Supply chain security verification`,
88
+ };
89
+ export default securityEngineer;
90
+ //# sourceMappingURL=security-engineer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"security-engineer.js","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/security/security-engineer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,CAAC,MAAM,gBAAgB,GAAU;IACrC,QAAQ,EAAE;QACR,IAAI,EAAE,mBAAmB;QACzB,OAAO,EAAE,OAAO;QAChB,WAAW,EACT,wLAAwL;QAC1L,QAAQ,EAAE,UAAU;QACpB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,MAAM;QACb,cAAc,EAAE,aAAa;QAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QACxC,WAAW,EAAE,CAAC,oBAAoB,CAAC;QACnC,IAAI,EAAE,CAAC,UAAU,EAAE,OAAO,EAAE,gBAAgB,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,CAAC;KACtF;IAED,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6DAkC6C;IAE3D,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qCA8BqB;CACpC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Debugger Agent
3
+ *
4
+ * Debugging specialist for identifying and fixing issues.
5
+ * Use for bug investigation, error analysis, and troubleshooting.
6
+ *
7
+ * @module @dcyfr/ai/agents-builtin/testing/debugger
8
+ */
9
+ import type { Agent } from '../../agents/types';
10
+ export declare const debugger_: Agent;
11
+ export { debugger_ as debugger };
12
+ export default debugger_;
13
+ //# sourceMappingURL=debugger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debugger.d.ts","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/testing/debugger.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,eAAO,MAAM,SAAS,EAAE,KAgFvB,CAAC;AAEF,OAAO,EAAE,SAAS,IAAI,QAAQ,EAAE,CAAC;AACjC,eAAe,SAAS,CAAC"}
@@ -0,0 +1,89 @@
1
+ /**
2
+ * Debugger Agent
3
+ *
4
+ * Debugging specialist for identifying and fixing issues.
5
+ * Use for bug investigation, error analysis, and troubleshooting.
6
+ *
7
+ * @module @dcyfr/ai/agents-builtin/testing/debugger
8
+ */
9
+ export const debugger_ = {
10
+ manifest: {
11
+ name: 'debugger',
12
+ version: '1.0.0',
13
+ description: 'Debugging specialist for identifying and fixing issues. Use for bug investigation, error analysis, stack trace interpretation, and troubleshooting.',
14
+ category: 'testing',
15
+ tier: 'public',
16
+ model: 'sonnet',
17
+ permissionMode: 'acceptEdits',
18
+ tools: ['Read', 'Write', 'Edit', 'Bash', 'Grep'],
19
+ delegatesTo: ['test-engineer'],
20
+ tags: ['debugging', 'troubleshooting', 'errors', 'bugs', 'investigation'],
21
+ },
22
+ systemPrompt: `You are a debugging specialist focused on identifying and resolving software issues.
23
+
24
+ ## Debugging Expertise
25
+
26
+ ### Error Analysis
27
+ - **Stack Traces**: Reading and interpreting error stacks
28
+ - **Error Types**: Runtime, compile-time, logic errors
29
+ - **Root Cause Analysis**: Finding the source of issues
30
+ - **Reproduction**: Creating minimal reproduction cases
31
+
32
+ ### Debugging Tools
33
+ - **Browser DevTools**: Console, debugger, network
34
+ - **Node.js Debugging**: --inspect, debugger statement
35
+ - **Logging**: Strategic log placement and analysis
36
+ - **Profiling**: Memory and CPU profiling
37
+
38
+ ### Common Issues
39
+ - **Null/Undefined**: Defensive coding patterns
40
+ - **Async Errors**: Promise rejection handling
41
+ - **State Issues**: Race conditions, stale state
42
+ - **Memory Leaks**: Detection and prevention
43
+
44
+ ### Investigation Process
45
+ 1. Reproduce the issue consistently
46
+ 2. Gather relevant logs and errors
47
+ 3. Isolate the problem area
48
+ 4. Form and test hypotheses
49
+ 5. Implement and verify fix
50
+
51
+ ## Best Practices
52
+
53
+ 1. **Reproduce First**: Confirm the issue before fixing
54
+ 2. **Binary Search**: Narrow down problem location
55
+ 3. **Read the Error**: Error messages often contain clues
56
+ 4. **Check Recent Changes**: Git bisect for regressions
57
+ 5. **Minimal Reproduction**: Simplify to isolate the issue`,
58
+ instructions: `## Debugging Guidelines
59
+
60
+ ### Investigation Steps
61
+ 1. Read the full error message and stack trace
62
+ 2. Identify the file and line where error occurs
63
+ 3. Trace the data flow leading to the error
64
+ 4. Check for recent related changes
65
+ 5. Test hypotheses with minimal changes
66
+
67
+ ### Common Patterns
68
+ \`\`\`typescript
69
+ // Null check debugging
70
+ console.log('Value:', value, 'Type:', typeof value);
71
+
72
+ // Async debugging
73
+ try {
74
+ const result = await asyncOperation();
75
+ console.log('Success:', result);
76
+ } catch (error) {
77
+ console.error('Failed:', error.message, error.stack);
78
+ }
79
+ \`\`\`
80
+
81
+ ### Fix Verification
82
+ - Write a test that fails before the fix
83
+ - Confirm the fix resolves the issue
84
+ - Check for regressions
85
+ - Document the root cause`,
86
+ };
87
+ export { debugger_ as debugger };
88
+ export default debugger_;
89
+ //# sourceMappingURL=debugger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"debugger.js","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/testing/debugger.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,CAAC,MAAM,SAAS,GAAU;IAC9B,QAAQ,EAAE;QACR,IAAI,EAAE,UAAU;QAChB,OAAO,EAAE,OAAO;QAChB,WAAW,EACT,qJAAqJ;QACvJ,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,cAAc,EAAE,aAAa;QAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;QAChD,WAAW,EAAE,CAAC,eAAe,CAAC;QAC9B,IAAI,EAAE,CAAC,WAAW,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,eAAe,CAAC;KAC1E;IAED,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2DAmC2C;IAEzD,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;0BA2BU;CACzB,CAAC;AAEF,OAAO,EAAE,SAAS,IAAI,QAAQ,EAAE,CAAC;AACjC,eAAe,SAAS,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Testing Agents
3
+ *
4
+ * Agents specialized in testing, debugging, and quality assurance.
5
+ *
6
+ * @module @dcyfr/ai/agents-builtin/testing
7
+ */
8
+ export { testEngineer } from './test-engineer';
9
+ export { debugger } from './debugger';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/testing/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,10 @@
1
+ /**
2
+ * Testing Agents
3
+ *
4
+ * Agents specialized in testing, debugging, and quality assurance.
5
+ *
6
+ * @module @dcyfr/ai/agents-builtin/testing
7
+ */
8
+ export { testEngineer } from './test-engineer';
9
+ export { debugger } from './debugger';
10
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/testing/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Test Engineer Agent
3
+ *
4
+ * Testing specialist for comprehensive test coverage and quality assurance.
5
+ * Use for test implementation, test strategy design, and quality validation.
6
+ *
7
+ * @module @dcyfr/ai/agents-builtin/testing/test-engineer
8
+ */
9
+ import type { Agent } from '../../agents/types';
10
+ export declare const testEngineer: Agent;
11
+ export default testEngineer;
12
+ //# sourceMappingURL=test-engineer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-engineer.d.ts","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/testing/test-engineer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,eAAO,MAAM,YAAY,EAAE,KAqF1B,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * Test Engineer Agent
3
+ *
4
+ * Testing specialist for comprehensive test coverage and quality assurance.
5
+ * Use for test implementation, test strategy design, and quality validation.
6
+ *
7
+ * @module @dcyfr/ai/agents-builtin/testing/test-engineer
8
+ */
9
+ export const testEngineer = {
10
+ manifest: {
11
+ name: 'test-engineer',
12
+ version: '1.0.0',
13
+ description: 'Testing specialist for comprehensive test coverage and quality assurance. Use for implementing unit tests, integration tests, E2E tests, and test strategy design.',
14
+ category: 'testing',
15
+ tier: 'public',
16
+ model: 'sonnet',
17
+ permissionMode: 'acceptEdits',
18
+ tools: ['Read', 'Write', 'Edit', 'Bash'],
19
+ delegatesTo: ['debugger', 'error-detective'],
20
+ tags: ['testing', 'jest', 'vitest', 'playwright', 'coverage', 'qa', 'tdd'],
21
+ },
22
+ systemPrompt: `You are a test engineering specialist focused on ensuring software quality through comprehensive testing strategies.
23
+
24
+ ## Testing Expertise
25
+
26
+ ### Unit Testing
27
+ - **Jest/Vitest**: Modern JavaScript testing frameworks
28
+ - **React Testing Library**: Component testing best practices
29
+ - **Mock Strategies**: Proper isolation with mocks, stubs, and spies
30
+ - **Coverage Analysis**: Line, branch, and function coverage metrics
31
+
32
+ ### Integration Testing
33
+ - **API Testing**: Supertest for HTTP endpoint validation
34
+ - **Database Testing**: Test fixtures and transaction rollbacks
35
+ - **Service Integration**: Testing service interactions
36
+ - **Contract Testing**: Pact for API contract verification
37
+
38
+ ### End-to-End Testing
39
+ - **Playwright**: Cross-browser E2E automation
40
+ - **Cypress**: Real-time browser testing
41
+ - **Visual Regression**: Screenshot comparison testing
42
+ - **Performance Testing**: Lighthouse and Web Vitals
43
+
44
+ ### Testing Patterns
45
+ - **Test Pyramid**: Proper balance of unit/integration/E2E
46
+ - **TDD/BDD**: Test-driven and behavior-driven development
47
+ - **Mocking Strategies**: When to mock vs. use real dependencies
48
+ - **Test Data Management**: Factories and fixtures
49
+
50
+ ## Best Practices
51
+
52
+ 1. **Isolation**: Each test should be independent and repeatable
53
+ 2. **Clarity**: Test names should describe the expected behavior
54
+ 3. **Speed**: Unit tests should be fast; slow tests should be E2E
55
+ 4. **Maintenance**: Keep tests maintainable and refactor with code
56
+ 5. **Coverage**: Aim for meaningful coverage, not 100% metrics`,
57
+ instructions: `## Test Implementation Guidelines
58
+
59
+ ### Unit Test Structure
60
+ \`\`\`typescript
61
+ describe('ComponentName', () => {
62
+ beforeEach(() => {
63
+ // Setup
64
+ });
65
+
66
+ it('should describe expected behavior', () => {
67
+ // Arrange
68
+ // Act
69
+ // Assert
70
+ });
71
+ });
72
+ \`\`\`
73
+
74
+ ### Mock Best Practices
75
+ - Mock at the boundary (API calls, external services)
76
+ - Avoid mocking what you don't own when possible
77
+ - Use dependency injection for easier mocking
78
+ - Reset mocks between tests
79
+
80
+ ### Coverage Goals
81
+ - Unit tests: 80%+ line coverage
82
+ - Critical paths: 100% coverage
83
+ - Integration tests for all API endpoints
84
+ - E2E tests for critical user journeys
85
+
86
+ ### Performance Testing
87
+ - Establish baseline metrics
88
+ - Test under realistic load conditions
89
+ - Monitor memory leaks and bundle size
90
+ - Automated performance budgets`,
91
+ };
92
+ export default testEngineer;
93
+ //# sourceMappingURL=test-engineer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"test-engineer.js","sourceRoot":"","sources":["../../../../packages/ai/agents-builtin/testing/test-engineer.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,MAAM,CAAC,MAAM,YAAY,GAAU;IACjC,QAAQ,EAAE;QACR,IAAI,EAAE,eAAe;QACrB,OAAO,EAAE,OAAO;QAChB,WAAW,EACT,oKAAoK;QACtK,QAAQ,EAAE,SAAS;QACnB,IAAI,EAAE,QAAQ;QACd,KAAK,EAAE,QAAQ;QACf,cAAc,EAAE,aAAa;QAC7B,KAAK,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC;QACxC,WAAW,EAAE,CAAC,UAAU,EAAE,iBAAiB,CAAC;QAC5C,IAAI,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC;KAC3E;IAED,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+DAkC+C;IAE7D,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;gCAiCgB;CAC/B,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -5,6 +5,9 @@
5
5
  * 1. Framework defaults (from schema.ts)
6
6
  * 2. Project config (.dcyfr.yaml, .dcyfr.json, package.json)
7
7
  * 3. User overrides (environment variables, CLI flags)
8
+ *
9
+ * In browser environments, only defaults and user-provided overrides are used.
10
+ * File-based configuration loading requires Node.js.
8
11
  */
9
12
  import { type FrameworkConfig } from './schema.js';
10
13
  /**
@@ -13,24 +16,32 @@ import { type FrameworkConfig } from './schema.js';
13
16
  export interface LoaderOptions {
14
17
  /**
15
18
  * Project root directory (default: process.cwd())
19
+ * Ignored in browser environments.
16
20
  */
17
21
  projectRoot?: string;
18
22
  /**
19
23
  * Override configuration file path
24
+ * Ignored in browser environments.
20
25
  */
21
26
  configFile?: string;
22
27
  /**
23
28
  * Enable environment variable overrides
29
+ * Only works in Node.js environments.
24
30
  */
25
31
  enableEnvOverrides?: boolean;
26
32
  /**
27
33
  * Enable package.json config section
34
+ * Ignored in browser environments.
28
35
  */
29
36
  enablePackageJson?: boolean;
30
37
  /**
31
38
  * Validation mode
32
39
  */
33
40
  validate?: boolean;
41
+ /**
42
+ * Direct configuration overrides (works in both browser and Node.js)
43
+ */
44
+ overrides?: Partial<FrameworkConfig>;
34
45
  }
35
46
  /**
36
47
  * Configuration loader with three-layer merge
@@ -44,19 +55,19 @@ export declare class ConfigLoader {
44
55
  */
45
56
  load(): Promise<FrameworkConfig>;
46
57
  /**
47
- * Load project configuration from files
58
+ * Load project configuration from files (Node.js only)
48
59
  */
49
60
  private loadProjectConfig;
50
61
  /**
51
- * Load configuration from a specific file
62
+ * Load configuration from a specific file (Node.js only)
52
63
  */
53
64
  private loadConfigFile;
54
65
  /**
55
- * Load configuration from package.json
66
+ * Load configuration from package.json (Node.js only)
56
67
  */
57
68
  private loadPackageJsonConfig;
58
69
  /**
59
- * Load user overrides from environment variables
70
+ * Load user overrides from environment variables (Node.js only)
60
71
  */
61
72
  private loadUserOverrides;
62
73
  /**
@@ -80,12 +91,15 @@ export declare class ConfigLoader {
80
91
  */
81
92
  validate(config: unknown): FrameworkConfig;
82
93
  /**
83
- * Get configuration file path (if exists)
94
+ * Get configuration file path (if exists) - Node.js only
84
95
  */
85
96
  getConfigFilePath(): Promise<string | null>;
86
97
  }
87
98
  /**
88
99
  * Convenience function to load configuration
100
+ *
101
+ * In browser environments, returns default configuration merged with any
102
+ * provided overrides. File-based configuration is only loaded in Node.js.
89
103
  */
90
104
  export declare function loadConfig(options?: LoaderOptions): Promise<FrameworkConfig>;
91
105
  //# sourceMappingURL=loader.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../packages/ai/config/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,EAAyC,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAmB1F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;OAEG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAgB;gBAEnB,OAAO,GAAE,aAAkB;IAUvC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAqBtC;;OAEG;YACW,iBAAiB;IAgC/B;;OAEG;YACW,cAAc;IAkB5B;;OAEG;YACW,qBAAqB;IAuBnC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IAsBzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAwBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,SAAS;IAqBjB;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe;IAU1C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAelD;AAED;;GAEG;AACH,wBAAsB,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAGlF"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../../packages/ai/config/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAyC,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AA0B1F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAE7B;;;OAGG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC,eAAe,CAAC,CAAC;CACtC;AAED;;GAEG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAgB;gBAEnB,OAAO,GAAE,aAAkB;IAWvC;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,eAAe,CAAC;IAsBtC;;OAEG;YACW,iBAAiB;IAwC/B;;OAEG;YACW,cAAc;IAwB5B;;OAEG;YACW,qBAAqB;IA+BnC;;OAEG;IACH,OAAO,CAAC,iBAAiB;IA0BzB;;OAEG;IACH,OAAO,CAAC,aAAa;IAwBrB;;OAEG;IACH,OAAO,CAAC,cAAc;IAetB;;OAEG;IACH,OAAO,CAAC,SAAS;IAqBjB;;OAEG;IACH,OAAO,CAAC,aAAa;IASrB;;OAEG;IACH,QAAQ,CAAC,MAAM,EAAE,OAAO,GAAG,eAAe;IAU1C;;OAEG;IACG,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAsBlD;AAED;;;;;GAKG;AACH,wBAAsB,UAAU,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC,CAGlF"}
@@ -5,12 +5,17 @@
5
5
  * 1. Framework defaults (from schema.ts)
6
6
  * 2. Project config (.dcyfr.yaml, .dcyfr.json, package.json)
7
7
  * 3. User overrides (environment variables, CLI flags)
8
+ *
9
+ * In browser environments, only defaults and user-provided overrides are used.
10
+ * File-based configuration loading requires Node.js.
8
11
  */
9
- import { readFile } from 'fs/promises';
10
- import { existsSync } from 'fs';
11
- import { parse as parseYaml } from 'yaml';
12
- import { join } from 'path';
13
12
  import { FrameworkConfigSchema, DEFAULT_CONFIG } from './schema.js';
13
+ /**
14
+ * Check if running in browser environment
15
+ */
16
+ const isBrowser = typeof globalThis !== 'undefined' &&
17
+ typeof globalThis.window !== 'undefined' &&
18
+ typeof globalThis.window.document !== 'undefined';
14
19
  /**
15
20
  * Configuration file names to search for (in priority order)
16
21
  */
@@ -33,10 +38,11 @@ export class ConfigLoader {
33
38
  projectRoot;
34
39
  options;
35
40
  constructor(options = {}) {
36
- this.projectRoot = options.projectRoot || process.cwd();
41
+ // In browser, projectRoot is not meaningful
42
+ this.projectRoot = isBrowser ? '' : (options.projectRoot || (typeof process !== 'undefined' ? process.cwd() : ''));
37
43
  this.options = {
38
- enableEnvOverrides: true,
39
- enablePackageJson: true,
44
+ enableEnvOverrides: !isBrowser,
45
+ enablePackageJson: !isBrowser,
40
46
  validate: true,
41
47
  ...options,
42
48
  };
@@ -47,12 +53,13 @@ export class ConfigLoader {
47
53
  async load() {
48
54
  // Layer 1: Framework defaults
49
55
  const defaults = { ...DEFAULT_CONFIG };
50
- // Layer 2: Project configuration
51
- const projectConfig = await this.loadProjectConfig();
52
- // Layer 3: User overrides
53
- const userOverrides = this.loadUserOverrides();
56
+ // Layer 2: Project configuration (Node.js only)
57
+ const projectConfig = isBrowser ? {} : await this.loadProjectConfig();
58
+ // Layer 3: User overrides (environment variables in Node.js, or direct overrides)
59
+ const envOverrides = isBrowser ? {} : this.loadUserOverrides();
60
+ const directOverrides = this.options.overrides || {};
54
61
  // Merge all layers (deep merge)
55
- const merged = this.deepMerge(defaults, projectConfig, userOverrides);
62
+ const merged = this.deepMerge(defaults, projectConfig, envOverrides, directOverrides);
56
63
  // Validate final configuration
57
64
  if (this.options.validate) {
58
65
  return this.validate(merged);
@@ -60,9 +67,15 @@ export class ConfigLoader {
60
67
  return merged;
61
68
  }
62
69
  /**
63
- * Load project configuration from files
70
+ * Load project configuration from files (Node.js only)
64
71
  */
65
72
  async loadProjectConfig() {
73
+ if (isBrowser) {
74
+ return {};
75
+ }
76
+ // Dynamic imports for Node.js modules
77
+ const { existsSync } = await import('fs');
78
+ const { join } = await import('path');
66
79
  // Try custom config file first
67
80
  if (this.options.configFile) {
68
81
  const customPath = join(this.projectRoot, this.options.configFile);
@@ -91,15 +104,20 @@ export class ConfigLoader {
91
104
  return {};
92
105
  }
93
106
  /**
94
- * Load configuration from a specific file
107
+ * Load configuration from a specific file (Node.js only)
95
108
  */
96
109
  async loadConfigFile(filepath) {
110
+ if (isBrowser) {
111
+ return {};
112
+ }
97
113
  try {
114
+ const { readFile } = await import('fs/promises');
98
115
  const content = await readFile(filepath, 'utf-8');
99
116
  if (filepath.endsWith('.json')) {
100
117
  return JSON.parse(content);
101
118
  }
102
119
  if (filepath.endsWith('.yaml') || filepath.endsWith('.yml')) {
120
+ const { parse: parseYaml } = await import('yaml');
103
121
  return parseYaml(content);
104
122
  }
105
123
  throw new Error(`Unsupported config file format: ${filepath}`);
@@ -109,9 +127,15 @@ export class ConfigLoader {
109
127
  }
110
128
  }
111
129
  /**
112
- * Load configuration from package.json
130
+ * Load configuration from package.json (Node.js only)
113
131
  */
114
132
  async loadPackageJsonConfig() {
133
+ if (isBrowser) {
134
+ return null;
135
+ }
136
+ const { existsSync } = await import('fs');
137
+ const { readFile } = await import('fs/promises');
138
+ const { join } = await import('path');
115
139
  const pkgPath = join(this.projectRoot, 'package.json');
116
140
  if (!existsSync(pkgPath)) {
117
141
  return null;
@@ -131,10 +155,13 @@ export class ConfigLoader {
131
155
  }
132
156
  }
133
157
  /**
134
- * Load user overrides from environment variables
158
+ * Load user overrides from environment variables (Node.js only)
135
159
  */
136
160
  loadUserOverrides() {
137
- if (!this.options.enableEnvOverrides) {
161
+ if (isBrowser || !this.options.enableEnvOverrides) {
162
+ return {};
163
+ }
164
+ if (typeof process === 'undefined' || !process.env) {
138
165
  return {};
139
166
  }
140
167
  const overrides = {};
@@ -233,9 +260,14 @@ export class ConfigLoader {
233
260
  }
234
261
  }
235
262
  /**
236
- * Get configuration file path (if exists)
263
+ * Get configuration file path (if exists) - Node.js only
237
264
  */
238
265
  async getConfigFilePath() {
266
+ if (isBrowser) {
267
+ return null;
268
+ }
269
+ const { existsSync } = await import('fs');
270
+ const { join } = await import('path');
239
271
  if (this.options.configFile) {
240
272
  const customPath = join(this.projectRoot, this.options.configFile);
241
273
  return existsSync(customPath) ? customPath : null;
@@ -251,6 +283,9 @@ export class ConfigLoader {
251
283
  }
252
284
  /**
253
285
  * Convenience function to load configuration
286
+ *
287
+ * In browser environments, returns default configuration merged with any
288
+ * provided overrides. File-based configuration is only loaded in Node.js.
254
289
  */
255
290
  export async function loadConfig(options) {
256
291
  const loader = new ConfigLoader(options);
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../packages/ai/config/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../../packages/ai/config/loader.ts"],"names":[],"mappings":"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"}