proagents 1.6.19 → 1.6.21

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 (143) hide show
  1. package/.claude/settings.local.json +13 -1
  2. package/.proagents/.cursorrules +25 -10
  3. package/.proagents/.windsurfrules +25 -10
  4. package/.proagents/AGENTS.md +30 -11
  5. package/.proagents/AI_INSTRUCTIONS.md +86 -30
  6. package/.proagents/BOLT.md +25 -10
  7. package/.proagents/CLAUDE.md +25 -10
  8. package/.proagents/GEMINI.md +25 -10
  9. package/.proagents/KIRO.md +25 -10
  10. package/.proagents/LOVABLE.md +25 -10
  11. package/.proagents/PROAGENTS.md +96 -343
  12. package/.proagents/REPLIT.md +25 -10
  13. package/.proagents/activity.log +1 -0
  14. package/.proagents/custom-commands.yaml +0 -1
  15. package/.proagents/docs/command-details.md +1 -2
  16. package/.proagents/getting-started/ai-training-setup.md +0 -1
  17. package/.proagents/performance/README.md +59 -0
  18. package/.proagents/performance/bundle-analysis.md +375 -0
  19. package/.proagents/performance/load-testing.md +563 -0
  20. package/.proagents/performance/runtime-metrics.md +489 -0
  21. package/.proagents/performance/web-vitals.md +425 -0
  22. package/.proagents/platforms.yaml +66 -0
  23. package/.proagents/proagents.config.yaml +0 -1
  24. package/.proagents/prompts/ai-add.md +80 -0
  25. package/.proagents/prompts/ai-list.md +41 -0
  26. package/.proagents/prompts/ai-remove.md +112 -0
  27. package/.proagents/prompts/ai-sync.md +96 -0
  28. package/.proagents/workflow-modes/entry-modes.md +1 -6
  29. package/lib/commands/ai.js +100 -48
  30. package/lib/commands/init.js +89 -22
  31. package/package.json +1 -1
  32. package/.proagents/ANTIGRAVITY.md +0 -61
  33. package/.proagents/CHATGPT.md +0 -57
  34. package/.proagents/GROQ.md +0 -57
  35. package/.proagents/api-versioning/README.md +0 -257
  36. package/.proagents/api-versioning/changelog-template.md +0 -225
  37. package/.proagents/api-versioning/deprecation-workflow.md +0 -470
  38. package/.proagents/api-versioning/versioning-strategy.md +0 -291
  39. package/.proagents/automation/README.md +0 -38
  40. package/.proagents/automation/ai-behavior-rules.md +0 -339
  41. package/.proagents/automation/ai-prompt-injection.md +0 -331
  42. package/.proagents/automation/auto-decisions.md +0 -535
  43. package/.proagents/automation/decision-defaults.yaml +0 -317
  44. package/.proagents/cache/README.md +0 -110
  45. package/.proagents/cache/analysis-metadata.json +0 -76
  46. package/.proagents/cache/conventions.json +0 -125
  47. package/.proagents/cache/dependencies.json +0 -85
  48. package/.proagents/cache/features.json +0 -115
  49. package/.proagents/cache/patterns.json +0 -105
  50. package/.proagents/cache/schemas/conventions-schema.json +0 -138
  51. package/.proagents/cache/schemas/dependencies-schema.json +0 -95
  52. package/.proagents/cache/schemas/features-schema.json +0 -104
  53. package/.proagents/cache/schemas/metadata-schema.json +0 -83
  54. package/.proagents/cache/schemas/patterns-schema.json +0 -136
  55. package/.proagents/cache/schemas/structure-schema.json +0 -72
  56. package/.proagents/cache/structure.json +0 -109
  57. package/.proagents/checklists/README.md +0 -261
  58. package/.proagents/checklists/code-quality.md +0 -137
  59. package/.proagents/checklists/code-review.md +0 -148
  60. package/.proagents/checklists/pr-checklist.md +0 -78
  61. package/.proagents/checklists/pre-deployment.md +0 -132
  62. package/.proagents/checklists/pre-implementation.md +0 -80
  63. package/.proagents/checklists/testing.md +0 -120
  64. package/.proagents/checkpoints.json +0 -13
  65. package/.proagents/cicd/README.md +0 -338
  66. package/.proagents/cicd/azure-devops.md +0 -267
  67. package/.proagents/cicd/github-actions.md +0 -375
  68. package/.proagents/cicd/gitlab-ci.md +0 -278
  69. package/.proagents/cicd/jenkins.md +0 -317
  70. package/.proagents/collaboration/README.md +0 -143
  71. package/.proagents/collaboration/roles.md +0 -248
  72. package/.proagents/collaboration/sessions.md +0 -390
  73. package/.proagents/collaboration/sync.md +0 -358
  74. package/.proagents/cost/README.md +0 -48
  75. package/.proagents/cost/cost-template.md +0 -283
  76. package/.proagents/cost/estimation-framework.md +0 -287
  77. package/.proagents/database/README.md +0 -72
  78. package/.proagents/database/examples/001-create-users.sql +0 -129
  79. package/.proagents/database/examples/002-add-preferences.sql +0 -94
  80. package/.proagents/database/examples/003-add-index.sql +0 -105
  81. package/.proagents/database/examples/004-rename-column.sql +0 -122
  82. package/.proagents/database/examples/005-add-foreign-key.sql +0 -142
  83. package/.proagents/database/examples/006-data-migration.sql +0 -196
  84. package/.proagents/database/examples/007-drop-column.sql +0 -163
  85. package/.proagents/database/examples/README.md +0 -89
  86. package/.proagents/database/migration-workflow.md +0 -478
  87. package/.proagents/database/rollback-scripts.md +0 -487
  88. package/.proagents/database/safety-checks.md +0 -447
  89. package/.proagents/git/README.md +0 -68
  90. package/.proagents/git/branch-strategy.md +0 -164
  91. package/.proagents/git/commit-conventions.md +0 -241
  92. package/.proagents/git/pr-workflow.md +0 -286
  93. package/.proagents/git/rollback-procedures.md +0 -416
  94. package/.proagents/ide-integration/README.md +0 -124
  95. package/.proagents/ide-integration/cline-config.md +0 -429
  96. package/.proagents/ide-integration/continue-config.md +0 -380
  97. package/.proagents/ide-integration/cursor-rules.md +0 -280
  98. package/.proagents/ide-integration/github-copilot.md +0 -384
  99. package/.proagents/ide-integration/windsurf-rules.md +0 -314
  100. package/.proagents/integrations/README.md +0 -97
  101. package/.proagents/integrations/pm/README.md +0 -344
  102. package/.proagents/learning/README.md +0 -136
  103. package/.proagents/learning/adaptation.md +0 -305
  104. package/.proagents/learning/data-collection.md +0 -283
  105. package/.proagents/learning/implementation-guide.md +0 -865
  106. package/.proagents/learning/reports.md +0 -306
  107. package/.proagents/mcp/README.md +0 -133
  108. package/.proagents/mcp/context-providers.md +0 -442
  109. package/.proagents/mcp/server-config.md +0 -306
  110. package/.proagents/mcp/tools-definition.md +0 -513
  111. package/.proagents/pm-integration/README.md +0 -151
  112. package/.proagents/pm-integration/asana.md +0 -346
  113. package/.proagents/pm-integration/github-issues.md +0 -308
  114. package/.proagents/pm-integration/gitlab-issues.md +0 -482
  115. package/.proagents/pm-integration/jira.md +0 -364
  116. package/.proagents/pm-integration/linear.md +0 -409
  117. package/.proagents/pm-integration/notion.md +0 -275
  118. package/.proagents/pm-integration/sync-config.md +0 -533
  119. package/.proagents/pm-integration/trello.md +0 -159
  120. package/.proagents/rules/README.md +0 -179
  121. package/.proagents/rules/custom-rules-template.yaml +0 -286
  122. package/.proagents/rules/custom-rules.md +0 -754
  123. package/.proagents/rules/validation-rules-template.yaml +0 -517
  124. package/.proagents/runbooks/README.md +0 -219
  125. package/.proagents/runbooks/dependency-vulnerability.md +0 -505
  126. package/.proagents/runbooks/incident-response.md +0 -451
  127. package/.proagents/runbooks/performance-degradation.md +0 -584
  128. package/.proagents/runbooks/production-debugging.md +0 -489
  129. package/.proagents/sprints/README.md +0 -58
  130. package/.proagents/team/README.md +0 -256
  131. package/.proagents/team/code-ownership.md +0 -306
  132. package/.proagents/team/communication-templates.md +0 -441
  133. package/.proagents/team/handoff-protocol.md +0 -380
  134. package/.proagents/team/ide-setup/README.md +0 -103
  135. package/.proagents/team/ide-setup/cursor.md +0 -276
  136. package/.proagents/team/ide-setup/jetbrains.md +0 -330
  137. package/.proagents/team/ide-setup/neovim.md +0 -640
  138. package/.proagents/team/ide-setup/vscode.md +0 -348
  139. package/.proagents/team/onboarding.md +0 -278
  140. package/.proagents/time-tracking.json +0 -19
  141. package/.proagents/troubleshooting/README.md +0 -730
  142. package/.proagents/troubleshooting/ai-issues.md +0 -601
  143. package/.proagents/troubleshooting/workflow-issues.md +0 -571
