Skip to content
Back to skills

Gz State

ASecurity

Use to report artifact lineage, relationships or readiness.

  • 9 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added October 19, 2026
toolsgobash

Works with

  • terminal
  • cli

Security analysis

A100/100

Scanned October 19, 2026

npx -y skills add tvproductions/gzkit --skill gz-state --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Gz State?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Gz State
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tvproductions-gz-state/badge)](https://www.skillsdirectory.com/skills/tvproductions-gz-state)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
name: gz-state
description: Use to report artifact lineage, relationships or readiness.
category: governance-infrastructure
lifecycle_state: active
owner: gzkit-governance
last_reviewed: 2026-10-17
metadata:
  skill-version: "0.3.2"
model: haiku
---

# gz state

## Overview

Read the artifact graph the ledger derives: every PRD, ADR and OBPI with its
type, parent and attestation. `gz state` is a Layer 3 view of the ledger, so
cite it for an artifact's relationships, and read completion from the ledger
through `gz obpi status` or `gz adr status`.

- With no flag it prints the `Artifact State` table (ID, Type, Parent,
  Attested). `--full` folds long IDs instead of truncating them.
- `--json` prints the whole graph, including ADR lifecycle fields
  (`lifecycle_status`, `closeout_phase`, `attestation_term`) and, for an OBPI
  with TASKs, a `task_summary` with counts by status.
- `--blocked` keeps only unattested artifacts. That is every pool ADR and
  pending OBPI, not only work that is blocked.
- `--ready` keeps only unattested ADRs whose lane-required gates are satisfied,
  that is, ADRs ready for attestation.
- Withdrawn OBPIs are hidden, and removed from their parent's children;
  `--include-withdrawn` shows them.

`--repair` is the one mode that writes. It ignores the query flags, has no dry
run, and makes two repairs from the ledger:

- It sets each OBPI brief's frontmatter `status`: `Completed` when the ledger
  records completion, `Abandoned` when it records withdrawal, unchanged
  otherwise. A terminal brief is never overwritten.
- It repairs the pipeline marker files of the run in flight that was launched
  last, and is the only command that does. With one of the run's two files on
  disk it restores the missing one as a copy; with neither it rebuilds both
  from the run's `pipeline_launched` and `pipeline_stage_transition` events.
  It overwrites no marker file. With neither file on disk it declines a run
  whose last recorded boundary is past the stale bound; with one file on disk
  the stale bound does not apply and the copy is restored. It declines an
  older run while a later one is in flight. The manpage `docs/user/manpages/state.md` states the whole contract.

## Workflow

1. Query: `uv run gz state`, or `--json`, `--blocked`, `--ready`,
   `--include-withdrawn` as the question needs. Add `--full` when IDs are
   quoted as evidence.
2. Before `--repair`, tell the operator that it edits brief files and may write
   pipeline marker files under `.claude/plans/`. Run it, then report its
   `State Repair Results` table, or `All frontmatter is aligned with ledger
   state. No changes.`, and each `Restored pipeline marker file`, `Rebuilt
   pipeline marker` and `Pipeline marker not rebuilt` line it prints, the last
   with its reason. With `--json` these are the `markers` object: `rebuilt`,
   `restored` and `declined`. Include the changed brief files in the commit.

## Example

```bash
uv run gz state --ready
uv run gz state --json
uv run gz state --repair
```

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.