metacognitive-self-mod について
過去のスキル改善の成果を分析し、改善プロセスを見直すスキルです。改善メモリとパフォーマンス傾向からパターンを特定し、skill-improver の戦略変更を提案します。
主な機能
- 01成果を有効・中立・退行に分類
- 02改善メモリとパフォーマンス傾向を分析
- 03因果仮説とメタ知見を記録
- 04ユーザー承認が必要な戦略変更を提案
活用シーン
- 01スキル改善による退行の調査
- 02改善サイクル後の有効性評価
- 03成果に基づく skill-improver 戦略の見直し
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ athola/ claude-night-market --skill metacognitive-self-modインストール後、Claude Code で/metacognitive-self-modを入力して読み込まれたか確認します。
同梱ファイルmodules/trace-capture.md
詳細
メタ認知的な自己修正
概要
過去のスキル改善の有効性を分析し、改善プロセス自体を 洗練させます。これが Hyperagents 論文の中核となる イノベーションです。スキルを改善するだけでなく、 スキルの改善方法そのものを改善します。
コンテキストトリガー(自動呼び出し)
次の場合、このスキルを自動的に呼び出します。
-
リグレッションの検出:恒常性モニターにより、ある スキルの評価期間が
pending_rollback_reviewステータスで終了したことが 見つかった場合。改善によって状況が悪化しているため、 原因を把握する必要があります。 -
有効率の低下:
ImprovementMemory.get_effective_strategies()とget_failed_strategies()の結果から、 有効率が 50% 未満だと分かった場合、改善プロセス自体を 洗練させる必要があります。 -
改善後も劣化:最近改善されたスキルについて、
PerformanceTracker.get_improvement_trend()が 負の値を返した場合。 -
定期チェック:改善サイクルを 10 回行うごと (
ImprovementMemoryの結果件数で追跡)。
フックの統合
恒常性モニターは、スキルがフラグのしきい値を超えると
"improvement_triggered": true を出力します。その時点で、
skill-improver をディスパッチする前に、
メタ認知分析が必要かどうかを確認します。
from abstract.improvement_memory import ImprovementMemory
from pathlib import Path
memory = ImprovementMemory(Path.home() / ".claude/skills/improvement_memory.json")
# Check if metacognitive analysis is warranted
effective = memory.get_effective_strategies()
failed = memory.get_failed_strategies()
total = len(effective) + len(failed)
needs_metacognition = False
# Trigger 1: Low effectiveness rate
if total >= 5 and len(effective) / total < 0.5:
needs_metacognition = True
# Trigger 2: Periodic check (every 10 outcomes)
if total > 0 and total % 10 == 0:
needs_metacognition = True
# Trigger 3: Recent regression
if failed and failed[-1].get("outcome_type") == "failure":
needs_metacognition = True
if needs_metacognition:
# Run metacognitive analysis before next improvement
pass # Skill(abstract:metacognitive-self-mod)
使用するタイミング(手動)
- スキル改善をまとめて行った後に、効果があった内容を 評価するとき
- 改善の結果にリグレッションが見られたとき
- 改善戦略を洗練させるため、定期的に(月次で)
skill-improverエージェントの効果が低いように見えるとき
使用しないタイミング
- 通常のスキル改善時(
skill-improverを直接使用します) - スキルを初めて作成するとき(
skill-authoringを使用します)
ワークフロー
ステップ 1:改善データを読み込む
改善メモリとパフォーマンストラッカーのデータを読み込みます。
# Check for improvement memory
MEMORY_FILE=~/.claude/skills/improvement_memory.json
TRACKER_FILE=~/.claude/skills/performance_history.json
if [ ! -f "$MEMORY_FILE" ]; then
echo "No improvement memory found."
echo "Run skill-improver first to generate improvement data."
exit 0
fi
Python を使って JSON ファイルを読み込みます。
from abstract.improvement_memory import ImprovementMemory
from abstract.performance_tracker import PerformanceTracker
from pathlib import Path
memory = ImprovementMemory(Path.home() / ".claude/skills/improvement_memory.json")
tracker = PerformanceTracker(Path.home() / ".claude/skills/performance_history.json")
ステップ 2:改善結果を分類する
メモリ内の各改善結果を、次のように分類します。
- 有効:
after_score - before_score >= 0.1 - 中立:
-0.1 < improvement < 0.1 - リグレッション:
after_score < before_score
effective = memory.get_effective_strategies()
failed = memory.get_failed_strategies()
# Calculate effectiveness rate
total = len(effective) + len(failed)
if total > 0:
effectiveness_rate = len(effective) / total
ステップ 3:メタパターンを抽出する
どのような改善が成功し、どのような改善が失敗するかを 分析します。
探すべき成功パターン:
- エラー処理の追加(失敗率を低下させる)
- 例の追加(ユーザー評価を向上させる)
- 静音/詳細モードの追加(摩擦を軽減する)
- ワークフロー手順の簡素化(所要時間を短縮する)
探すべき失敗パターン:
- 過剰な設計(選択肢を増やしすぎる)
- 既存のワークフローを壊す(リグレッション)
- 検証を行わずに複雑さを追加する
- 詳細な追加内容によるトークン予算の超過
見つかった各パターンについて、因果仮説として記録します。
memory.record_insight(
skill_ref="_meta", # Special ref for meta-insights
category="causal_hypothesis",
insight="Error handling improvements have 85% success rate",
evidence=["skill-A v1.1.0: +0.3", "skill-B v2.1.0: +0.15"],
)
ステップ 4:改善傾向を分析する
PerformanceTracker を使って、次の項目を特定します。
- 継続的に改善しているスキル(正の傾向)
- 改善を試みているにもかかわらず劣化しているスキル
- 改善効果が最も高い分野
for skill_ref in tracker.get_all_skill_refs():
trend = tracker.get_improvement_trend(skill_ref)
if trend is not None:
if trend > 0.05:
# Sustained improvement - what's working?
pass
elif trend < -0.05:
# Degrading despite improvements - investigate
pass
ステップ 5:戦略に関する推奨事項を作成する
メタ分析に基づき、skill-improver 向けの推奨事項を
作成します。
-
優先順位の計算式の調整:特定の種類の問題で改善の 成功率が高い場合、その重みを高くします。
-
アプローチの選択:「エラー処理の追加」の成功率が 85% で、「ワークフローの再構成」が 30% の場合、 エラー処理を優先します。
-
しきい値の調整:優先度 3.0 未満の改善が一貫して 失敗する場合、最小しきい値を引き上げます。
-
回避ルール:今後の改善で避けるべきアンチパターンを 記録します。
ステップ 6:メタインサイトを保存する
すべての調査結果を、特別な _meta スキル参照の下にある
ImprovementMemory に記録します。
# Record strategy recommendation
memory.record_insight(
skill_ref="_meta",
category="strategy_success",
insight="Recommendation: Prioritize error handling and examples over restructuring",
evidence=[f"Success rate: error_handling={eh_rate:.0%}, restructure={rs_rate:.0%}"],
)
Step 7: skill-improver 戦略を更新する
重大なメタ的洞察が見つかった場合は、skill-improver エージェントへの具体的な変更を提案します。
- 優先度の計算式における重みを更新する
- 既知のアンチパターンに対する回避ルールを追加する
- 実証データに基づいてしきい値を調整する
- 効果が確認された新しい改善パターンを追加する
重要:変更は提案にとどめ、自動で適用しないでください。改善プロセスを変更するには、ユーザーの承認が必要です。
出力
Metacognitive Self-Modification Report
Improvement Data:
Total outcomes analyzed: 15
Effective improvements: 11 (73%)
Regressions: 2 (13%)
Neutral: 2 (13%)
Success Patterns:
1. Error handling additions: 5/6 success (83%)
2. Example additions: 3/3 success (100%)
3. Quiet mode additions: 2/2 success (100%)
Failure Patterns:
1. Workflow restructuring: 1/3 success (33%)
2. Token-heavy additions: 0/1 success (0%)
Performance Trends:
Improving: 8 skills (positive trend)
Stable: 4 skills (no trend)
Degrading: 1 skill (negative trend despite attempts)
Recommendations:
1. Weight error handling improvements 2x in priority
2. Avoid workflow restructuring below priority 8.0
3. Cap additions at 200 tokens to prevent budget overflow
4. Focus next improvement cycle on degrading skill X
Meta-insights stored: 5 new entries in improvement memory
関連項目
abstract:skill-improver- このスキルが分析し、変更を提案するエージェントabstract:skills-eval- メタ的洞察によって基準を洗練できる評価フレームワークabstract:aggregate-logs- 改善指標のデータソース
完了条件
- メタ認知レポートに、
~/.claude/skills/improvement_memory.jsonを出典とする分析対象の結果の合計数(効果あり/回帰/中立の件数)が記載されている。 - 根拠(スキル参照とスコアの増減)を引用した因果仮説が、
improvement_memory.jsonのskill_ref: "_meta"の下に少なくとも1件記録されている。 - Tier 3 の戦略に関する推奨事項(skill-improver の優先度の重みの変更、回避ルールの追加、しきい値の調整)は、変更を適用する前にユーザーの明示的な承認を必要とする提案として提示されている。
- 5件以上の結果で有効率が50%を下回る場合、この条件がレポート出力の主なトリガー理由として示されている。