Skip to content

Conversation

@joe-watkins
Copy link
Collaborator

@joe-watkins joe-watkins commented Nov 4, 2025

Adds instructions for AI agents to adhere to. AGENTS.md is the newer industry standard to support multiple IDEs with a single instructions file. AI Agents will pull these instructions into every chat context.

Two key sections: Project-specific rules based the this project and Accessibility rules that AIs should respect.

https://github.com/openai/agents.md
https://code.visualstudio.com/docs/copilot/customization/custom-instructions

### Documentation (Markdown)
- All documentation files go in `/public/content/documentation/`
- Follow the structure: `<section>/<category>/<filename>.md`
- Use the provided templates: `criteria` or `how-to-test`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

the templates are output by src/scripts/createMarkdown.sh which we might want to mention since that is where the actual templates are as well

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added :)

AGENTS.md Outdated
- Follow the structure: `<section>/<category>/<filename>.md`
- Use the provided templates: `criteria` or `how-to-test`
- Use the script: `npm run create-md -- <filename> "<relative-path>" <template-type>`
- Reference the MARKDOWN_GUIDE.md for formatting standards
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we use the relative path to where this GUIDE is? Does it need that?

## Testing Requirements
- Write unit tests for all new components
- Update snapshots when component structure changes intentionally
- Run tests before committing: `npm test`
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Run linting: npm run lint and npm run lint:scss

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added :)

5. Add to navigation if needed using `npm run create-md`

### Updating Documentation
1. Never manually create markdown files - use the script
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we restate the script command and documentation here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added :)

AGENTS.md Outdated

### Updating Documentation
1. Never manually create markdown files - use the script
2. Keep examples accessible and code snippets valid
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Valid?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Rewrote this to make a bit more sense

AGENTS.md Outdated
You are an expert full-stack accessibility developer. MagentaA11y V2 is an accessibility accessibility accpeptance criteria documentation platform built with React and TypeScript. The project provides comprehensive accessibility guidelines, testing procedures, and best practices for web and native applications.

## Core Principles
1. **Accessibility First**: All code and documentation must follow WCAG guidelines and accessibility best practices
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we specify WCAG 2.2 and the WAI-ARIA version?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes! Brought in versions

- `npm run parse-md-files` - Update markdown files
- `npm test` - Run tests

## Important Notes
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should we mention the easily AI readable content.json file somewhere to learn about the project?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added :)

AGENTS.md Outdated
Avoid generating content that reflects implicit bias or outdated patterns. Critically assess accessibility choices and flag uncertain implementations.

- **Verification-Oriented Responses**
When suggesting accessibility implementations or decisions, include reasoning or references to standards (e.g., WCAG, platform guidelines). If uncertainty exists, the assistant should state this clearly.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we actually say, "always reference standards and resources used" in this case?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes! Edited


### Anti-Patterns and Mistakes to Avoid
- Using only placeholders to label inputs
- Suppressing visible focus with CSS resets or browser overrides
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

how about use Semantic HTML over ARIA roles whenever possible?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Edited :)

AGENTS.md Outdated
```
- Avoid overuse of sectioning elements and ARIA landmarks
- Don't add any ARIA attributes unless asked to, rely on web standards first
- Using generic containers when semantic elements would be more appropriate
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you need a "Don't" or "Avoid" in front of this one?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hmm or maybe it should preface the whole section?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes and Yes - reworked this

Copy link
Collaborator

@silverli silverli left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Great start!! A couple questions and comments added. I think we should get one more AI review maybe from Lawrence or Jules

@silverli silverli requested a review from MyLightIsOn December 3, 2025 21:29
AGENTS.md Outdated
```html
<button>Click me</button>
```
- Don't apply role="link" to a Link <a>
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This tag without an attribute is making the following headings look like links.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed :)

@jtweb23 jtweb23 self-requested a review December 3, 2025 23:03
@jtweb23
Copy link
Collaborator

jtweb23 commented Dec 3, 2025

Item #1) Line 252
- 4.5:1 for normal text (defined as up to and including 18.5px regular or 14pt bolded)
Checking on the 1.4.3 Contrast minimum for regular text. Did we mean to say ‘14pt` unbolded ??

@jtweb23
Copy link
Collaborator

jtweb23 commented Dec 3, 2025

Item #2) Had a content idea to consider including Tables. Maybe we could start with consideration of simple data tables versus presentation layout tables:
Tables that have structured content which must be linearized by screen readers and similar assistive technology are coded as simple data tables. Simple Data Tables
·      Column headers or Row headers in simple data tables use semantic tags.
·      Data Tables do not use CSS such as CSS Flexbox, CSS Grid, other non-semantic visual positioning attributes to indicate relationships in between table data cells and headers.
Presentation tables
·      Tables that are used for layout or presentation use role=”presentation”.

@joe-watkins
Copy link
Collaborator Author

@joe-watkins joe-watkins force-pushed the feat--add-ai-custom-instructions branch from 70a743d to 2529736 Compare December 5, 2025 22:50
@joe-watkins
Copy link
Collaborator Author

Item #1) Line 252 - 4.5:1 for normal text (defined as up to and including 18.5px regular or 14pt bolded) Checking on the 1.4.3 Contrast minimum for regular text. Did we mean to say ‘14pt` unbolded ??

@joe-watkins
Copy link
Collaborator Author

joe-watkins commented Dec 5, 2025

I've folded in all feedback!

Item #1) Line 252 - 4.5:1 for normal text (defined as up to and including 18.5px regular or 14pt bolded) Checking on the 1.4.3 Contrast minimum for regular text. Did we mean to say ‘14pt` unbolded ??

@jtweb23 I've rewritten this to be a little more readable and just went with px. pt conversions are complex. I also moved it up into it's own little section.

Item #2) Had a content idea to consider including Tables. Maybe we could start with consideration of simple data tables versus presentation layout tables: Tables that have structured content which must be linearized by screen readers and similar assistive technology are coded as simple data tables. Simple Data Tables ·      Column headers or Row headers in simple data tables use semantic tags. ·      Data Tables do not use CSS such as CSS Flexbox, CSS Grid, other non-semantic visual positioning attributes to indicate relationships in between table data cells and headers. Presentation tables ·      Tables that are used for layout or presentation use role=”presentation”.

@jtweb23 I've added Tables to the bottom of the file :) Great callout

I think we are good when everyone Resolves there feedback items if happy. We can iterate on this as we get in there and Dev with it. I think especially when it comes to some of the React specific stuff. @silverli @MyLightIsOn

ps. I was also sure to rebase so merge should be cool.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants