implement-github-feature
Skill833 starsChanged 9 months agoApache-2.0View on GitHub
Design and implement a new feature or component from a GitHub issue. Use for net-new functionality, not bug fixes.
- Commits and pushes
In this repository5 other files it gives its agents.
- check-accessibilitySkill
- explain-codeSkill
- fix-github-issueSkill
- implement-ag-playbookSkill
- update-component-docsSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. About 0 are common, 15 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈15
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 36
If either condition fails:
- Distinctive: line 38
Ask the user to resolve before continuing
- Very specific: line 72
Read their implementations in v2/lib/src/components/
- Distinctive: line 86
If scope appears ambiguous:
- Distinctive: line 87
Ask the user before proceeding
- Distinctive: line 119
Do not create files
- Distinctive: line 120
Do not write code
- Distinctive: line 132
Add placeholder files where appropriate
- Distinctive: line 133
Add minimal README or doc stubs if needed
- Distinctive: line 134
No implementation logic yet
- Very specific: line 158
Run npm run build in v2/lib/
- Very specific: line 160
Run npm run lint if available
- Distinctive: line 185
Ensure consistency across frameworks
- Distinctive: line 197
Update or add playbooks if applicable
- Distinctive: line 200
Verify examples compile and behave correctly
- Distinctive: line 201
Keep examples minimal and educational
- Distinctive: line 213
Ensure no accidental breaking changes
- Distinctive: line 256
Do not assume intent — if unclear, ask
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Usage: /implement-github-feature ISSUE_NUMBER
Example: /implement-github-feature 281
Implement GitHub feature request $ARGUMENTS following AgnosticUI conventions, accessibility standards, and CSS-first principles.
Setup
- Read project context
- Read
.claude/PROJECT_CONTEXT.md - Understand:
- Repository structure
- Design principles
- Accessibility requirements
- Branch conventions
- Component workflows
- Read
Phase 0: Safety Checks (Required)
- Verify clean starting state
- Run
git status - Confirm:
- Working directory is clean
- Current branch is
master
- If either condition fails:
- STOP
- Ask the user to resolve before continuing
- Run
Phase 1: Branching
- Propose feature branch
- Follow convention:
issue-$ARGUMENTS/short-descriptive-name - Example:
issue-281/selection-card-group - Run:
git checkout -b issue-$ARGUMENTS/short-description - WAIT FOR USER APPROVAL of branch name before proceeding
- Follow convention:
Phase 2: Issue Analysis & Intent Extraction (No Code)
- Analyze the GitHub issue
- Fetch full details:
gh issue view $ARGUMENTS - Extract and summarize:
- Feature goals
- Non-goals / constraints
- API expectations
- Accessibility requirements
- Styling and theming expectations
- Framework implications (Lit / React / Vue)
- Fetch full details:
- Study existing related components
- Identify components this feature will compose or resemble
- Read their implementations in
v2/lib/src/components/ - Note patterns for:
- Props and attributes
- Slot usage
- CSS custom properties
::partexposure- Event dispatching
- Accessibility implementation
- This ensures consistency with established AgnosticUI conventions
- Confirm feature classification
- This is a:
- Net-new component OR
- Major enhancement (not a bug fix)
- If scope appears ambiguous:
- Ask the user before proceeding
- This is a:
Phase 3: Design Proposal (Hard Stop Before Code)
- Propose high-level design
- Identify:
- New components to be created
- Public vs internal APIs
- Required props vs optional props
- Slot usage and responsibilities
- Accessibility model (labels, roles, keyboard behavior)
- Shadow DOM strategy (
::part,::slotted)
- Explicitly call out:
- Web Component constraints
- CSS-first decisions
- What is intentionally not supported
- Identify:
- Propose file & directory layout
- Core components:
v2/lib/src/components/...
- Documentation:
v2/site/docs/components/...
- Storybook playgrounds:
- Lit
- React
- Vue
- Examples:
- Lit / React / Vue test examples
- Core components:
- WAIT FOR USER APPROVAL
- Do not create files
- Do not write code
- Proceed only after explicit approval of:
- API shape
- Accessibility approach
- Styling strategy
Phase 4: Scaffolding (Minimal, Intentional)
- Create initial scaffolding
- Create component directories
- Add placeholder files where appropriate
- Add minimal README or doc stubs if needed
- No implementation logic yet
- Show scaffolding diff
- Use
git diff - Explain what was created and why
- WAIT FOR USER APPROVAL
- Use
Phase 5: Core Implementation (Lit Web Components First)
- Implement core component(s)
- Work only in:
v2/lib/src/components/
- Follow:
- CSS-first approach
- Design token usage
- Accessibility requirements
- Ensure:
- Keyboard interaction works
- Labels and semantics are correct
- Shadow DOM parts are intentional and minimal
- Work only in:
- Verify build
- Run
npm run buildinv2/lib/ - Fix any compilation errors
- Run
npm run lintif available
- Run
- Pause for review
- Explain:
- DOM structure
- Slot behavior
::partsurface- Accessibility decisions
- WAIT FOR USER APPROVAL before proceeding
- Explain:
Phase 6: Framework Integrations
- Integrate with frameworks
- React playground
- Vue playground
- Lit playground
- APIs should feel idiomatic but map 1:1 conceptually
- Add Storybook stories
- Demonstrate:
- Core use cases
- Variants
- Accessibility states
- Ensure consistency across frameworks
- Demonstrate:
Phase 7: Documentation & Examples
- Write documentation
- Add VitePress docs:
- API
- Slots vs props
- Styling guidance
- Accessibility notes
- Update or add playbooks if applicable
- Add VitePress docs:
- Update examples
- Verify examples compile and behave correctly
- Keep examples minimal and educational
Phase 8: Final Review & Commit
- Final verification
- Review:
git diff- Accessibility behavior
- Styling hooks
- API consistency
- Ensure no accidental breaking changes
- Review:
- Prepare commit
- Stage changes:
git add . - Commit message format:
Add #$ARGUMENTS: [concise feature description] - Show commit contents
- WAIT FOR USER APPROVAL before committing
- Stage changes:
Phase 9: Handoff
- Explain next steps
- User is on branch:
issue-$ARGUMENTS/... - Review with:
git diff master - Push when ready:
git push -u origin issue-$ARGUMENTS/... - Create PR:
gh pr create --base master --head issue-$ARGUMENTS/...
- User is on branch:
Important Rules
- NEVER work directly on
master - NEVER push without explicit user permission
- ALWAYS stop at design gates
- ALWAYS prioritize accessibility over convenience
- Prefer slots for layout, props for semantics
- CSS custom properties > ::part > ::slotted
- Do not assume intent — if unclear, ask
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

