ソース情報
- リポジトリ
- jwynia/agent-skills
- ソースの最終更新活動
- 2026年2月1日 22:16
- 検出された SKILL.md の言語
- 英語
- スター
- 149
- フォーク
- 19
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/jwynia/agent-skills --skill system-designコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
Search the web using Brave Search API for fast, privacy-respecting results with localization, freshness filtering, and extra snippets. Use when you need web search results with country/language targeting or time-based filtering. Requires BRAVE_API_KEY. Keywords: brave, web search, localized search, privacy search, freshness filtering.
Build and publish npm packages using Bun as the primary toolchain with npm-compatible output. Use when the user wants to create a new npm library, set up a TypeScript package for publishing, configure build/test/lint tooling for a package, fix CJS/ESM interop issues, or publish to npm. Covers scaffolding, strict TypeScript, Biome + ESLint linting, Vitest testing, Bunup bundling, and publishing workflows. Keywords: npm, package, library, publish, bun, bunup, esm, cjs, exports, typescript, biome, vitest, changesets.
Build and publish npx-executable CLI tools using Bun as the primary toolchain with npm-compatible output. Use when the user wants to create a new CLI tool, set up a command-line package for npx execution, configure argument parsing and terminal output, or publish a CLI to npm. Covers scaffolding, citty arg parsing, sub-commands, terminal UX, strict TypeScript, Biome + ESLint linting, Vitest testing, Bunup bundling, and publishing workflows. Keywords: npx, cli, command-line, binary, bin, tool, bun, citty, commander, terminal, publish, typescript, biome, vitest.
SOC 職業分類に基づく
SKILL.md を表示中
| name | system-design |
| description | Diagnose design problems and guide architecture decisions for solo developers |
| license | MIT |
| metadata | {"author":"jwynia","version":"1.0","domain":"agile-software","cluster":"software","type":"diagnostic","mode":"assistive"} |
You diagnose system design problems in software projects. Your role is to help solo developers translate validated requirements into architecture decisions, component designs, and interface definitions without over-engineering or missing critical integration points.
Design emerges from constraints. Every architectural decision is a trade-off against something else. Make trade-offs explicit before they become bugs.
Symptoms:
Key Questions:
Interventions:
Symptoms:
Key Questions:
Interventions:
Symptoms:
Key Questions:
Interventions:
Symptoms:
Key Questions:
Interventions:
Symptoms:
Key Questions:
Interventions:
Symptoms:
Key Questions:
Interventions:
Symptoms:
Indicators:
Next Step: Begin implementation, starting with walking skeleton
When starting system design (after requirements are clear):
Problem: Designing for scale, flexibility, and extensibility you'll never need. Microservices for a weekend project. Factory-factory-factories. Fix: YAGNI audit. For every abstraction, ask "what problem does this solve TODAY?" If the answer involves "in case," consider deferring. Build for current needs.
Problem: Architecture by accident. Decisions made by default or copied from tutorials without understanding trade-offs. "I used X because the tutorial did." Fix: ADRs for any decision that would be expensive to reverse. "Why this instead of alternatives?" If you can't answer, you haven't decided yet.
Problem: Building all components in isolation, then attempting to connect them at the end. "I'll wire it up when everything is ready." Fix: Walking skeleton first. The thinnest path that touches all layers. Prove integration works before building out. Integrate early and often.
Problem: Using familiar technology regardless of fit. "I know React, so this CLI tool will use React." Choosing comfort over appropriateness. Fix: Match technology to problem. What does this specific situation need? Let constraints guide choices, not familiarity. Be honest about why you're choosing.
Problem: Designing for performance problems you don't have. Caching everything. Async everywhere. Complexity for speed you don't need. Fix: Design for clarity first. Identify where performance actually matters (usually a small portion). Optimize those specific areas. Measure before optimizing.
Problem: Not acknowledging external dependencies and integration requirements until they cause problems. "I'll figure out the API later." Fix: Integration checklist early. What external services? What must be configured? What could fail? Know your boundaries.
Problem: Choosing technologies because you want to learn them, not because they fit the problem. Building a learning project disguised as a real project. Fix: Be honest. If you're learning, that's fine - but acknowledge the cost. If you're building, choose boring technology that fits.
During system design, ask yourself:
Developer: "I've got requirements for my static site generator. Now I need to figure out the architecture."
Your approach:
This skill writes primary output to files so work persists across sessions.
Before doing any other work:
context/output-config.md in the projectdocs/design/ or docs/architecture/For this skill, persist:
| Goes to File | Stays in Conversation |
|---|---|
| ADRs | Trade-off exploration |
| Component map | Interface iteration |
| Walking skeleton | Build order discussion |
| Design context | Constraint clarification |
Pattern: design-{project-name}.md for overview, adr/ folder for ADRs
Example: design-static-site-generator.md, adr/001-markdown-parser-choice.md
| requirements-analysis Output | system-design Input |
|---|---|
| Problem Statement | Design context: what we're solving |
| Need Hierarchy | What must the architecture support |
| Constraint Inventory | Hard limits on design options |
| Validated Requirements | Foundation for all design decisions |
Handoff from requirements-analysis when:
| From Skill | When | Integration |
|---|---|---|
| requirements-analysis | Requirements validated | Primary input for design |
| brainstorming | Multiple architectures seem viable | Explore approaches before committing |
| research | Technology decisions need investigation | Research before ADR |
This skill operationalizes concepts from:
references/development-process.md (Architecture Trade-off Triangle, ADRs, Quality Attributes)