ai-development-guide
Applies language-agnostic and backend technical decision criteria, anti-pattern detection, debugging, and quality gates. Use when…
Records where resources outside the repository live (design source, design system, API schema, IaC source, secret store) and how design, implementation, and verification reach them. Use when work depends on an external resource, or when the user mentions design source, design
Claude Code
$ npx -y skills add shinpr/claude-code-workflows --skill external-resource-context --agent claude-code
Codex
$ npx skills add shinpr/claude-code-workflows --skill external-resource-context -a codex -y
Cursor
$ npx skills add shinpr/claude-code-workflows --skill external-resource-context -a cursor -y
Gemini CLI
$ npx skills add shinpr/claude-code-workflows --skill external-resource-context -a gemini-cli -y
GitHub Copilot
$ npx skills add shinpr/claude-code-workflows --skill external-resource-context -a github-copilot -y
OpenCode
$ npx skills add shinpr/claude-code-workflows --skill external-resource-context -a opencode -y
Windsurf
$ npx skills add shinpr/claude-code-workflows --skill external-resource-context -a windsurf -y
name: external-resource-context description: Records where resources outside the repository live (design source, design system, API schema, IaC source, secret store) and how design, implementation, and verification reach them. Use when work depends on an external resource, or when the user mentions design source, design system, API schema, IaC source, secret store, or canonical source.
Repository evidence does not contain every external resource surrounding a system. This skill captures, in a deterministic location, the **access methods** to resources outside the repository so downstream work (design, planning, implementation, review) can reach them without repeatedly rediscovering access details.
Resources covered: design origin (where the canonical visual specification lives), design system (component library and tokens), guidelines (usage docs, accessibility rules), visual verification environment (how to confirm rendering), database schema source, migration history, secret store location, API schema source (OpenAPI / proto / GraphQL SDL), mock environment, IaC source, environment configuration.
| Tier | Location | Holds | Update Frequency | |------|----------|-------|------------------| | Project | `docs/project-context/external-resources.md` | Environment-stable facts: which resources exist for this project and how to access them (URL, MCP name, file path, command) | Rare — only when the project's environment changes | | Feature | `## External Resources Used` section inside the relevant UI Spec or Design Doc | The subset of project-tier resources actually used by this feature, plus feature-specific identifiers (e.g., a specific node id within the design tool, a specific endpoint path) | Per feature |
The project tier owns environment facts. Feature-tier sections list only feature-specific identifiers (node id within the design source, specific endpoint path within the API, specific IaC module name) and reference project-tier entries by label; URLs, MCP names, and access commands remain in the project-tier file. When the environment changes, only the project-tier file is updated.
Example feature-tier entry uses the table format defined in `references/template.md`: a row with the project-tier label in the first column and the feature-specific identifier in the second column.
Before investigating the repository for an external fact, check whether it is already recorded:
1. Read `docs/project-context/external-resources.md` (if present) to learn what is available and how to access it. 2. Read the target UI Spec or Design Doc's `## External Resources Used` section for feature-specific identifiers. 3. Use the access method declared in the project tier (e.g., the named MCP, the URL, the file path) to fetch the actual resource content.
When the file is absent or the resource is unreachable, continue from governing and repository evidence. Each consumer records the limitation in its applicable output.
Capture only resources needed by the current decision. Reuse supplied access details and repository records, verify them within current authority, and ask only for missing information that prevents that decision. Follow [references/hearing.md](references/hearing.md) for evidence, questions and storage.
Use [references/template.md](references/template.md) for a compact project record. Preserve existing labels referenced by consumers; include only relevant entries with their access details and source evidence.
For feature-tier sections inside UI Spec or Design Doc, the heading text "External Resources Used" is fixed; the heading level matches the parent document's natural structure (h2 in UI Spec where it is a sibling of other top-level sections, h3 in Design Doc where it sits under Background and Context).
Claude Code can explore a codebase deeply. On non-trivial work, the harder problem is convergence.
Applies language-agnostic and backend technical decision criteria, anti-pattern detection, debugging, and quality gates. Use when…
Language-agnostic coding principles for maintainability, readability, and quality. Use when implementing features, refactoring…
Determines which of PRD, ADR, UI Spec, Design Doc, and Work Plan a change requires, and where each is stored. Use when deciding…
Applies React/TypeScript-specific technical decision criteria, anti-pattern detection, debugging, and frontend quality gates. Use…
Implementation strategy selection framework. Use when planning implementation strategy, selecting development approach, or…
Defines integration/E2E skeleton annotations, lane and file contracts, and route-parity review criteria. Use when generating or…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.