agents-config 1.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 (90) hide show
  1. package/AGENTS.md +490 -0
  2. package/LICENSE +21 -0
  3. package/README.md +254 -0
  4. package/adapters/claude.template.md +77 -0
  5. package/adapters/codex.template.md +72 -0
  6. package/adapters/copilot.template.md +68 -0
  7. package/adapters/cursor.template.md +69 -0
  8. package/adapters/gemini.template.md +73 -0
  9. package/adapters/windsurf.template.md +81 -0
  10. package/bin/agents-init.js +699 -0
  11. package/bin/postinstall.js +28 -0
  12. package/instructions/development-standards.instructions.md +47 -0
  13. package/instructions/github-issue.instructions.md +324 -0
  14. package/instructions/github-release-notes.instructions.md +888 -0
  15. package/instructions/mui.instructions.md +50 -0
  16. package/instructions/storybook.instructions.md +55 -0
  17. package/instructions/web-interface-guidelines.instructions.md +331 -0
  18. package/package.json +56 -0
  19. package/prompts/create-pr.prompt.md +78 -0
  20. package/prompts/scaffold-component.prompt.md +57 -0
  21. package/rules/accessibility.md +36 -0
  22. package/rules/component-architecture.md +34 -0
  23. package/rules/gemini.md +547 -0
  24. package/rules/mui.md +491 -0
  25. package/rules/react-19-compiler.md +26 -0
  26. package/rules/spec-driven-development.md +36 -0
  27. package/rules/supabase.md +40 -0
  28. package/rules/tailwind-v4.md +29 -0
  29. package/rules/three-js-react.md +76 -0
  30. package/rules/web-performance.md +29 -0
  31. package/schemas/agents-project.schema.json +78 -0
  32. package/skills/accessibility-audit/SKILL.md +39 -0
  33. package/skills/integrate-gemini/SKILL.md +124 -0
  34. package/skills/scaffold-component/SKILL.md +77 -0
  35. package/skills/vercel-react-best-practices/AGENTS.md +2719 -0
  36. package/skills/vercel-react-best-practices/SKILL.md +125 -0
  37. package/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  38. package/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  39. package/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  40. package/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
  41. package/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  42. package/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
  43. package/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  44. package/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
  45. package/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  46. package/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  47. package/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  48. package/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  49. package/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  50. package/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  51. package/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  52. package/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  53. package/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  54. package/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  55. package/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  56. package/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  57. package/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  58. package/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  59. package/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  60. package/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  61. package/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  62. package/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  63. package/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  64. package/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  65. package/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  66. package/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  67. package/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  68. package/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  69. package/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  70. package/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  71. package/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  72. package/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  73. package/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  74. package/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  75. package/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  76. package/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  77. package/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  78. package/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  79. package/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  80. package/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  81. package/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  82. package/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  83. package/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  84. package/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  85. package/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  86. package/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  87. package/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  88. package/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
  89. package/skills/workflows/sdd-workflow.md +49 -0
  90. package/skills/workflows/setup-orchestration.md +18 -0
@@ -0,0 +1,28 @@
1
+ #!/usr/bin/env node
2
+
3
+ /**
4
+ * Post-install script for @anthropic-agents/config
5
+ * Displays helpful information after npm install
6
+ */
7
+
8
+ const colors = {
9
+ reset: '\x1b[0m',
10
+ bright: '\x1b[1m',
11
+ green: '\x1b[32m',
12
+ cyan: '\x1b[36m',
13
+ };
14
+
15
+ console.log(`
16
+ ${colors.bright}${colors.green}✓ agents-config installed${colors.reset}
17
+
18
+ ${colors.cyan}Quick Start:${colors.reset}
19
+ Run ${colors.bright}npx agents-init${colors.reset} to set up AI agent configuration for this project.
20
+
21
+ ${colors.cyan}What this does:${colors.reset}
22
+ • Creates adapter files for your AI coding assistants (Copilot, Claude, Cursor, etc.)
23
+ • Sets up shared guidelines for consistent, accessible, performant code
24
+ • Allows project-specific customization via .agents-project.json
25
+
26
+ ${colors.cyan}Learn more:${colors.reset}
27
+ https://github.com/ericthayer/agents-config
28
+ `);
@@ -0,0 +1,47 @@
1
+ ---
2
+ applyTo: '**'
3
+ ---
4
+ # Development Standards and Best Practices
5
+
6
+ This document outlines the standards and best practices for DevLog Application Development which uses React, TypeScript, Material UI, and follows the [Airbnb style guide](https://airbnb.io/javascript/) page.
7
+
8
+ ## Web Interface Guidelines - Development Standards and Guidelines
9
+ ALWAYS refer to the `.github/instructions/web-interface-guidelines.instructions.md` file for detailed explicit guidelines to follow when building _any_ web interface.
10
+
11
+ ## React
12
+
13
+ - **Components**:
14
+ - Use PascalCase for filenames. E.g., ReservationCard.jsx.
15
+ - Use .tsx extension for React components.
16
+ - Use the filename as the component name.
17
+ - Only include one React component per file. However, multiple Stateless, or Pure, Components are allowed per file.
18
+ - Prefer functional components and use React Hooks for state and side effects.
19
+
20
+ - **Props**:
21
+ - Always use camelCase for prop names.
22
+ - Define prop types using TypeScript interfaces.
23
+ - Always define explicit defaultProps for all non-required props.
24
+ - Consider using the Context API when passing props more than 2-3 component levels.
25
+ - Use spread props sparingly.
26
+
27
+ - **JSX/TSX**:
28
+ - Keep JSX/TSX readable and concise.
29
+ - Extract complex parts into separate functions or components.
30
+ - Proper JSX/TSX alignment follows the `react/jsx-closing-bracket-location` and `react/jsx-closing-tag-location` linting rules.
31
+
32
+ ## TypeScript
33
+
34
+ - **Types**: Always specify types. Avoid using `any`.
35
+ - **Interfaces**: Use interfaces to define object shapes, especially for component props.
36
+ - **Enums**: Use enums for sets of related constants.
37
+ - **Variables**: Use `const` and `let` over `var`.
38
+ - **Functions**: Use named function expressions instead of function declarations
39
+ - **Semicolons**: Use them
40
+
41
+ ## APCA
42
+
43
+ - Use the [APCA](https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html) standard for color contrast calculations instead of the older WCAG 2.0 method.
44
+ - Aim for an APCA contrast value of at least 60 for normal text and 45 for large text.
45
+ - Use tools like the [APCA Contrast Checker](https://toolness.github.io/apca/) to verify color contrast compliance.
46
+ - Ensure that interactive elements have sufficient contrast in all states (default, hover, active, focus, disabled).
47
+ - Document any exceptions to the APCA contrast requirements with a clear rationale.
@@ -0,0 +1,324 @@
1
+ ---
2
+ applyTo: '**/*.md, **/*.mdx'
3
+ ---
4
+
5
+ # GitHub Issue Creation Instructions
6
+
7
+ Use these instructions to create well-structured, comprehensive GitHub issues for the DevLog application.
8
+
9
+ ## Issue Structure Template
10
+
11
+ Every GitHub issue should follow this standardized structure:
12
+
13
+ ```markdown
14
+ # [Clear, Descriptive Title - No Emojis]
15
+
16
+ ## Problem Description
17
+
18
+ [2-3 paragraph overview of the issue, providing context and impact]
19
+
20
+ ## Current Behavior ❌
21
+
22
+ [Describe what's currently happening]
23
+
24
+ ### [Subsection 1]
25
+ - **Issue point**: Description
26
+ - **Issue point**: Description
27
+
28
+ ### [Subsection 2]
29
+ - Bullet points describing specific problems
30
+ - Include technical details and symptoms
31
+
32
+ ## Expected Behavior ✅
33
+
34
+ [Describe the desired outcome]
35
+
36
+ ### [Subsection 1]
37
+ - **Expected point**: Description
38
+ - **Expected point**: Description
39
+
40
+ ## Technical Context
41
+
42
+ [Provide implementation details and technical background]
43
+
44
+ ### Current Implementation Issues
45
+
46
+ 1. **[Issue Category]**:
47
+ ```typescript
48
+ // Code example showing current problematic implementation
49
+ // Include file path and line numbers as comments
50
+ ```
51
+
52
+ 2. **[Another Issue]**:
53
+ ```typescript
54
+ // More code examples
55
+ ```
56
+
57
+ ## Proposed Solution
58
+
59
+ [Detailed explanation of how to fix the issue]
60
+
61
+ ### 1. [Solution Step 1]
62
+ ```typescript
63
+ // Code example showing proposed solution
64
+ // Include comments explaining changes
65
+ ```
66
+
67
+ ### 2. [Solution Step 2]
68
+ ```typescript
69
+ // More solution code
70
+ ```
71
+
72
+ ## Testing Requirements
73
+
74
+ ### Manual Testing
75
+ - [ ] Test case 1
76
+ - [ ] Test case 2
77
+ - [ ] Test case 3
78
+
79
+ ### Visual Regression Testing
80
+ - [ ] Update Playwright snapshots
81
+ - [ ] Test in light mode
82
+ - [ ] Test in dark mode
83
+
84
+ ### Accessibility Testing
85
+ - [ ] WCAG compliance check
86
+ - [ ] Screen reader testing
87
+ - [ ] Keyboard navigation
88
+
89
+ ## Acceptance Criteria
90
+
91
+ - [ ] **Criterion 1**: Description
92
+ - [ ] **Criterion 2**: Description
93
+ - [ ] **Criterion 3**: Description
94
+ - [ ] **Documentation**: Updated examples and best practices
95
+
96
+ ## Priority
97
+
98
+ **[High/Medium/Low]** - [Brief justification]
99
+
100
+ ## Labels
101
+
102
+ `label1`, `label2`, `label3`, `component-name`, `priority-level`
103
+
104
+ ## Related Issues
105
+
106
+ - Issue/PR #123
107
+ - Related feature work
108
+ - Migration tasks
109
+
110
+ ## Additional Notes
111
+
112
+ [Any additional context, considerations, or future work]
113
+
114
+ ---
115
+
116
+ **Environment:**
117
+ - MUI v7 with colorSchemes API
118
+ - React 18.3+
119
+ - TypeScript 5+
120
+ - [Other relevant tools/versions]
121
+
122
+ **Related Files:**
123
+ - `path/to/file.ts` (lines X-Y) - Description
124
+ - `path/to/another/file.tsx` - Description
125
+ ```
126
+
127
+ ## Formatting Guidelines
128
+
129
+ ### Headings
130
+ - **H1 (`#`)**: Issue title only - NO EMOJIS
131
+ - **H2 (`##`)**: Major sections (Problem Description, Current Behavior, etc.)
132
+ - **H3 (`###`)**: Subsections within major sections
133
+
134
+ ### Emojis Usage
135
+ - **Section headers**: Use ❌ for "Current Behavior" and ✅ for "Expected Behavior" only
136
+ - **Bullet lists**: Optional emojis for emphasis (⚡, 🚀, 💾, 🎯, 🛠️, etc.)
137
+ - **Title**: NEVER use emojis in the H1 title
138
+
139
+ ### Code Blocks
140
+ - Always specify language: ```typescript```, ```tsx```, ```bash```
141
+ - Include file paths in comments: `// src/components/MyComponent.tsx`
142
+ - Include line numbers when referencing existing code: `// Line 45-60`
143
+ - Add explanatory comments: `// ❌ Wrong` or `// ✅ Correct`
144
+
145
+ ### Lists and Checkboxes
146
+ - Use `- [ ]` for unchecked items in testing and acceptance criteria
147
+ - Use `- [x]` for completed items (if updating existing issue)
148
+ - Use bullet lists (`-`) for descriptions and problem statements
149
+ - Use numbered lists (`1.`) for sequential steps
150
+
151
+ ### Emphasis
152
+ - **Bold** for key terms, component names, and important points
153
+ - `Inline code` for file paths, function names, props, and code references
154
+ - _Italic_ sparingly for slight emphasis
155
+
156
+ ## Content Guidelines
157
+
158
+ ### Problem Description
159
+ - Provide context: What component/feature is affected?
160
+ - Explain impact: How does this affect users or developers?
161
+ - Keep it concise: 2-3 paragraphs maximum
162
+
163
+ ### Current Behavior
164
+ - Be specific about symptoms
165
+ - Include visual descriptions for UI issues
166
+ - Group related issues under subsections
167
+ - Use bullet points for clarity
168
+
169
+ ### Expected Behavior
170
+ - Describe the ideal state
171
+ - Match structure to Current Behavior for easy comparison
172
+ - Include user experience improvements
173
+
174
+ ### Technical Context
175
+ - Show current implementation code
176
+ - Reference specific files and line numbers
177
+ - Explain why current approach is problematic
178
+ - Include links to MUI documentation when relevant
179
+
180
+ ### Proposed Solution
181
+ - Provide concrete code examples
182
+ - Break down into numbered steps
183
+ - Show complete implementations, not fragments
184
+ - Include comments explaining changes
185
+
186
+ ### Testing Requirements
187
+ - Cover manual testing scenarios
188
+ - Include visual regression testing needs
189
+ - Address accessibility testing
190
+ - Add integration or performance testing if relevant
191
+
192
+ ### Acceptance Criteria
193
+ - Make criteria specific and measurable
194
+ - Use checkboxes for tracking
195
+ - Include non-functional requirements (performance, accessibility)
196
+ - Always include documentation requirement
197
+
198
+ ## Issue Types
199
+
200
+ ### Bug Report
201
+ Focus on:
202
+ - What's broken
203
+ - Steps to reproduce
204
+ - Current vs expected behavior
205
+ - Impact on users
206
+
207
+ ### Enhancement Request
208
+ Focus on:
209
+ - Current limitations
210
+ - Benefits of enhancement
211
+ - Performance improvements
212
+ - Developer experience improvements
213
+
214
+ ### Refactor/Technical Debt
215
+ Focus on:
216
+ - Why current implementation is problematic
217
+ - Technical benefits of refactor
218
+ - Migration strategy
219
+ - Breaking changes
220
+
221
+ ## Priority Levels
222
+
223
+ ### High Priority
224
+ - Breaks core functionality
225
+ - Security issues
226
+ - Significant user experience problems
227
+ - Blocks other development work
228
+
229
+ ### Medium Priority
230
+ - Visual inconsistencies
231
+ - Performance improvements
232
+ - Developer experience issues
233
+ - Non-critical bugs
234
+
235
+ ### Low Priority
236
+ - Nice-to-have features
237
+ - Minor optimizations
238
+ - Documentation improvements
239
+ - Cosmetic issues
240
+
241
+ ## Label Categories
242
+
243
+ ### Type Labels
244
+ - `bug` - Something isn't working
245
+ - `enhancement` - New feature or improvement
246
+ - `documentation` - Documentation updates
247
+ - `refactor` - Code restructuring
248
+
249
+ ### Component Labels
250
+ - Component name (e.g., `CbAppHeader`, `CbButton`, `CbAlert`)
251
+ - System area (e.g., `theme-system`, `storybook`, `build-process`)
252
+
253
+ ### Priority Labels
254
+ - `high-priority` - Needs immediate attention
255
+ - `medium-priority` - Should be addressed soon
256
+ - `low-priority` - Can be deferred
257
+
258
+ ### Status Labels
259
+ - `breaking-change` - Will require version bump
260
+ - `needs-testing` - Requires additional testing
261
+ - `accessibility` - Related to a11y
262
+
263
+ ## Best Practices
264
+
265
+ 1. **Be specific**: Use concrete examples and code snippets
266
+ 2. **Reference files**: Always include file paths and line numbers
267
+ 3. **Show, don't tell**: Use code examples to illustrate problems and solutions
268
+ 4. **Think about testing**: Include comprehensive testing requirements
269
+ 5. **Consider impact**: Explain how changes affect users and developers
270
+ 6. **Link resources**: Include MUI docs, related issues, or external references
271
+ 7. **Use checkboxes**: Make acceptance criteria actionable and trackable
272
+ 8. **Be consistent**: Follow the template structure for all issues
273
+ 9. **Update environment**: Keep technology versions current
274
+ 10. **Think future**: Consider migration paths and breaking changes
275
+
276
+ ## Example Prompts for Creating Issues
277
+
278
+ ### Bug Report Prompt
279
+ ```
280
+ Create a GitHub issue for a bug in [Component Name]. The problem is [brief description].
281
+ Include:
282
+ - Current behavior with code examples from [file path]
283
+ - Expected behavior
284
+ - Technical context showing the implementation issue
285
+ - Proposed solution with code
286
+ - Testing requirements for manual, visual regression, and accessibility
287
+ - Acceptance criteria
288
+ ```
289
+
290
+ ### Enhancement Prompt
291
+ ```
292
+ Create a GitHub issue for enhancing [Feature/Component]. We need to [brief description].
293
+ Include:
294
+ - Current limitations
295
+ - Benefits of enhancement
296
+ - Technical approach with code examples
297
+ - Migration strategy if breaking changes
298
+ - Testing and acceptance criteria
299
+ ```
300
+
301
+ ### Refactor Prompt
302
+ ```
303
+ Create a GitHub issue for refactoring [System/Component] to [new approach].
304
+ Include:
305
+ - Problems with current implementation
306
+ - Proposed new architecture with code examples
307
+ - Migration plan
308
+ - Performance/DX benefits
309
+ - Comprehensive testing strategy
310
+ ```
311
+
312
+ ## Validation Checklist
313
+
314
+ Before submitting an issue, verify:
315
+ - [ ] Title is clear and descriptive (no emojis)
316
+ - [ ] All required sections are present
317
+ - [ ] Code examples include file paths
318
+ - [ ] Testing requirements are comprehensive
319
+ - [ ] Acceptance criteria are specific and measurable
320
+ - [ ] Priority level is justified
321
+ - [ ] Labels are appropriate
322
+ - [ ] Related issues/PRs are linked
323
+ - [ ] Environment details are current
324
+ - [ ] Formatting is consistent (emojis only in section headers)