Skill System (Postgres State)
skill-system-postgres
Postgres-backed observability and policy store for the skill system. Provides tables for policy profiles (effect allowlists), skill execution runs, and step-level events. Use when setting up the skill system database or querying execution history.
SKILL.md
Full skill instructions
Skill System (Postgres State)
Database schema for skill system observability and policy.
Install
psql -U postgres -d agent_memory -v ON_ERROR_STOP=1 -f init.sql
& "C:\Program Files\PostgreSQL\18\bin\psql.exe" -U postgres -d agent_memory -v "ON_ERROR_STOP=1" -f init.sql
For existing v1 installations, also run migrate-v2.sql.
Tables
skill_system.policy_profiles— effect allowlists (what skills are allowed to do)skill_system.runs— execution records (goal, agent, status, duration, metrics)skill_system.run_events— step-level event log (which skill, which op, result)
Usage
The Agent writes to these tables as instructed by the Router skill. This skill does not execute anything — it's a state store.
{
"schema_version": "2.0",
"id": "skill-system-postgres",
"version": "1.0.0",
"capabilities": ["skill-policy-check", "skill-run-log"],
"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"
}
}
},
"stdout_contract": {
"last_line_json": false,
"note": "Agent-executed SQL; no executable scripts."
}
}
