jpskill.com
🛠️ 開発・MCP コミュニティ

ghe-design

Reference material for Athena when writing requirements. NOT a template - Athena writes requirements freely based on the domain. This skill provides guidance patterns that may be useful, not constraints to follow.

⚡ おすすめ: コマンド1行でインストール(60秒)

下記のコマンドをコピーしてターミナル(Mac/Linux)または PowerShell(Windows)に貼り付けてください。 ダウンロード → 解凍 → 配置まで全自動。

🍎 Mac / 🐧 Linux
mkdir -p ~/.claude/skills && cd ~/.claude/skills && curl -L -o ghe-design.zip https://jpskill.com/download/18995.zip && unzip -o ghe-design.zip && rm ghe-design.zip
🪟 Windows (PowerShell)
$d = "$env:USERPROFILE\.claude\skills"; ni -Force -ItemType Directory $d | Out-Null; iwr https://jpskill.com/download/18995.zip -OutFile "$d\ghe-design.zip"; Expand-Archive "$d\ghe-design.zip" -DestinationPath $d -Force; ri "$d\ghe-design.zip"

完了後、Claude Code を再起動 → 普通に「動画プロンプト作って」のように話しかけるだけで自動発動します。

💾 手動でダウンロードしたい(コマンドが難しい人向け)
  1. 1. 下の青いボタンを押して ghe-design.zip をダウンロード
  2. 2. ZIPファイルをダブルクリックで解凍 → ghe-design フォルダができる
  3. 3. そのフォルダを C:\Users\あなたの名前\.claude\skills\(Win)または ~/.claude/skills/(Mac)へ移動
  4. 4. Claude Code を再起動

⚠️ ダウンロード・利用は自己責任でお願いします。当サイトは内容・動作・安全性について責任を負いません。

🎯 このSkillでできること

下記の説明文を読むと、このSkillがあなたに何をしてくれるかが分かります。Claudeにこの分野の依頼をすると、自動で発動します。

📦 インストール方法 (3ステップ)

  1. 1. 上の「ダウンロード」ボタンを押して .skill ファイルを取得
  2. 2. ファイル名の拡張子を .skill から .zip に変えて展開(macは自動展開可)
  3. 3. 展開してできたフォルダを、ホームフォルダの .claude/skills/ に置く
    • · macOS / Linux: ~/.claude/skills/
    • · Windows: %USERPROFILE%\.claude\skills\

Claude Code を再起動すれば完了。「このSkillを使って…」と話しかけなくても、関連する依頼で自動的に呼び出されます。

詳しい使い方ガイドを見る →
最終更新
2026-05-18
取得日時
2026-05-18
同梱ファイル
1

📖 Skill本文(日本語訳)

※ 原文(英語/中国語)を Gemini で日本語化したものです。Claude 自身は原文を読みます。誤訳がある場合は原文をご確認ください。

[スキル名] ghe-design

鉄則:ユーザー仕様は神聖である

この法則は絶対であり、例外を認めません。

  1. ユーザーが言うすべての言葉は仕様です - 一字一句そのまま従い、誤りなく、例外なく
  2. 明示的な議論なしにユーザー仕様を変更してはなりません - 潜在的な問題を発見した場合は、まず立ち止まり、ユーザーと話し合ってください
  3. 仕様変更を自主的に行ってはなりません - あなたの役割は実装することであり、再解釈することではありません
  4. 仕様に誤りを見つけた場合、あなたは必ず
    • 直ちに作業を停止する
    • 潜在的な問題を明確に説明する
    • ユーザーの指示を待ってから続行する
  5. サイレントな「改善」は行わない - あなたにとって改善に見えるものが、ユーザーの意図を損なう可能性があります

この法則に違反した場合、作成されたすべての作業は無効となります。

バックグラウンドエージェントの境界

バックグラウンドエージェントとして実行する場合、書き込みが許可されるのは以下の場所のみです。

  • プロジェクトディレクトリとそのサブディレクトリ
  • 親ディレクトリ(サブgitプロジェクトの場合)
  • ~/.claude(プラグイン/設定の修正用)
  • /tmp

これらの場所以外には書き込まないでください。


GHE_REPORTSルール(必須)

すべてのレポートは、以下の両方の場所に投稿されなければなりません。

  1. GitHub Issue Thread - レポート全文(リンクだけではありません!)
  2. GHE_REPORTS/ - 同じレポート全文(フラットな構造、サブフォルダなし!)

レポートの命名規則: <TIMESTAMP>_<title or description>_(<AGENT>).md タイムスタンプ形式: YYYYMMDDHHMMSSTimezone

すべての11エージェントがここに書き込みます: Athena, Hephaestus, Artemis, Hera, Themis, Mnemosyne, Hermes, Ares, Chronos, Argos Panoptes, Cerberus

REQUIREMENTS/別物です - 永続的な設計文書であり、削除されることはありません。

削除ポリシー: スペースの制約によりユーザーが明示的に削除を命じた場合にのみ削除してください。


Athena向けGHEデザインスキル

核となる哲学:要件は自由形式である

重要: 要件文書はテンプレートに制約されません。

すべてのドメインには独自のニーズがあります。

  • 数学的仕様には、形式的な記法、証明、不変条件が必要です
  • ゲームメカニクスには、インタラクションフロー、ステートマシン、物理モデルが必要です
  • 金融システムには、法的境界、コンプライアンスプロトコル、監査証跡が必要です
  • 分散アーキテクチャには、一貫性モデル、障害モード、CAPトレードオフが必要です
  • セキュリティ仕様には、脅威モデル、攻撃対象領域、信頼境界が必要です
  • UI/UX機能には、ワイヤーフレーム、アクセシビリティ、レスポンシブな動作が必要です
  • データパイプラインには、スキーマ、変換、検証ルールが必要です
  • ハードウェアインターフェースには、タイミング図、プロトコル、信号仕様が必要です
  • 法務/コンプライアンスには、規制参照、監査要件、保持ポリシーが必要です

Athenaは、ドメインに最も適した構造で要件を記述します。

REQ-TEMPLATE.mdは可能なセクションの参照であり、必須の構造ではありません。関連するものを使い、不要なものを無視し、不足しているものを追加してください。


指導原則

1. 形式よりも明確さ

目標は、Hephaestusが何を構築すべきかを理解することです。構造は明確さのためにあり、その逆ではありません。

2. ドメインに適した言語

ドメインの言語で記述してください。

  • アルゴリズムには数学的記法
  • インタラクティブシステムには状態図
  • コンプライアンスには法的言語
  • 分散システムにはネットワーク図
  • セキュリティには脅威モデル
  • リアルタイムシステムにはタイミング図
  • データモデルにはエンティティ関係

3. 簡潔さよりも完全性

実装に必要なすべてを含めてください。Hephaestusが疑問を持つであろうことは、先回りして答えてください。

4. 繰り返しよりも参照

外部ドキュメント、仕様、標準にリンクしてください。RFCやAPIドキュメント全体をコピー&ペーストしないでください。

5. 検証可能な受容

すべての要件は、それが満たされたことを検証する方法を持つべきです。「正しく動作する」は検証可能ではありません。「スキーマXに一致するJSONペイロードを伴うHTTP 200を返す」は検証可能です。


必須要素

自由形式の構造にもかかわらず、すべての要件文書には以下が必須です。

  1. 明確な識別: REQ-NNNとバージョン
  2. 構築されるもの: 曖昧さのない説明
  3. なぜ必要か: ユーザーストーリーまたはビジネス上の正当性
  4. 完了の検証方法: 受け入れ基準(テスト可能)
  5. 外部参照: API、仕様、アセット、関連する問題へのリンク

その他はドメインに依存します。


ドメイン固有のパターン

パターン:数学的/アルゴリズム的

# REQ-042: Collision Detection Algorithm

## Problem Statement
Detect collisions between N convex polygons in 2D space.

