Agent skill
system-design
Guide architectural design decisions for software systems. Use this skill when designing new systems, evaluating architecture trade-offs, or creating technical design documents. Helps produce clear, well-structured design artifacts including component diagrams, data flow, and decision records.
Install this agent skill to your Project
npx add-skill https://github.com/s-hiraoku/synapse-a2a/tree/main/plugins/synapse-a2a/skills/system-design
SKILL.md
System Design
Guide architectural decisions and produce structured design artifacts.
When to Use
- Designing a new system or major feature from scratch
- Evaluating trade-offs between architectural approaches
- Creating Architecture Decision Records (ADRs)
- Reviewing existing architecture for scalability, reliability, or maintainability concerns
- Decomposing a monolith or planning a migration
Workflow
Step 1: Clarify Requirements
Before designing, gather:
- Functional requirements - What must the system do?
- Non-functional requirements - Performance, availability, security, cost constraints
- Scope boundaries - What is explicitly out of scope?
- Existing constraints - Current tech stack, team skills, timeline
Ask the user to clarify any ambiguous requirements before proceeding.
Step 2: Identify Components
Break the system into components:
- Data stores - What data exists? How is it accessed?
- Services / modules - What are the logical units of work?
- Interfaces - How do components communicate? (API, events, shared DB, files)
- External dependencies - Third-party services, APIs, infrastructure
Step 3: Evaluate Alternatives
For each significant decision, document at least 2 options:
| Criterion | Option A | Option B |
|---|---|---|
| Complexity | ... | ... |
| Scalability | ... | ... |
| Operational cost | ... | ... |
| Team familiarity | ... | ... |
Recommend one option with clear reasoning.
Step 4: Produce Design Artifact
Output a structured design document:
# Design: <Title>
## Context
[Problem statement and motivation]
## Requirements
- Functional: ...
- Non-functional: ...
## Architecture
[Component diagram or description]
## Key Decisions
| Decision | Choice | Rationale |
|----------|--------|-----------|
| ... | ... | ... |
## Data Model
[Schema or entity relationships]
## API Surface
[Key endpoints or interfaces]
## Risks & Mitigations
| Risk | Impact | Mitigation |
|------|--------|------------|
| ... | ... | ... |
## Open Questions
- ...
Step 5: Review Checklist
Before finalizing, verify:
- Single responsibility per component
- No circular dependencies between modules
- Failure modes identified and handled
- Data consistency model is explicit (strong vs eventual)
- Security boundaries are defined
- Observability points (logging, metrics, tracing) are planned
Principles
- Start simple - Add complexity only when requirements demand it
- Make trade-offs explicit - Every choice has a cost; document it
- Design for change - Interfaces should be stable; implementations should be replaceable
- Separate concerns - Data, logic, and presentation should not be entangled
- Fail gracefully - Design for partial failures, not just the happy path
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
task-planner
Guide for decomposing large tasks into a structured plan with dependency chains, managing priorities, and distributing work across agents. Outputs plan cards or delegation messages as the team contract; TodoList for personal micro-steps.
react-performance
Comprehensive React and Next.js performance optimization guide. Covers waterfall elimination, bundle size reduction, server-side optimization, re-render prevention, and rendering performance. Use when building, reviewing, or optimizing React/Next.js applications for speed.
release
Update version in pyproject.toml, plugin.json, and add changelog entry. This skill should be used when the user wants to bump the version number and update CHANGELOG.md. Triggered by /release or /version commands.
api-design
Guide API design for REST, GraphQL, gRPC, and CLI interfaces. Use this skill when designing new APIs, reviewing existing API contracts, or establishing API conventions for a project. Produces consistent, well-documented API specifications.
pr-guardian
Continuously monitor a GitHub PR for merge conflicts, CI failures, and CodeRabbit review comments, then automatically fix any issues found. Polls every 5 minutes and loops until every check is green. Use this skill whenever a PR has just been created or code has been pushed to a PR branch — it should be the default follow-up action after any PR creation or push. Also trigger on: "watch this PR", "guard this PR", "monitor CI", "keep fixing until green", "PRを監視して", "CIが通るまで 直して", /pr-guardian. When a PostToolUse hook reports that a push or PR creation just happened, proactively invoke this skill to start monitoring without waiting for the user to ask.
post-impl2
Workflow: Test workflow with non-existent agent target. . Triggered by /post-impl2 command.
Didn't find tool you were looking for?