@@ -1,179 +0,0 @@
1
- # Custom Rules System
2
-
3
- Define and enforce project-specific rules.
4
-
5
- ---
6
-
7
- ## Overview
8
-
9
- The rules system allows you to define custom validation rules that are enforced during development. Rules can check:
10
-
11
- - Naming conventions
12
- - File structure
13
- - Code patterns
14
- - Security practices
15
- - Testing requirements
16
- - Performance best practices
17
- - Accessibility standards
18
-
19
- ---
20
-
21
- ## Quick Start
22
-
23
- ### 1. Create Rules File
24
-
25
- Create `proagents/rules/custom-rules.yaml`:
26
-
27
- ```yaml
28
- naming_rules:
29
- - id: "component-naming"
30
- pattern: "^[A-Z][a-zA-Z]*$"
31
- applies_to: "**/*.tsx"
32
- message: "Components must be PascalCase"
33
- severity: "error"
34
- ```
35
-
36
- ### 2. Enable Rules
37
-
38
- In `proagents.config.yaml`:
39
-
40
- ```yaml
41
- rules:
42
- enabled: true
43
- config_file: ".proagents/rules/custom-rules.yaml"
44
- fail_on_error: true
45
- ```
46
-
47
- ### 3. Run Validation
48
-
49
- ```bash
50
- pa:rules-check # Check all rules
51
- pa:rules-check --fix # Auto-fix where possible
52
- ```
53
-
54
- ---
55
-
56
- ## Rule Types
57
-
58
- ### Naming Rules
59
- Enforce naming conventions for files, variables, and functions.
60
-
61
- ```yaml
62
- naming_rules:
63
- - id: "hook-prefix"
64
- type: "naming"
65
- pattern: "^use[A-Z]"
66
- applies_to: "**/hooks/**/*.ts"
67
- message: "Hooks must start with 'use'"
68
- ```
69
-
70
- ### Structure Rules
71
- Enforce file organization and imports.
72
-
73
- ```yaml
74
- structure_rules:
75
- - id: "no-deep-imports"
76
- type: "structure"
77
- rule: "No imports from more than 2 levels deep"
78
- pattern: "from ['\"]\\.\\..*\\.\\."
79
- message: "Use path aliases for deep imports"
80
- ```
81
-
82
- ### Pattern Rules
83
- Detect or require specific code patterns.
84
-
85
- ```yaml
86
- pattern_rules:
87
- - id: "no-console"
88
- type: "pattern"
89
- pattern: "console\\.log"
90
- applies_to: "src/**/*.ts"
91
- exclude: ["**/*.test.ts"]
92
- message: "Remove console.log statements"
93
- ```
94
-
95
- ### Security Rules
96
- Enforce security best practices.
97
-
98
- ```yaml
99
- security_rules:
100
- - id: "no-eval"
101
- type: "security"
102
- pattern: "\\beval\\("
103
- message: "eval() is a security risk"
104
- severity: "error"
105
- ```
106
-
107
- ### Testing Rules
108
- Ensure adequate test coverage.
109
-
110
- ```yaml
111
- testing_rules:
112
- - id: "test-coverage"
113
- type: "coverage"
114
- minimum: 80
115
- applies_to: "src/**/*.ts"
116
- message: "Coverage must be at least 80%"
117
- ```
118
-
119
- ---
120
-
121
- ## Severity Levels
122
-
123
- | Level | Behavior |
124
- |-------|----------|
125
- | `error` | Blocks commits/builds |
126
- | `warning` | Shows warning, allows proceed |
127
- | `info` | Informational only |
128
- | `off` | Rule disabled |
129
-
130
- ---
131
-
132
- ## Configuration Options
133
-
134
- ```yaml
135
- configuration:
136
- global:
137
- fail_on_error: true
138
- fail_on_warning: false
139
- auto_fix_enabled: true
140
-
141
- overrides:
142
- - path: "src/legacy/**"
143
- rules:
144
- some-rule: "off"
145
-
146
- ignore:
147
- - "node_modules/**"
148
- - "dist/**"
149
- ```
150
-
151
- ---
152
-
153
- ## Files
154
-
155
- | File | Description |
156
- |------|-------------|
157
- | `README.md` | This file |
158
- | `custom-rules.md` | Complete custom rules documentation |
159
- | `custom-rules-template.yaml` | Full template with all rule types |
160
-
161
- ---
162
-
163
- ## Related Documentation
164
-
165
- | File | Description |
166
- |------|-------------|
167
- | `../standards/override-system.md` | Override hierarchy and configuration |
168
- | `../standards/architecture-patterns.md` | Architecture pattern definitions |
169
-
170
- ---
171
-
172
- ## Commands
173
-
174
- | Command | Description |
175
- |---------|-------------|
176
- | `pa:rules-check` | Run rule validation |
177
- | `pa:rules-list` | List all active rules |
178
- | `pa:rules-add` | Add new rule |
179
- | `pa:rules-disable [id]` | Disable a rule |
@@ -1,286 +0,0 @@
1
- # Custom Rules Template
2
- # Define project-specific rules for code validation and enforcement
3
-
4
- # =============================================================================
5
- # NAMING RULES
6
- # =============================================================================
7
- naming_rules:
8
- # Component naming
9
- - id: "component-naming"
10
- type: "naming"
11
- pattern: "^[A-Z][a-zA-Z]*$"
12
- applies_to: "**/*.tsx"
13
- exclude: ["**/*.test.tsx", "**/index.tsx"]
14
- message: "Component names must be PascalCase"
15
- severity: "error" # error | warning | info
16
-
17
- # Hook naming
18
- - id: "hook-naming"
19
- type: "naming"
20
- pattern: "^use[A-Z][a-zA-Z]*$"
21
- applies_to: "**/hooks/**/*.ts"
22
- message: "Hooks must start with 'use' prefix"
23
- severity: "error"
24
-
25
- # Service naming
26
- - id: "service-naming"
27
- type: "naming"
28
- pattern: "^[a-z][a-zA-Z]*Service$"
29
- applies_to: "**/services/**/*.ts"
30
- message: "Services should end with 'Service' suffix"
31
- severity: "warning"
32
-
33
- # Constant naming
34
- - id: "constant-naming"
35
- type: "naming"
36
- pattern: "^[A-Z][A-Z0-9_]*$"
37
- applies_to: "**/constants/**/*.ts"
38
- message: "Constants must be UPPER_SNAKE_CASE"
39
- severity: "warning"
40
-
41
- # =============================================================================
42
- # FILE STRUCTURE RULES
43
- # =============================================================================
44
- structure_rules:
45
- # Components must be in components folder
46
- - id: "component-location"
47
- type: "structure"
48
- rule: "Components (*.tsx with JSX) must be in src/components/ or src/pages/"
49
- applies_to: "**/*.tsx"
50
- allowed_paths:
51
- - "src/components/**"
52
- - "src/pages/**"
53
- - "src/features/**/components/**"
54
- message: "React components should be in designated component directories"
55
- severity: "warning"
56
-
57
- # Services must be in services folder
58
- - id: "service-location"
59
- type: "structure"
60
- rule: "Service files must be in src/services/"
61
- applies_to: "**/*Service.ts"
62
- allowed_paths:
63
- - "src/services/**"
64
- message: "Service files should be in src/services/"
65
- severity: "warning"
66
-
67
- # No business logic in components
68
- - id: "no-logic-in-components"
69
- type: "structure"
70
- rule: "Components should not import directly from services"
71
- pattern: "import.*from.*services"
72
- applies_to: "src/components/**/*.tsx"
73
- message: "Use hooks to access services, not direct imports"
74
- severity: "warning"
75
- suggestion: "Create a custom hook that wraps the service call"
76
-
77
- # =============================================================================
78
- # CODE PATTERN RULES
79
- # =============================================================================
80
- pattern_rules:
81
- # Require error boundary for pages
82
- - id: "page-error-boundary"
83
- type: "pattern"
84
- condition: "file in src/pages/**/*.tsx"
85
- requires: "ErrorBoundary wrapper or error.tsx file"
86
- message: "Page components should have error handling"
87
- severity: "warning"
88
-
89
- # No console.log in production code
90
- - id: "no-console-log"
91
- type: "pattern"
92
- pattern: "console\\.(log|debug|info)"
93
- applies_to: "src/**/*.{ts,tsx}"
94
- exclude: ["**/*.test.ts", "**/*.test.tsx"]
95
- message: "Remove console statements before committing"
96
- severity: "warning"
97
- auto_fix: false
98
-
99
- # Require loading states
100
- - id: "require-loading-state"
101
- type: "pattern"
102
- condition: "component uses useQuery or useMutation"
103
- requires: "isLoading or isPending handling"
104
- message: "Async operations should handle loading states"
105
- severity: "warning"
106
-
107
- # Require error handling for async
108
- - id: "require-error-handling"
109
- type: "pattern"
110
- condition: "async function or Promise"
111
- requires: "try-catch or .catch()"
112
- message: "Async operations should have error handling"
113
- severity: "warning"
114
-
115
- # =============================================================================
116
- # TESTING RULES
117
- # =============================================================================
118
- testing_rules:
119
- # Components must have tests
120
- - id: "component-test-required"
121
- type: "testing"
122
- rule: "Every component must have a corresponding test file"
123
- applies_to: "src/components/**/*.tsx"
124
- requires: "{filename}.test.tsx"
125
- message: "Component is missing test file"
126
- severity: "warning"
127
-
128
- # Minimum test coverage
129
- - id: "min-coverage"
130
- type: "coverage"
131
- minimum: 80
132
- applies_to: "src/**/*.{ts,tsx}"
133
- exclude: ["**/*.d.ts", "**/types/**"]
134
- message: "Code coverage must be at least 80%"
135
- severity: "error"
136
-
137
- # Test naming convention
138
- - id: "test-naming"
139
- type: "testing"
140
- rule: "Test descriptions should be descriptive"
141
- pattern: "^(should|when|given|it)"
142
- applies_to: "**/*.test.{ts,tsx}"
143
- message: "Test descriptions should start with 'should', 'when', 'given', or 'it'"
144
- severity: "info"
145
-
146
- # =============================================================================
147
- # SECURITY RULES
148
- # =============================================================================
149
- security_rules:
150
- # No hardcoded secrets
151
- - id: "no-hardcoded-secrets"
152
- type: "security"
153
- patterns:
154
- - "api[_-]?key\\s*[:=]\\s*['\"][^'\"]+['\"]"
155
- - "password\\s*[:=]\\s*['\"][^'\"]+['\"]"
156
- - "secret\\s*[:=]\\s*['\"][^'\"]+['\"]"
157
- - "token\\s*[:=]\\s*['\"][^'\"]+['\"]"
158
- applies_to: "**/*.{ts,tsx,js,jsx}"
159
- exclude: ["**/*.test.*", "**/*.example.*"]
160
- message: "Potential hardcoded secret detected"
161
- severity: "error"
162
-
163
- # No innerHTML
164
- - id: "no-innerhtml"
165
- type: "security"
166
- pattern: "innerHTML|dangerouslySetInnerHTML"
167
- applies_to: "**/*.{tsx,jsx}"
168
- message: "Avoid innerHTML to prevent XSS vulnerabilities"
169
- severity: "warning"
170
- suggestion: "Use safe alternatives or sanitize input with DOMPurify"
171
-
172
- # Validate user input
173
- - id: "validate-user-input"
174
- type: "security"
175
- condition: "handling user input (forms, URL params)"
176
- requires: "input validation (zod, yup, or manual)"
177
- message: "User input should be validated"
178
- severity: "warning"
179
-
180
- # =============================================================================
181
- # PERFORMANCE RULES
182
- # =============================================================================
183
- performance_rules:
184
- # No unnecessary re-renders
185
- - id: "use-memo-for-expensive"
186
- type: "performance"
187
- condition: "expensive computation in render"
188
- requires: "useMemo wrapper"
189
- message: "Expensive computations should be memoized"
190
- severity: "info"
191
-
192
- # Lazy load routes
193
- - id: "lazy-load-routes"
194
- type: "performance"
195
- condition: "route component import"
196
- requires: "React.lazy() wrapper"
197
- applies_to: "**/router/**/*.tsx"
198
- message: "Route components should be lazy loaded"
199
- severity: "info"
200
-
201
- # Image optimization
202
- - id: "optimized-images"
203
- type: "performance"
204
- condition: "using <img> tag"
205
- requires: "next/image or optimized image component"
206
- message: "Use optimized image components"
207
- severity: "info"
208
-
209
- # =============================================================================
210
- # ACCESSIBILITY RULES
211
- # =============================================================================
212
- accessibility_rules:
213
- # Images need alt text
214
- - id: "img-alt-required"
215
- type: "accessibility"
216
- pattern: "<img(?![^>]*alt=)"
217
- applies_to: "**/*.{tsx,jsx}"
218
- message: "Images must have alt text"
219
- severity: "warning"
220
-
221
- # Buttons need accessible names
222
- - id: "button-accessible-name"
223
- type: "accessibility"
224
- condition: "<button> or Button component"
225
- requires: "text content or aria-label"
226
- message: "Buttons must have accessible names"
227
- severity: "warning"
228
-
229
- # Form inputs need labels
230
- - id: "input-label-required"
231
- type: "accessibility"
232
- condition: "<input> element"
233
- requires: "associated <label> or aria-label"
234
- message: "Form inputs must have labels"
235
- severity: "warning"
236
-
237
- # =============================================================================
238
- # CUSTOM PROJECT RULES
239
- # =============================================================================
240
- custom_rules:
241
- # Example: Require analytics on button clicks
242
- - id: "analytics-on-buttons"
243
- type: "custom"
244
- condition: "Button component with onClick"
245
- requires: "analytics.track() call"
246
- message: "Button clicks should be tracked"
247
- severity: "info"
248
- enabled: false # Enable if using analytics
249
-
250
- # Example: Require feature flags for new features
251
- - id: "feature-flag-required"
252
- type: "custom"
253
- condition: "new feature component"
254
- requires: "feature flag wrapper"
255
- message: "New features should be behind feature flags"
256
- severity: "info"
257
- enabled: false # Enable if using feature flags
258
-
259
- # =============================================================================
260
- # RULE CONFIGURATION
261
- # =============================================================================
262
- configuration:
263
- # Global settings
264
- global:
265
- fail_on_error: true
266
- fail_on_warning: false
267
- auto_fix_enabled: true
268
-
269
- # Rule overrides by path
270
- overrides:
271
- - path: "src/legacy/**"
272
- rules:
273
- component-naming: "off"
274
- no-console-log: "warning"
275
-
276
- - path: "scripts/**"
277
- rules:
278
- no-console-log: "off"
279
-
280
- # Ignore patterns
281
- ignore:
282
- - "node_modules/**"
283
- - "dist/**"
284
- - "build/**"
285
- - ".next/**"
286
- - "coverage/**"