Skip to content

feat: /governance — cryptographic accountability for agent sessions#802

Open
aeoess wants to merge 1 commit intogarrytan:mainfrom
aeoess:feat/governance-skill
Open

feat: /governance — cryptographic accountability for agent sessions#802
aeoess wants to merge 1 commit intogarrytan:mainfrom
aeoess:feat/governance-skill

Conversation

@aeoess
Copy link
Copy Markdown

@aeoess aeoess commented Apr 4, 2026

What this adds

A /governance skill that gives gstack sessions cryptographic accountability.

The problem: gstack agents can deploy code, push to repos, mutate databases, and run destructive commands. /careful warns before destructive ops. But there's no proof of what happened, when, or with what authorization. If something breaks in prod, you're reconstructing from memory and git logs.

The solution: /governance generates an Ed25519 session identity and signs a receipt for every destructive action. Receipts form a hash chain — delete or modify any receipt and the chain breaks. Scope enforcement blocks actions outside the declared authority.

Features

  • Session identity: Ed25519 keypair, persists across sessions
  • Signed receipts: every deploy, push, delete, db mutation gets cryptographic proof
  • Scope enforcement: .gstack-scope.json declares what this agent is allowed to do
  • Hash-chained ledger: tamper-evident, append-only audit trail
  • Zero dependencies: works with openssl (already on every Mac/Linux)
  • Composes with existing skills: /governance + /ship, /governance + /careful, /governance + /guard

Scope file format

{
  "allowed": ["read", "write", "test", "review"],
  "blocked": ["deploy", "db_migrate", "force_push"],
  "principal": "garry"
}

Why this matters

When you have 3+ gstack sessions running simultaneously (as the README describes), and one of them ships a broken deploy, you need to answer: which session, which command, when, and was it authorized? /governance answers all four with cryptographic proof.

Optional: external verification

For teams that want external accountability, receipts are compatible with the Agent Passport System — but this is entirely optional. /governance works standalone with zero npm dependencies.

…ions

Ed25519-signed receipts for every destructive action. Scope enforcement via
.gstack-scope.json. Hash-chained audit ledger for tamper detection.

- Session identity: Ed25519 keypair generated at first use
- Signed receipts: deploy, push, delete, db mutations get cryptographic proof
- Scope enforcement: declare allowed/blocked actions in .gstack-scope.json
- Hash chain: each receipt includes previous receipt hash (tamper-evident)
- Composes with /careful, /ship, /review, /guard
- Zero dependencies — works standalone with openssl
- Optional: compatible with Agent Passport System for external verification
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant