musubix 1.1.15 → 1.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.github/prompts/sdd-review.prompt.md +155 -0
- package/.github/prompts/sdd-security.prompt.md +228 -0
- package/.github/prompts/sdd-test.prompt.md +230 -0
- package/AGENTS.md +54 -11
- package/README.ja.md +68 -10
- package/README.md +67 -9
- package/docs/API-REFERENCE.md +128 -2
- package/docs/INSTALL-GUIDE.ja.md +20 -3
- package/docs/INSTALL-GUIDE.md +20 -3
- package/docs/MUSUBI-enhancement_roadmap_20260105.md +651 -0
- package/docs/SwarmCoding.md +1284 -0
- package/docs/USER-GUIDE.ja.md +115 -6
- package/docs/USER-GUIDE.md +115 -6
- package/docs/evolution-from-musubi-to-musubix.md +336 -25
- package/docs/getting-started-with-sdd.md +1602 -0
- package/package.json +9 -4
- package/scripts/generate-quality-gate-report.ts +106 -0
- package/steering/product.ja.md +2 -2
- package/steering/project.yml +1 -1
- package/steering/structure.ja.md +2 -2
- package/steering/tech.ja.md +7 -6
|
@@ -21,7 +21,7 @@ AIコーディング支援ツールは急速に進化しています。本記事
|
|
|
21
21
|
|
|
22
22
|
# TL;DR
|
|
23
23
|
|
|
24
|
-
> **最新バージョン**: v1.
|
|
24
|
+
> **最新バージョン**: v1.3.0 | **62ドメイン対応** | **243コンポーネント** | **752テスト** | **17ベストプラクティス**
|
|
25
25
|
|
|
26
26
|
| 項目 | MUSUBI | MUSUBIX |
|
|
27
27
|
|------|--------|---------|
|
|
@@ -54,7 +54,7 @@ AIコーディング支援ツールは急速に進化しています。本記事
|
|
|
54
54
|
|
|
55
55
|
### 対応AIエージェント
|
|
56
56
|
|
|
57
|
-
MUSUBIは以下の7つの主要AI
|
|
57
|
+
MUSUBIは以下の7つの主要AIコーディングエージェントで動作します。
|
|
58
58
|
|
|
59
59
|
| エージェント | 特徴 |
|
|
60
60
|
|-------------|------|
|
|
@@ -68,9 +68,9 @@ MUSUBIは以下の7つの主要AIコーディングエージェントで動作
|
|
|
68
68
|
|
|
69
69
|
### Claude Code Agent Skills
|
|
70
70
|
|
|
71
|
-
MUSUBIXは**Claude Code
|
|
71
|
+
MUSUBIXは**GitHub Copilot**と**Claude Code**の両方のAgent Skillsに対応しています。v1.1.13から、`.github/skills/`と`.claude/skills/`の両方にスキルをコピーします。
|
|
72
72
|
|
|
73
|
-
現在、**9
|
|
73
|
+
現在、**9つのスキル**が利用可能です。
|
|
74
74
|
|
|
75
75
|
| スキル名 | 説明 |
|
|
76
76
|
|---------|------|
|
|
@@ -86,6 +86,7 @@ MUSUBIXは**Claude Code Agent Skills**に対応しています。`.github/skills
|
|
|
86
86
|
|
|
87
87
|
スキルファイルの配置:
|
|
88
88
|
```
|
|
89
|
+
# GitHub Copilot用
|
|
89
90
|
.github/skills/
|
|
90
91
|
├── musubix-sdd-workflow/SKILL.md # コアワークフロー
|
|
91
92
|
├── musubix-ears-validation/SKILL.md # 要件検証
|
|
@@ -96,6 +97,14 @@ MUSUBIXは**Claude Code Agent Skills**に対応しています。`.github/skills
|
|
|
96
97
|
├── musubix-adr-generation/SKILL.md # ADR生成
|
|
97
98
|
├── musubix-best-practices/SKILL.md # ベストプラクティス
|
|
98
99
|
└── musubix-domain-inference/SKILL.md # ドメイン推論
|
|
100
|
+
|
|
101
|
+
# Claude Code用 (同一内容のコピー)
|
|
102
|
+
.claude/skills/
|
|
103
|
+
└── (同様の構造)
|
|
104
|
+
|
|
105
|
+
# AIエージェントガイド
|
|
106
|
+
AGENTS.md # GitHub Copilot用
|
|
107
|
+
CLAUDE.md # Claude Code用 (v1.1.14+)
|
|
99
108
|
```
|
|
100
109
|
|
|
101
110
|
## 1.2 主な特徴
|
|
@@ -333,11 +342,15 @@ flowchart TB
|
|
|
333
342
|
|
|
334
343
|
```mermaid
|
|
335
344
|
flowchart TB
|
|
336
|
-
subgraph MUSUBIX["MUSUBIX System v1.0
|
|
337
|
-
subgraph Packages["
|
|
338
|
-
Core["@nahisaho/musubix-core<br/>
|
|
339
|
-
MCP["@nahisaho/musubix-mcp-server<br/>
|
|
345
|
+
subgraph MUSUBIX["MUSUBIX System v1.3.0"]
|
|
346
|
+
subgraph Packages["パッケージ構成(7パッケージ)"]
|
|
347
|
+
Core["@nahisaho/musubix-core<br/>224コンポーネント | 62ドメイン"]
|
|
348
|
+
MCP["@nahisaho/musubix-mcp-server<br/>16ツール, 3プロンプト"]
|
|
340
349
|
YATA_Client["@nahisaho/musubix-yata-client"]
|
|
350
|
+
PatternMCP["@nahisaho/musubix-pattern-mcp<br/>パターン学習"]
|
|
351
|
+
OntologyMCP["@nahisaho/musubix-ontology-mcp<br/>N3Store推論"]
|
|
352
|
+
WakeSleep["@nahisaho/musubix-wake-sleep<br/>学習サイクル"]
|
|
353
|
+
SDDOntology["@nahisaho/musubix-sdd-ontology"]
|
|
341
354
|
end
|
|
342
355
|
|
|
343
356
|
subgraph Integration["統合レイヤー"]
|
|
@@ -345,11 +358,15 @@ flowchart TB
|
|
|
345
358
|
CE["ConfidenceEvaluator"]
|
|
346
359
|
CD["ContradictionDetector"]
|
|
347
360
|
LS["LearningSystem"]
|
|
361
|
+
WS["WakeSleepCycle"]
|
|
348
362
|
end
|
|
349
363
|
|
|
350
364
|
Core --> Integration
|
|
351
365
|
MCP --> Integration
|
|
352
366
|
YATA_Client --> Integration
|
|
367
|
+
PatternMCP --> Integration
|
|
368
|
+
OntologyMCP --> Integration
|
|
369
|
+
WakeSleep --> Integration
|
|
353
370
|
end
|
|
354
371
|
|
|
355
372
|
subgraph External["外部システム"]
|
|
@@ -718,26 +735,39 @@ approvalWorkflow.transition('pending', 'approve'); // 'approved'
|
|
|
718
735
|
reservationWorkflow.transition('tentative', 'confirm'); // 'confirmed'
|
|
719
736
|
```
|
|
720
737
|
|
|
721
|
-
## 4.4 MCPサーバー(
|
|
738
|
+
## 4.4 MCPサーバー(16ツール、3プロンプト)
|
|
739
|
+
|
|
740
|
+
v1.3.0では、従来の9ツールに加えて**7つの新しいパターン統合ツール**を追加しました。
|
|
722
741
|
|
|
723
742
|
```mermaid
|
|
724
743
|
flowchart TB
|
|
725
744
|
subgraph MCPServer["MCP Server"]
|
|
726
|
-
subgraph
|
|
727
|
-
T1[
|
|
728
|
-
T2[
|
|
729
|
-
T3[
|
|
730
|
-
T4[
|
|
731
|
-
T5[
|
|
745
|
+
subgraph SDDTools["SDD基本ツール(9ツール)"]
|
|
746
|
+
T1[sdd_create_requirements]
|
|
747
|
+
T2[sdd_validate_requirements]
|
|
748
|
+
T3[sdd_create_design]
|
|
749
|
+
T4[sdd_validate_design]
|
|
750
|
+
T5[sdd_create_tasks]
|
|
751
|
+
T6[sdd_query_knowledge]
|
|
752
|
+
T7[sdd_update_knowledge]
|
|
753
|
+
T8[sdd_validate_constitution]
|
|
754
|
+
T9[sdd_validate_traceability]
|
|
732
755
|
end
|
|
733
756
|
|
|
734
|
-
subgraph
|
|
757
|
+
subgraph PatternTools["パターン統合ツール(7ツール)- v1.3.0 NEW!"]
|
|
758
|
+
PT1[pattern_extract]
|
|
759
|
+
PT2[pattern_compress]
|
|
760
|
+
PT3[pattern_store]
|
|
761
|
+
PT4[pattern_query]
|
|
762
|
+
PT5[pattern_consolidate]
|
|
763
|
+
PT6[ontology_query]
|
|
764
|
+
PT7[ontology_infer]
|
|
765
|
+
end
|
|
766
|
+
|
|
767
|
+
subgraph Prompts["3 Prompts"]
|
|
735
768
|
P1[sdd_requirements_analysis]
|
|
736
769
|
P2[sdd_requirements_review]
|
|
737
770
|
P3[sdd_design_generation]
|
|
738
|
-
P4[sdd_design_review]
|
|
739
|
-
P5[sdd_task_decomposition]
|
|
740
|
-
P6[sdd_project_steering]
|
|
741
771
|
end
|
|
742
772
|
end
|
|
743
773
|
|
|
@@ -786,6 +816,287 @@ flowchart LR
|
|
|
786
816
|
- 機密情報の自動フィルタリング
|
|
787
817
|
- 外部サーバーへのデータ送信なし
|
|
788
818
|
|
|
819
|
+
## 4.6 シンボリック推論モジュール(v1.2.0)
|
|
820
|
+
|
|
821
|
+
v1.2.0では、**シンボリック推論モジュール**(`packages/core/src/symbolic/`)を新規追加しました。これはNeuro-Symbolic AIの核心部分であり、**LLMの創造的な出力**と**形式的検証の厳密性**を融合させる画期的な機能です。
|
|
822
|
+
|
|
823
|
+
### なぜシンボリック推論が必要か?
|
|
824
|
+
|
|
825
|
+
LLM(Large Language Model)は強力なコード生成能力を持つ一方、以下の問題を抱えています。
|
|
826
|
+
|
|
827
|
+
1. **幻覚(Hallucination)**: 存在しない関数やライブラリを生成することがある
|
|
828
|
+
2. **一貫性の欠如**: 同じ質問に対して異なる回答を返すことがある
|
|
829
|
+
3. **検証不能**: 生成されたコードが仕様を満たすか数学的に証明できない
|
|
830
|
+
4. **セキュリティリスク**: 脆弱性を含むコードを生成する可能性がある
|
|
831
|
+
|
|
832
|
+
シンボリック推論モジュールは、これらの問題に対して**形式的手法**で対処します。
|
|
833
|
+
|
|
834
|
+
| 問題 | シンボリック解決策 |
|
|
835
|
+
|-----|------------------|
|
|
836
|
+
| 幻覚 | `HallucinationDetector` が未定義シンボルを検出 |
|
|
837
|
+
| 一貫性 | `ConstitutionRuleRegistry` が9憲法条項への準拠を強制 |
|
|
838
|
+
| 検証不能 | `Z3Adapter` がSMTソルバーで数学的に検証 |
|
|
839
|
+
| セキュリティ | `SecurityScanner` がOWASP Top 10パターンを検出 |
|
|
840
|
+
|
|
841
|
+
### アーキテクチャ(3フェーズ構成)
|
|
842
|
+
|
|
843
|
+
```mermaid
|
|
844
|
+
flowchart TB
|
|
845
|
+
subgraph Phase1["Phase 1: 基盤"]
|
|
846
|
+
P1A[SemanticCodeFilterPipeline<br/>LLM出力の意味検証]
|
|
847
|
+
P1B[HallucinationDetector<br/>幻覚検出]
|
|
848
|
+
P1C[ConstitutionRuleRegistry<br/>9憲法条項の強制]
|
|
849
|
+
P1D[ConfidenceEstimator<br/>信頼度スコアリング]
|
|
850
|
+
P1E[ConfidenceBasedRouter<br/>ルーティング決定]
|
|
851
|
+
P1F[ErrorHandler<br/>グレースフルデグラデーション]
|
|
852
|
+
end
|
|
853
|
+
|
|
854
|
+
subgraph Phase2["Phase 2: 形式検証"]
|
|
855
|
+
P2A[EarsToFormalSpecConverter<br/>EARS → SMT-LIB変換]
|
|
856
|
+
P2B[VerificationConditionGenerator<br/>検証条件生成]
|
|
857
|
+
P2C[Z3Adapter<br/>Z3 SMTソルバー統合]
|
|
858
|
+
P2D[SecurityScanner<br/>OWASPパターン検出]
|
|
859
|
+
end
|
|
860
|
+
|
|
861
|
+
subgraph Phase3["Phase 3: 高度機能"]
|
|
862
|
+
P3A[CandidateRanker<br/>複数候補のスコアリング]
|
|
863
|
+
P3B[ResultBlender<br/>Neural/Symbolic結果統合]
|
|
864
|
+
P3C[ExtensibleRuleConfig<br/>YAML/JSONルール設定]
|
|
865
|
+
P3D[AuditLogger<br/>SHA-256改ざん検出]
|
|
866
|
+
P3E[PerformanceBudget<br/>SLOメトリクス]
|
|
867
|
+
P3F[QualityGateValidator<br/>品質ゲート検証]
|
|
868
|
+
end
|
|
869
|
+
|
|
870
|
+
Phase1 --> Phase2 --> Phase3
|
|
871
|
+
```
|
|
872
|
+
|
|
873
|
+
### Phase 1: 基盤コンポーネント
|
|
874
|
+
|
|
875
|
+
LLM出力の基本的な品質保証を担当します。
|
|
876
|
+
|
|
877
|
+
| コンポーネント | 機能 | 詳細 |
|
|
878
|
+
|--------------|------|------|
|
|
879
|
+
| **SemanticCodeFilterPipeline** | 意味的検証パイプライン | AST解析、型推論、依存関係検証を連鎖実行 |
|
|
880
|
+
| **HallucinationDetector** | 幻覚検出 | 未定義シンボル、存在しないパッケージ、無効なAPIを検出 |
|
|
881
|
+
| **ConstitutionRuleRegistry** | 憲法準拠チェック | 9憲法条項への違反を自動検出(Library-First、Test-First等) |
|
|
882
|
+
| **ConfidenceEstimator** | 信頼度スコアリング | 複数の指標から0.0〜1.0の信頼度を算出 |
|
|
883
|
+
| **ConfidenceBasedRouter** | ルーティング決定 | 信頼度に基づいてNeural/Symbolic処理を振り分け |
|
|
884
|
+
| **ErrorHandler** | グレースフルデグラデーション | 検証失敗時の段階的フォールバック |
|
|
885
|
+
|
|
886
|
+
### Phase 2: 形式検証コンポーネント
|
|
887
|
+
|
|
888
|
+
数学的・形式的な検証を担当します。
|
|
889
|
+
|
|
890
|
+
| コンポーネント | 機能 | 詳細 |
|
|
891
|
+
|--------------|------|------|
|
|
892
|
+
| **EarsToFormalSpecConverter** | EARS → SMT-LIB変換 | 自然言語要件を形式仕様に変換 |
|
|
893
|
+
| **VerificationConditionGenerator** | 検証条件生成 | 事前条件、事後条件、ループ不変条件を生成 |
|
|
894
|
+
| **Z3Adapter** | SMTソルバー統合 | Microsoft Z3による数学的証明(充足可能性判定) |
|
|
895
|
+
| **SecurityScanner** | 脆弱性検出 | OWASP Top 10パターン(SQLi, XSS, CSRF等)を検出 |
|
|
896
|
+
|
|
897
|
+
### Phase 3: 高度機能コンポーネント
|
|
898
|
+
|
|
899
|
+
複数候補の評価と結果統合を担当します。
|
|
900
|
+
|
|
901
|
+
| コンポーネント | 機能 | 詳細 |
|
|
902
|
+
|--------------|------|------|
|
|
903
|
+
| **CandidateRanker** | 候補スコアリング | 複数の生成候補を品質・適合性でランキング |
|
|
904
|
+
| **ResultBlender** | 結果統合 | Neural結果とSymbolic結果を戦略的に統合 |
|
|
905
|
+
| **ExtensibleRuleConfig** | ルール設定 | YAML/JSONでカスタムルールを定義可能 |
|
|
906
|
+
| **AuditLogger** | 監査ログ | SHA-256ハッシュで改ざんを検出可能な監査証跡 |
|
|
907
|
+
| **PerformanceBudget** | SLOメトリクス | レイテンシ、メモリ使用量のSLO監視 |
|
|
908
|
+
| **QualityGateValidator** | 品質ゲート | 要件→設計→実装の各段階で品質基準を強制 |
|
|
909
|
+
|
|
910
|
+
### ResultBlender: Neural-Symbolic統合の核心
|
|
911
|
+
|
|
912
|
+
ResultBlenderは、LLM(Neural)の出力とシンボリック推論の結果を統合する中核コンポーネントです。3つの戦略を提供します。
|
|
913
|
+
|
|
914
|
+
```typescript
|
|
915
|
+
// 1. neural_priority: ニューラル結果を優先
|
|
916
|
+
// シンボリック検証をパスした場合のみニューラル結果を採用
|
|
917
|
+
// ユースケース: 創造的なコード生成、新しいアルゴリズム設計
|
|
918
|
+
blender.blend(neuralResult, symbolicResult, 'neural_priority');
|
|
919
|
+
|
|
920
|
+
// 2. symbolic_priority: シンボリック結果を優先
|
|
921
|
+
// 形式的に正しい結果を優先し、ニューラルは補助的に使用
|
|
922
|
+
// ユースケース: セキュリティクリティカルなコード、金融計算
|
|
923
|
+
blender.blend(neuralResult, symbolicResult, 'symbolic_priority');
|
|
924
|
+
|
|
925
|
+
// 3. weighted: 信頼度に基づく重み付け統合
|
|
926
|
+
// 両方の結果を信頼度スコアで重み付けして統合
|
|
927
|
+
// ユースケース: 一般的なコード生成、バランスの取れた出力
|
|
928
|
+
blender.blend(neuralResult, symbolicResult, 'weighted');
|
|
929
|
+
```
|
|
930
|
+
|
|
931
|
+
### 信頼度ベースの決定ルール(REQ-INT-002準拠)
|
|
932
|
+
|
|
933
|
+
```typescript
|
|
934
|
+
// シンボリック検証とニューラル信頼度の組み合わせ
|
|
935
|
+
if (symbolicResult === 'invalid') {
|
|
936
|
+
// シンボリック検証失敗 → ニューラル結果を棄却
|
|
937
|
+
return reject(neuralResult);
|
|
938
|
+
} else if (symbolicResult === 'valid' && neuralConfidence >= 0.8) {
|
|
939
|
+
// 高信頼度 → ニューラル結果を採用
|
|
940
|
+
return accept(neuralResult);
|
|
941
|
+
} else {
|
|
942
|
+
// 低信頼度 → シンボリック結果を優先
|
|
943
|
+
return prefer(symbolicResult);
|
|
944
|
+
}
|
|
945
|
+
```
|
|
946
|
+
|
|
947
|
+
この決定ルールにより、**LLMの創造性を活かしつつ、形式的な正しさを保証**します。
|
|
948
|
+
|
|
949
|
+
## 4.7 Wake-Sleep学習サイクル(v1.3.0)
|
|
950
|
+
|
|
951
|
+
v1.3.0では、**Wake-Sleepアルゴリズム**に基づく継続的学習システムを導入しました。これは神経科学の「睡眠中に記憶を整理・統合する」メカニズムに着想を得た学習パラダイムです。
|
|
952
|
+
|
|
953
|
+
### なぜWake-Sleep学習が必要か?
|
|
954
|
+
|
|
955
|
+
従来のAIコーディングアシスタントには以下の課題がありました。
|
|
956
|
+
|
|
957
|
+
1. **学習の断絶**: セッション終了後に学習内容が失われる
|
|
958
|
+
2. **パターンの冗長性**: 似たようなパターンが重複して蓄積される
|
|
959
|
+
3. **知識の断片化**: 学習したパターンが体系化されない
|
|
960
|
+
4. **メモリの肥大化**: 無制限にデータが増加し性能が低下する
|
|
961
|
+
|
|
962
|
+
Wake-Sleep学習サイクルは、これらの問題を解決します。
|
|
963
|
+
|
|
964
|
+
| 課題 | Wake-Sleep解決策 |
|
|
965
|
+
|-----|------------------|
|
|
966
|
+
| 学習の断絶 | `PatternLibrary` による永続化(JSON形式) |
|
|
967
|
+
| パターンの冗長性 | Sleep Phaseでの `pattern_consolidate`(類似統合) |
|
|
968
|
+
| 知識の断片化 | `N3Store` によるRDF/OWL体系化 |
|
|
969
|
+
| メモリの肥大化 | Sleep Phaseでの `pattern_compress`(抽象化圧縮) |
|
|
970
|
+
|
|
971
|
+
### Wake-Sleepサイクルの詳細
|
|
972
|
+
|
|
973
|
+
```mermaid
|
|
974
|
+
flowchart LR
|
|
975
|
+
subgraph WakePhase["Wake Phase(覚醒)"]
|
|
976
|
+
W1[コード観察] --> W2[パターン抽出]
|
|
977
|
+
W2 --> W3[知識グラフ更新]
|
|
978
|
+
end
|
|
979
|
+
|
|
980
|
+
subgraph SleepPhase["Sleep Phase(睡眠)"]
|
|
981
|
+
S1[パターン統合] --> S2[類似パターン圧縮]
|
|
982
|
+
S2 --> S3[メモリ最適化]
|
|
983
|
+
end
|
|
984
|
+
|
|
985
|
+
WakePhase --> SleepPhase
|
|
986
|
+
SleepPhase --> WakePhase
|
|
987
|
+
```
|
|
988
|
+
|
|
989
|
+
#### Wake Phase(覚醒フェーズ)
|
|
990
|
+
|
|
991
|
+
開発者がアクティブにコーディングしている間に実行されます。
|
|
992
|
+
|
|
993
|
+
```typescript
|
|
994
|
+
// Wake Phaseの処理フロー
|
|
995
|
+
async function wakePhase(codeObservation: CodeObservation): Promise<void> {
|
|
996
|
+
// 1. コード観察: 開発者の操作を監視
|
|
997
|
+
const observation = await observe(codeObservation);
|
|
998
|
+
|
|
999
|
+
// 2. パターン抽出: コードから設計パターン・コーディングパターンを検出
|
|
1000
|
+
const patterns = await extractPatterns(observation);
|
|
1001
|
+
|
|
1002
|
+
// 3. 知識グラフ更新: 抽出したパターンをオントロジーに追加
|
|
1003
|
+
await updateKnowledgeGraph(patterns);
|
|
1004
|
+
}
|
|
1005
|
+
```
|
|
1006
|
+
|
|
1007
|
+
| ステップ | 処理内容 | 出力 |
|
|
1008
|
+
|---------|----------|------|
|
|
1009
|
+
| コード観察 | ファイル変更、関数追加、リファクタリングを検出 | `CodeObservation` |
|
|
1010
|
+
| パターン抽出 | Factory, Repository, Service等のパターンを識別 | `Pattern[]` |
|
|
1011
|
+
| 知識グラフ更新 | RDFトリプルとして知識グラフに永続化 | `N3Store` 更新 |
|
|
1012
|
+
|
|
1013
|
+
#### Sleep Phase(睡眠フェーズ)
|
|
1014
|
+
|
|
1015
|
+
開発者がアイドル状態(休憩中、ミーティング中等)に実行されます。
|
|
1016
|
+
|
|
1017
|
+
```typescript
|
|
1018
|
+
// Sleep Phaseの処理フロー
|
|
1019
|
+
async function sleepPhase(): Promise<void> {
|
|
1020
|
+
// 1. パターン統合: 類似パターンをグループ化
|
|
1021
|
+
const consolidated = await consolidatePatterns();
|
|
1022
|
+
|
|
1023
|
+
// 2. 圧縮: 冗長な詳細を抽象化
|
|
1024
|
+
const compressed = await compressPatterns(consolidated);
|
|
1025
|
+
|
|
1026
|
+
// 3. メモリ最適化: 使用頻度の低いパターンを整理
|
|
1027
|
+
await optimizeMemory(compressed);
|
|
1028
|
+
}
|
|
1029
|
+
```
|
|
1030
|
+
|
|
1031
|
+
| ステップ | 処理内容 | 効果 |
|
|
1032
|
+
|---------|----------|------|
|
|
1033
|
+
| パターン統合 | 類似度90%以上のパターンをマージ | パターン数削減 |
|
|
1034
|
+
| 圧縮 | 具体的な変数名を抽象化(`userId` → `<identifier>`) | 汎用性向上 |
|
|
1035
|
+
| メモリ最適化 | 30日未使用パターンをアーカイブ | 検索性能維持 |
|
|
1036
|
+
|
|
1037
|
+
### 新パッケージ(v1.3.0で追加)
|
|
1038
|
+
|
|
1039
|
+
| パッケージ | npm | 役割 |
|
|
1040
|
+
|-----------|-----|------|
|
|
1041
|
+
| `packages/pattern-mcp/` | `@nahisaho/musubix-pattern-mcp` | パターン抽出・圧縮・ライブラリ管理 |
|
|
1042
|
+
| `packages/ontology-mcp/` | `@nahisaho/musubix-ontology-mcp` | N3Store・RDF推論エンジン |
|
|
1043
|
+
| `packages/wake-sleep/` | `@nahisaho/musubix-wake-sleep` | Wake-Sleep学習サイクル制御 |
|
|
1044
|
+
| `packages/sdd-ontology/` | `@nahisaho/musubix-sdd-ontology` | SDD方法論のオントロジー定義 |
|
|
1045
|
+
|
|
1046
|
+
### 主要コンポーネント詳細
|
|
1047
|
+
|
|
1048
|
+
| コンポーネント | 機能 | 詳細 |
|
|
1049
|
+
|--------------|------|------|
|
|
1050
|
+
| **WakeSleepCycle** | サイクルオーケストレーション | Wake/Sleepフェーズの切り替え、スケジューリング、状態管理 |
|
|
1051
|
+
| **PatternLibrary** | パターン永続化 | JSON形式で学習済みパターンを保存、バージョン管理、検索API |
|
|
1052
|
+
| **PatternOntologyBridge** | 相互変換 | `Pattern` オブジェクト ↔ RDFトリプルの双方向変換 |
|
|
1053
|
+
| **N3Store** | 知識グラフDB | Turtle形式のRDF/OWLストレージ、SPARQLライクなクエリ |
|
|
1054
|
+
| **PatternExtractor** | パターン検出 | AST解析によるGoFパターン、アーキテクチャパターンの検出 |
|
|
1055
|
+
| **PatternCompressor** | パターン圧縮 | 類似パターンの抽象化、変数名の一般化 |
|
|
1056
|
+
|
|
1057
|
+
### 新MCPツール(7ツール)
|
|
1058
|
+
|
|
1059
|
+
Wake-Sleep学習機能をMCPプロトコル経由で利用可能にします。
|
|
1060
|
+
|
|
1061
|
+
| ツール名 | 説明 | ユースケース |
|
|
1062
|
+
|---------|------|-------------|
|
|
1063
|
+
| `pattern_extract` | コードからパターンを抽出 | 既存コードベースの分析 |
|
|
1064
|
+
| `pattern_compress` | パターンの抽象化・圧縮 | 冗長パターンの整理 |
|
|
1065
|
+
| `pattern_store` | パターンライブラリへの保存 | 学習結果の永続化 |
|
|
1066
|
+
| `pattern_query` | パターンの検索・取得 | 類似実装の発見 |
|
|
1067
|
+
| `pattern_consolidate` | 類似パターンの統合 | Sleep Phase実行 |
|
|
1068
|
+
| `ontology_query` | オントロジーグラフへのクエリ | 知識検索 |
|
|
1069
|
+
| `ontology_infer` | オントロジーによる推論実行 | 関連パターン推論 |
|
|
1070
|
+
|
|
1071
|
+
### 学習データの保存場所
|
|
1072
|
+
|
|
1073
|
+
```
|
|
1074
|
+
storage/
|
|
1075
|
+
├── patterns/
|
|
1076
|
+
│ └── library.json # パターンライブラリ(JSON)
|
|
1077
|
+
│ # 形式: { patterns: Pattern[], metadata: {...} }
|
|
1078
|
+
└── ontology/
|
|
1079
|
+
└── n3-store.ttl # 知識グラフ(Turtle RDF)
|
|
1080
|
+
# 形式: @prefix sdd: <http://musubix.dev/ontology/sdd#>
|
|
1081
|
+
```
|
|
1082
|
+
|
|
1083
|
+
### 学習効果の例
|
|
1084
|
+
|
|
1085
|
+
Wake-Sleep学習サイクルにより、以下のような効果が得られます。
|
|
1086
|
+
|
|
1087
|
+
```typescript
|
|
1088
|
+
// 学習前: 開発者が毎回同じパターンを手書き
|
|
1089
|
+
class UserRepository {
|
|
1090
|
+
async findById(id: string): Promise<User | null> { ... }
|
|
1091
|
+
async save(user: User): Promise<void> { ... }
|
|
1092
|
+
}
|
|
1093
|
+
|
|
1094
|
+
// 学習後: システムが自動でパターンを提案
|
|
1095
|
+
// 「Repository パターンを検出しました。
|
|
1096
|
+
// 類似実装: ProductRepository, OrderRepository
|
|
1097
|
+
// 推奨メソッド: findAll(), delete(), exists()」
|
|
1098
|
+
```
|
|
1099
|
+
|
|
789
1100
|
# 5. 9つの憲法条項
|
|
790
1101
|
|
|
791
1102
|
MUSUBIXは、MUSUBIから継承した **9つの憲法条項(Constitutional Articles)** を遵守します。これらは開発プロセス全体を統治する不変の原則であり、AIコーディングエージェントが従うべきガバナンスフレームワークです。
|
|
@@ -1129,17 +1440,17 @@ claude mcp list
|
|
|
1129
1440
|
|
|
1130
1441
|
```mermaid
|
|
1131
1442
|
flowchart TD
|
|
1132
|
-
Start[MUSUBIXを使いたい] --> Q1{MCP
|
|
1443
|
+
Start[MUSUBIXを使いたい] --> Q1{MCPを使う環境がある?}
|
|
1133
1444
|
|
|
1134
|
-
Q1 -->|はい| Q2{高度な機能が<br
|
|
1445
|
+
Q1 -->|はい| Q2{高度な機能が<br>必要?}
|
|
1135
1446
|
Q1 -->|いいえ| Direct[方法1: 直接利用]
|
|
1136
1447
|
|
|
1137
1448
|
Q2 -->|はい| MCP[方法2: MCP経由]
|
|
1138
1449
|
Q2 -->|いいえ| Both[両方併用]
|
|
1139
1450
|
|
|
1140
|
-
Direct --> Use1[AGENTS.md +
|
|
1141
|
-
MCP --> Use2[MCPツールで<br
|
|
1142
|
-
Both --> Use3[普段は直接利用<br
|
|
1451
|
+
Direct --> Use1[AGENTS.md + プロンプトで日常開発]
|
|
1452
|
+
MCP --> Use2[MCPツールで<br>高度な検証・分析]
|
|
1453
|
+
Both --> Use3[普段は直接利用<br>必要時にMCP]
|
|
1143
1454
|
```
|
|
1144
1455
|
|
|
1145
1456
|
| シナリオ | 推奨方法 |
|
|
@@ -1164,4 +1475,4 @@ flowchart TD
|
|
|
1164
1475
|
**著者**: nahisaho
|
|
1165
1476
|
**公開日**: 2026-01-02
|
|
1166
1477
|
**更新日**: 2026-01-05
|
|
1167
|
-
**バージョン**: v1.
|
|
1478
|
+
**バージョン**: v1.3.0
|