一键导入
reverse-engineer
既存コードを分析して詳細設計書を自動生成
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
既存コードを分析して詳細設計書を自動生成
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
PR作成後のCI監視、失敗時の分類と対応、自動マージまでの完全なワークフローを定義
GitHub Issue間の依存関係(Is blocking / Blocked by)を設定・取得するためのAPI操作を提供
GitHub Issueのラベルとメタデータを使用した環境状態管理。worktree/ホスト環境すべてからアクセス可能なSingle Source of Truth
PRの作成からマージ、クリーンアップ、ロールバックまでの標準フローを定義
バージョン整合性チェック→提案→承認→GitHub Release作成までの標準リリースフロー(マルチエコシステム対応)
Git worktree を作成し、並行開発用の独立したブランチ環境を構築する。プラットフォーム固有コード開発時に使用。
| name | reverse-engineer |
| description | 既存コードを分析して詳細設計書を自動生成 |
既存のソースコードを分析し、詳細設計書を自動生成するワークフロー。 設計書のないプロジェクトの追加開発や、レガシーコード理解に活用する。
$ARGUMENTS(対象モジュール/ディレクトリのパス)
設計書は必ず日本語で記述すること。 コード内のシンボル名(struct, enum, fn等)は原文のまま、説明は日本語で記載。
| 項目 | 要件 |
|---|---|
| Serena | プロジェクト設定済み(serena_activate_project()) |
| 対象コード | コンパイル/構文エラーなし |
| 権限 | docs/designs/reverse/ への書き込み権限 |
| Phase | 名称 | 内容 |
|---|---|---|
| 0 | スコープ確認 | 言語検出、対象ファイル一覧、ユーザー確認 |
| 1 | コード分析 | シンボル抽出、依存関係、テスト、コメント |
| 2 | 設計書生成 | テンプレートに従い設計書作成 |
| 3 | 品質検証 | 整合性・網羅性チェック |
| 3.5 | AIレビュー | detailed-design-reviewer skill(8点以上、オプション) |
| 3.8 | ユーザー承認 | 生成前の最終確認(approval-gate skill) |
| 4 | 出力 | ファイル生成 |
Phase規約:
workflow-phase-conventionskill を参照
| ファイル | 言語 |
|---|---|
Cargo.toml | Rust |
package.json | JavaScript/TypeScript |
pyproject.toml | Python |
go.mod | Go |
serena_list_dir(relative_path="$TARGET_PATH", recursive=True, skip_ignored_files=True)
serena_find_file(file_mask="Cargo.toml", relative_path=".")
対象パス、言語、ファイル数を提示し 1. 続行 / 2. 修正 / 3. 中断 を選択(番号選択)。
serena_get_symbols_overview(relative_path="src/xxx/mod.rs", depth=2)
serena_find_symbol(name_path_pattern="MainStruct", include_body=True)
# Rust
serena_search_for_pattern(substring_pattern="^use\\s+", relative_path="src/xxx/")
# TypeScript
serena_search_for_pattern(substring_pattern="^import\\s+", relative_path="src/xxx/")
serena_find_file(file_mask="*test*.rs", relative_path=".")
serena_get_symbols_overview(relative_path="tests/xxx_test.rs", depth=1)
# Rust: ///
serena_search_for_pattern(substring_pattern="^\\s*///", relative_path="src/xxx/")
# Python: docstring
serena_search_for_pattern(substring_pattern='"""', relative_path="src/xxx/")
テンプレート:
detailed-design-templatesskill の「リバースエンジニアリング設計書テンプレート」を使用
| チェック項目 | 確認方法 |
|---|---|
| 全公開struct/enum記載 | シンボル比較 |
| 全公開関数記載 | シンボル比較 |
| モジュール依存関係 | import解析 |
| エラー型記載 | Error enum検索 |
task(subagent_type="detailed-design-reviewer", prompt="設計書をレビュー...")
| スコア | アクション |
|---|---|
| 8点以上 | Phase 3.8へ |
| 6-7点 | 修正して再レビュー(最大3回) |
| 5点以下 | Phase 1からやり直し |
--skip-reviewフラグで省略可能
共通仕様:
approval-gateskill を参照
生成結果サマリー(抽出シンボル数、未解決事項数)を表示し確認。
| 選択肢 | アクション |
|---|---|
1 | Phase 4へ |
2 | Phase 2に戻る |
3 | キャンセル |
番号を選択してください(1-3):
| 条件 | 出力先 |
|---|---|
| 既存設計書なし | docs/designs/reverse/{module-name}.md |
| 既存設計書あり | docs/designs/reverse/{module-name}_v{N}.md |
| 条件 | アクション |
|---|---|
| 対象ファイル100件超 | サブモジュール単位での分割を提案 |
| 解析エラー | スキップして未解決事項に記録 |
| 非対応言語 | エラー終了 |
| レビュー3回失敗 | 警告マーク付与して続行 |
| Phase | エラー | 対処 |
|---|---|---|
| 0 | パス不存在 | 正しいパスを再指定 |
| 0 | 言語検出失敗 | 手動で言語指定 |
| 1 | LSP未起動 | serena_activate_project() 実行 |
| 2 | テンプレート適用エラー | Phase 1結果を確認 |
| 4 | 書き込み失敗 | 権限・容量確認 |
| 言語 | サポート |
|---|---|
| Rust | O |
| TypeScript | O |
| Python | O |
| Go | △ |
| Java | △ |
/reverse-engineer src/notification/
/reverse-engineer src/ --skip-review
| スキル/ドキュメント | 用途 |
|---|---|
detailed-design-templates skill | 設計書テンプレート |
workflow-phase-convention skill | Phase命名規約 |
approval-gate skill | ユーザー承認ゲート |
| 詳細設計ワークフロー | 新規設計時 |
| バージョン | 変更内容 |
|---|---|
| 1.3.0 | 出力言語セクション追加、日本語記述を明示化 |
| 1.2.0 | 前提条件追加、TypeScript/Python例追加 |
| 1.1.0 | Phase番号修正、--skip-review追加 |
| 1.0.0 | 初版作成 |