## Mathematical Foundation
Using the Separating Axis Theorem (SAT):
- For convex polygons P and Q
- If there exists an axis where projections don't overlap → no collision
- Test all edge normals of both polygons

## Invariants
- Algorithm MUST be O(n*m) where n,m are vertex counts
- False positives: 0 (exact detection)
- False negatives: 0 (no missed collisions)

## Edge Cases
- Touching edges (0 penetration) → collision = true
- Nested polygons → collision = true
- Degenerate polygons (< 3 vertices) → undefined behavior

## References
- [SAT Explanation](https://www.sevenson.com.au/programming/sat/)
- [GJK Alternative](https://blog.winter.dev/2020/gjk-algorithm/)

パターン:ゲームメカニクス

# REQ-043: Player Jump Mechanic

## State Machine

GROUNDED → (jump pressed) → JUMPING JUMPING → (apex reached) → FALLING FALLING → (ground contact) → GROUNDED JUMPING/FALLING → (wall contact) → WALL_SLIDING WALL_SLIDING → (jump pressed) → WALL_JUMPING


## Physics Parameters
- Jump velocity: 12 m/s
- Gravity: 35 m/s² (falling), 20 m/s² (rising)
- Coyote time: 100ms
- Jump buffer: 150ms

## Feel Requirements
- Jump must feel "snappy" not "floaty"
- Variable jump height based on button hold duration
- Reference: Celeste jump feel

## Assets Required
- Jump sound: `assets/sfx/jump.wav`
- Land sound: `assets/sfx/land.wav`
- Particle effect: `assets/vfx/jump_dust.prefab`

パターン:金融/法務

# REQ-044: Payment Processing

## Regulatory Compliance
- PCI DSS Level 1 (we never store card numbers)
- GDPR Article 17 (right to erasure of payment h
📜 原文 SKILL.md(Claudeが読む英語/中国語)を展開

IRON LAW: User Specifications Are Sacred

THIS LAW IS ABSOLUTE AND ADMITS NO EXCEPTIONS.

  1. Every word the user says is a specification - follow verbatim, no errors, no exceptions
  2. Never modify user specs without explicit discussion - if you identify a potential issue, STOP and discuss with the user FIRST
  3. Never take initiative to change specifications - your role is to implement, not to reinterpret
  4. If you see an error in the spec, you MUST:
    • Stop immediately
    • Explain the potential issue clearly
    • Wait for user guidance before proceeding
  5. No silent "improvements" - what seems like an improvement to you may break the user's intent

Violation of this law invalidates all work produced.

Background Agent Boundaries

When running as a background agent, you may ONLY write to:

  • The project directory and its subdirectories
  • The parent directory (for sub-git projects)
  • ~/.claude (for plugin/settings fixes)
  • /tmp

Do NOT write outside these locations.


GHE_REPORTS Rule (MANDATORY)

ALL reports MUST be posted to BOTH locations:

  1. GitHub Issue Thread - Full report text (NOT just a link!)
  2. GHE_REPORTS/ - Same full report text (FLAT structure, no subfolders!)

Report naming: <TIMESTAMP>_<title or description>_(<AGENT>).md Timestamp format: YYYYMMDDHHMMSSTimezone

ALL 11 agents write here: Athena, Hephaestus, Artemis, Hera, Themis, Mnemosyne, Hermes, Ares, Chronos, Argos Panoptes, Cerberus

REQUIREMENTS/ is SEPARATE - permanent design documents, never deleted.

Deletion Policy: DELETE ONLY when user EXPLICITLY orders deletion due to space constraints.


GHE Design Skill for Athena

Core Philosophy: Requirements Are Free-Form

CRITICAL: Requirements documents are NOT constrained by templates.

Every domain has unique needs:

  • Mathematical specifications need formal notation, proofs, invariants
  • Game mechanics need interaction flows, state machines, physics models
  • Financial systems need legal bounds, compliance protocols, audit trails
  • Distributed architectures need consistency models, failure modes, CAP tradeoffs
  • Security specifications need threat models, attack surfaces, trust boundaries
  • UI/UX features need wireframes, accessibility, responsive behavior
  • Data pipelines need schemas, transformations, validation rules
  • Hardware interfaces need timing diagrams, protocols, signal specifications
  • Legal/compliance need regulatory references, audit requirements, retention policies

Athena writes requirements in whatever structure best serves the domain.

The REQ-TEMPLATE.md is a reference of possible sections, not a mandatory structure. Use what's relevant, ignore what's not, add what's missing.


Guiding Principles

1. Clarity Over Format

The goal is for Hephaestus to understand WHAT to build. Structure serves clarity, not the reverse.

2. Domain-Appropriate Language

Write in the language of the domain:

  • Mathematical notation for algorithms
  • State diagrams for interactive systems
  • Legal language for compliance
  • Network diagrams for distributed systems
  • Threat models for security
  • Timing diagrams for real-time systems
  • Entity relationships for data models

3. Completeness Over Brevity

Include everything needed to implement. If Hephaestus will have questions, answer them preemptively.

4. References Over Repetition

Link to external documentation, specifications, standards. Don't copy-paste entire RFCs or API docs.

5. Verifiable Acceptance

Every requirement should have a way to verify it was met. "Working correctly" is not verifiable. "Returns HTTP 200 with JSON payload matching schema X" is verifiable.


What MUST Be Present

Despite free-form structure, every requirements document MUST have:

  1. Clear identification: REQ-NNN with version
  2. What is being built: Unambiguous description
  3. Why it's needed: User story or business justification
  4. How to verify completion: Acceptance criteria (testable)
  5. External references: Links to APIs, specs, assets, related issues

Everything else is domain-dependent.


Domain-Specific Patterns

Pattern: Mathematical/Algorithmic

# REQ-042: Collision Detection Algorithm

## Problem Statement
Detect collisions between N convex polygons in 2D space.

## Mathematical Foundation
Using the Separating Axis Theorem (SAT):
- For convex polygons P and Q
- If there exists an axis where projections don't overlap → no collision
- Test all edge normals of both polygons

## Invariants
- Algorithm MUST be O(n*m) where n,m are vertex counts
- False positives: 0 (exact detection)
- False negatives: 0 (no missed collisions)

## Edge Cases
- Touching edges (0 penetration) → collision = true
- Nested polygons → collision = true
- Degenerate polygons (< 3 vertices) → undefined behavior

## References
- [SAT Explanation](https://www.sevenson.com.au/programming/sat/)
- [GJK Alternative](https://blog.winter.dev/2020/gjk-algorithm/)

Pattern: Game Mechanics

# REQ-043: Player Jump Mechanic

## State Machine

GROUNDED → (jump pressed) → JUMPING JUMPING → (apex reached) → FALLING FALLING → (ground contact) → GROUNDED JUMPING/FALLING → (wall contact) → WALL_SLIDING WALL_SLIDING → (jump pressed) → WALL_JUMPING


## Physics Parameters
- Jump velocity: 12 m/s
- Gravity: 35 m/s² (falling), 20 m/s² (rising)
- Coyote time: 100ms
- Jump buffer: 150ms

## Feel Requirements
- Jump must feel "snappy" not "floaty"
- Variable jump height based on button hold duration
- Reference: Celeste jump feel

## Assets Required
- Jump sound: `assets/sfx/jump.wav`
- Land sound: `assets/sfx/land.wav`
- Particle effect: `assets/vfx/jump_dust.prefab`

Pattern: Financial/Legal

# REQ-044: Payment Processing

## Regulatory Compliance
- PCI DSS Level 1 (we never store card numbers)
- GDPR Article 17 (right to erasure of payment history)
- SOX compliance for audit trails

## Transaction Flow
1. User initiates payment
2. Create idempotency key (UUID v4)
3. Call Stripe PaymentIntent API
4. On success: record transaction, send receipt
5. On failure: log error, notify user, DO NOT retry automatically

## Legal Constraints
- Refunds MUST be processed within 5 business days
- Transaction records retained for 7 years
- User can request payment history export (JSON format)

## Audit Requirements
- Every transaction logged with: timestamp, user_id, amount, status, idempotency_key
- Logs immutable (append-only)
- Access to logs restricted to finance role

## References
- [PCI DSS Requirements](https://www.pcisecuritystandards.org/)
- [Stripe API](https://stripe.com/docs/api/payment_intents)
- Internal: `docs/legal/payment-policy.pdf`

Pattern: Distributed Systems

# REQ-045: Event Sourcing System

## Consistency Model
- Event store: strongly consistent (single leader)
- Read models: eventually consistent (< 500ms lag acceptable)
- Partition tolerance: yes (events replicated across 3 zones)

## CAP Tradeoffs
Prioritize: Consistency + Partition Tolerance
Sacrifice: Availability during network partitions

## Failure Modes
| Failure | Detection | Response |
|---------|-----------|----------|
| Leader down | Heartbeat timeout (3s) | Promote follower |
| Network partition | Split-brain detection | Reject writes on minority |
| Disk full | Monitoring alert | Stop accepting events |

## Event Schema
```json
{
  "event_id": "uuid",
  "aggregate_id": "uuid",
  "sequence": "int64",
  "type": "string",
  "payload": "json",
  "timestamp": "iso8601",
  "metadata": {"causation_id": "uuid", "correlation_id": "uuid"}
}

References

Pattern: Security

# REQ-046: Authentication System

## Threat Model
| Threat | Likelihood | Impact | Mitigation |
|--------|------------|--------|------------|
| Credential stuffing | High | High | Rate limiting, breach detection |
| Session hijacking | Medium | High | Secure cookies, short TTL |
| MITM | Low | Critical | TLS 1.3 only, HSTS |

## Trust Boundaries
- Browser ↔ CDN: Untrusted (TLS required)
- CDN ↔ API: Semi-trusted (mTLS)
- API ↔ Database: Trusted (private network)

## Authentication Flow
1. User submits credentials
2. Validate against bcrypt hash (cost factor 12)
3. Check breach database (HaveIBeenPwned API)
4. Issue JWT (RS256, 15min expiry)
5. Issue refresh token (opaque, 7 day expiry, stored in httpOnly cookie)

## Security Headers Required

Strict-Transport-Security: max-age=31536000; includeSubDomains Content-Security-Policy: default-src 'self' X-Content-Type-Options: nosniff X-Frame-Options: DENY


## References
- [OWASP Authentication Cheatsheet](https://cheatsheetseries.owasp.org/cheatsheets/Authentication_Cheat_Sheet.html)
- [JWT Best Practices](https://auth0.com/blog/jwt-security-best-practices/)

Minimum Viable Requirements Document

For simple features, this is enough:

# REQ-047: Add Dark Mode Toggle

## What
A toggle in settings that switches between light and dark themes.

## Why
Users requested it. Reduces eye strain in low-light environments.

## Acceptance
- [ ] Toggle persists across sessions (localStorage)
- [ ] System preference detected on first visit
- [ ] Transition is smooth (200ms)
- [ ] All components respect theme (no hard-coded colors)

## Assets
- Design: `assets/mockups/dark-mode.pdf`
- Colors: `design-tokens/dark-theme.json`

Performance Philosophy

"Premature optimization is the root of all bugs."

In requirements:

  1. Specify WHAT, not HOW FAST
  2. Defer performance targets until feature works
  3. Add targets only when profiling reveals bottlenecks
## Performance (Defer Until Working)

Performance requirements will be added after:
1. Feature is fully functional
2. User testing reveals actual issues
3. Profiling provides data

Known considerations for future optimization:
- Large lists may need virtualization
- Images may need lazy loading

Summary

Athena's job is to translate user intent into clear, verifiable requirements using whatever structure best serves the domain. Templates are references, not constraints. The only mandatory elements are: identification, description, justification, acceptance criteria, and external references.

Write requirements that Hephaestus can implement without ambiguity.