skill-system-postgres について
skill-system-postgresは、スキルシステムの可観測性、ポリシー、グラフ、更新、投影データを保存するPostgreSQLの状態ストアです。Agentや関連スキルが状態を記録・参照するためのもので、処理自体は実行しません。
主な機能
- 01スキルポリシープロファイル
- 02実行記録とイベントログ
- 03スキル依存グラフ
- 04更新ジョブの状態とログ
- 05ルール・プロジェクトグラフの投影
活用シーン
- 01Agentのスキル実行を記録
- 02許可されたスキル操作の確認
- 03スキル依存関係の追跡
- 04更新と投影状態の管理
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ arthur0824hao/ skills --skill skill-system-postgresインストール後、Claude Code で/skill-system-postgresを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
SKILL.behavior.yamlSKILL.spec.yamlinit.sqlmigrate-v2.sqlmigrate-v3-graph.sqlmigrate-v4-control-plane.sqlmigrate-v5-rule-model.sqlmigrate-v6-project-graph.sqlmigrate-v7-behavior-graph.sqlscripts/architecture_graph.pymigrate_behavior_graph.pyprojection_engine.pyrule_projection.pytest_architecture_graph.pytest_migrate_behavior_graph.pytest_projection_authority_contract.pytest_projection_engine.pytest_rule_projection.py詳細
スキルシステム(Postgres の状態)
スキルシステムの可観測性、ポリシー、グラフ、更新/コントロールプレーンの状態、標準ルール階層のプロジェクション、プロジェクトアーキテクチャグラフのプロジェクションに関するデータベーススキーマです。
インストール
# Replace 'postgres' with your PostgreSQL superuser if needed (e.g. your OS username)
psql -U postgres -d agent_memory -v ON_ERROR_STOP=1 -f init.sql
# Replace 'postgres' with your PostgreSQL superuser if needed
& "C:\Program Files\PostgreSQL\18\bin\psql.exe" -U postgres -d agent_memory -v "ON_ERROR_STOP=1" -f init.sql
既存の v1 インストールでは、migrate-v2.sql も実行してください。
グラフとコントロールプレーンの拡張機能については、次も実行してください。
psql -U postgres -d agent_memory -v ON_ERROR_STOP=1 -f migrate-v3-graph.sql
psql -U postgres -d agent_memory -v ON_ERROR_STOP=1 -f migrate-v4-control-plane.sql
psql -U postgres -d agent_memory -v ON_ERROR_STOP=1 -f migrate-v5-rule-model.sql
psql -U postgres -d agent_memory -v ON_ERROR_STOP=1 -f migrate-v6-project-graph.sql
テーブル
skill_system.policy_profiles— 効果の許可リスト(スキルに許可される操作)skill_system.runs— 実行記録(目標、エージェント、ステータス、所要時間、メトリクス)skill_system.run_events— ステップ単位のイベントログ(どのスキルが、どの操作を行い、どのような結果になったか)skill_system.skill_graph_nodes/skill_system.skill_graph_edges— スキルのグローバル依存関係グラフskill_system.refresh_jobs/skill_system.refresh_job_events— キューに登録された更新ジョブとジョブログskill_system.artifact_versions— 生成されたアーティファクトのバージョンレジストリskill_system.rule_sets/skill_system.rule_entries— 標準ルール階層とプロジェクションされたルールエントリskill_system.project_nodes/skill_system.project_edges— 標準リポジトリアーキテクチャグラフとプロジェクションされた関係
使用方法
エージェントは Router スキルの指示に従って、これらのテーブルに書き込みます。このスキルは何も実行せず、状態を保存するだけです。
{
"schema_version": "2.0",
"id": "skill-system-postgres",
"version": "1.4.0",
"capabilities": ["skill-policy-check", "skill-run-log", "skill-graph", "skill-refresh-control", "skill-rule-model", "skill-project-graph", "skill-projection-engine"],
"effects": ["db.read", "db.write"],
"operations": {
"check-policy": {
"description": "Check if a skill's effects are allowed by the active policy profile.",
"input": {
"policy_name": { "type": "string", "required": true, "description": "Policy profile name (e.g. dev)" },
"effects": { "type": "json", "required": true, "description": "Array of effect strings to check" }
},
"output": {
"description": "Whether all effects are allowed",
"fields": { "allowed": "boolean", "blocked_effects": "array" }
},
"entrypoints": {
"agent": "Query skill_system.policy_profiles WHERE name = policy_name"
}
},
"log-run": {
"description": "Log a skill execution run for observability.",
"input": {
"skill_id": { "type": "string", "required": true },
"operation": { "type": "string", "required": true },
"status": { "type": "string", "required": true },
"duration_ms": { "type": "integer", "required": false }
},
"output": {
"description": "Run ID",
"fields": { "run_id": "integer" }
},
"entrypoints": {
"agent": "INSERT INTO skill_system.runs and skill_system.run_events"
}
},
"migrate-graph": {
"description": "Apply migrate-v3-graph.sql to create graph nodes/edges schema.",
"input": {
"action": { "type": "string", "required": false, "description": "apply or check" }
},
"output": {
"description": "Migration status and table list",
"fields": { "status": "string", "tables": "array" }
},
"entrypoints": {
"agent": "Apply migrate-v3-graph.sql via psql"
}
},
"migrate-control-plane": {
"description": "Apply migrate-v4-control-plane.sql to create refresh jobs, refresh job events, and artifact versions tables.",
"input": {
"action": { "type": "string", "required": false, "description": "apply or check" }
},
"output": {
"description": "Migration status and table list",
"fields": { "status": "string", "tables": "array" }
},
"entrypoints": {
"agent": "Apply migrate-v4-control-plane.sql via psql"
}
},
"migrate-rule-model": {
"description": "Apply migrate-v5-rule-model.sql to create canonical rule hierarchy tables.",
"input": {
"action": { "type": "string", "required": false, "description": "apply or check" }
},
"output": {
"description": "Migration status and table list",
"fields": { "status": "string", "tables": "array" }
},
"entrypoints": {
"agent": "Apply migrate-v5-rule-model.sql via psql"
}
},
"project-rules": {
"description": "Sync canonical rule hierarchy into PostgreSQL and deterministic markdown rule projections.",
"input": {
"write_files": { "type": "boolean", "required": false, "description": "Write note rule projections after syncing" }
},
"output": {
"description": "Rule model summary and written projection paths",
"fields": { "rule_model": "json", "written_files": "array" }
},
"entrypoints": {
"unix": ["python3", "scripts/rule_projection.py", "--write-files"],
"agent": "Run scripts/rule_projection.py to upsert canonical rule rows and write deterministic note projections"
}
},
"migrate-project-graph": {
"description": "Apply migrate-v6-project-graph.sql to create canonical project graph tables.",
"input": {
"action": { "type": "string", "required": false, "description": "apply or check" }
},
"output": {
"description": "Migration status and table list",
"fields": { "status": "string", "tables": "array" }
},
"entrypoints": {
"agent": "Apply migrate-v6-project-graph.sql via psql"
}
},
"project-architecture": {
"description": "Sync canonical repo architecture graph into PostgreSQL and write note/architecture_map.md.",
"input": {
"write_file": { "type": "boolean", "required": false, "description": "Write architecture_map after syncing" }
},
"output": {
"description": "Architecture graph summary and written projection path",
"fields": { "architecture_graph": "json", "written_file": "string" }
},
"entrypoints": {
"unix": ["python3", "scripts/architecture_graph.py", "--write-file"],
"agent": "Run scripts/architecture_graph.py to upsert project graph rows and write deterministic note/architecture_map.md"
}
},
"run-projection-engine": {
"description": "Refresh deterministic markdown projections with GENERATED_START / GENERATED_END managed blocks.",
"input": {},
"output": {
"description": "Projection targets refreshed by the engine",
"fields": { "written_files": "array" }
},
"entrypoints": {
"unix": ["python3", "scripts/projection_engine.py"],
"agent": "Run scripts/projection_engine.py after canonical PostgreSQL models are up to date"
}
}
},
"stdout_contract": {
"last_line_json": true,
"note": "Migration operations remain agent-executed SQL; scripts/rule_projection.py returns a JSON payload."
}
}
コメント
Markdown 対応