ワンクリックで
system-design
Produce a technical design document for a system or component
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Produce a technical design document for a system or component
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Discover team members, delegate tasks, and track progress to completion
Prepare structured meeting agendas and pre-reads from task board, artifacts, and team context
Classify, prioritize, and route incoming incidents based on severity, category, and affected components
Classify incoming requests and route to the appropriate specialist agent
How to communicate with other agents on the system. Use when you need to ask questions, share information, or coordinate.
Compare options against weighted criteria with scored matrix, sensitivity analysis, and quantified recommendation
| name | system-design |
| description | Produce a technical design document for a system or component |
Use this skill when tasked with designing a new system, component, or significant feature. The output is a design document that others (coders, reviewers) will use as a blueprint.
# Design: [System/Component Name]
**Author:** [agent name]
**Date:** [YYYY-MM-DD]
**Status:** Draft | Review | Approved
## Problem Statement
[What problem are we solving? Who has this problem? What happens if we don't solve it?]
## Constraints
- [Hard constraint 1 — e.g., must run in container with no internet]
- [Hard constraint 2 — e.g., must complete in under 30 seconds]
- [Soft constraint — e.g., prefer existing dependencies over new ones]
## Proposed Solution
### Components
| Component | Responsibility | Interface |
|-----------|---------------|-----------|
| [name] | [what it does] | [how others interact with it] |
### Data Flow
[Input] --> [Component A] --> [Component B] --> [Output] | ^ v | [Storage/State] ----------+
### API / Interface
[function/command signature] Input: [format and constraints] Output: [format and constraints] Errors: [error conditions and responses]
## Alternatives Considered
| Alternative | Pros | Cons | Why Rejected |
|-------------|------|------|--------------|
| [Option A] | [advantages] | [disadvantages] | [specific reason] |
| [Option B] | [advantages] | [disadvantages] | [specific reason] |
## Open Questions
1. [Decision that needs input from others]
2. [Uncertainty that affects the design]
## Implementation Plan
1. [First deliverable — what, who, estimate]
2. [Second deliverable]
3. [Integration and testing]
# Read the task
bash /home/shared/scripts/task.sh get "$TASK_ID" | jq -r '.description'
# Read any referenced documents
find /home/shared/ -name '*.md' -newer /tmp/session-start 2>/dev/null | while read f; do
echo "=== $f ==="
head -20 "$f"
done
# Read existing codebase for context
tree ~/workspace/ -L 2 --dirsfirst 2>/dev/null || find ~/workspace/ -maxdepth 2 -type f | head -30
Check the environment for hard constraints:
# What is available in the container?
which node python3 bash jq curl 2>/dev/null
node --version 2>/dev/null
python3 --version 2>/dev/null
# What services are running?
systemctl list-units --type=service --state=running 2>/dev/null | head -20
# What shared infrastructure exists?
ls /home/shared/scripts/ 2>/dev/null
ls /home/shared/ 2>/dev/null
# Memory/disk constraints
free -h 2>/dev/null || vm_stat 2>/dev/null
df -h / 2>/dev/null
Write the design document following the template above. For each component:
Before writing the final document, check:
# Can we implement this with available tools?
for cmd in $(echo "jq node python3 bash curl"); do
which $cmd >/dev/null 2>&1 && echo "Available: $cmd" || echo "MISSING: $cmd"
done
# Do the proposed file paths conflict with existing files?
for path in $(echo "/home/shared/proposed-file.json /home/shared/proposed-dir/"); do
[ -e "$path" ] && echo "CONFLICT: $path already exists" || echo "OK: $path is free"
done
DESIGN_FILE="/home/shared/design-$(date +%Y%m%d)-${COMPONENT_NAME}.md"
cat > "$DESIGN_FILE" <<'DESIGN'
# Design: [Component Name]
...
DESIGN
# Register as artifact
bash /home/shared/scripts/artifact.sh register \
--name "design-${COMPONENT_NAME}" \
--type "design" \
--path "$DESIGN_FILE" \
--description "Technical design for $COMPONENT_NAME"
echo "Design document written to: $DESIGN_FILE"