unlazy

Enforces completion discipline for AI-agent work using runnable acceptance gates and evidence.

Updated Sep 11, 2026
One-click install
npx skills add https://github.com/CYRUS-pinto/pi-bot --skill unlazy-cyrus-pinto
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: unlazy
Source: https://github.com/CYRUS-pinto/pi-bot/tree/main/.agents/skills/unlazy
Command: npx skills add https://github.com/CYRUS-pinto/pi-bot --skill unlazy-cyrus-pinto

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve? AI agents frequently report work as done when it is incomplete, silently reduce scope, or make unmeasured completion claims. This Skill makes completion testable by requiring acceptance gates written before work begins, executed checks with explicit approval, and re-verified evidence before any done report. ## Core Features & Use Cases - Acceptance gate ledgers: Write GATES.md files where each gate pairs a CHECK shell command with an EXPECT output match, so completion is proven by exit code plus output rather than a confident summary. - Approval-gated execution: CHECK lines run only after explicit --approve, with approvals bound to the exact command, expectation, working directory, shell, timeout, platform, and PATH stored outside the repository. - Orchestrated parallel work: Decompose large tasks with the Depth Tree into scoped pipelines under .unlazy/<scope>/, coordinate leaves with OWNS leases and native dispatch waves, and re-verify returned work with --reverify. - Use Case: Ask an agent to refactor a payment module across multiple files. The Skill writes per-leaf gate ledgers first, dispatches independent leaves in sealed launch waves, re-runs every gate on returned work, and blocks the final report until all gates pass or are explicitly abandoned as handoffs. ## Quick Start Ask the agent to use unlazy to tree 5 refactor the payment module and verify every migration path with runnable gates before reporting completion.

Frequently Asked Questions about unlazy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I stop an AI agent from claiming incomplete work is done?

Write acceptance gates before work starts, where each gate pairs a CHECK shell command with an EXPECT output match. The gate-check script counts a gate as met only when the command exits zero and the output matches, so completion claims require executed evidence rather than a confident summary.

How do I run unlazy gate checks safely?

Run gate-check.mjs with --status first to parse the ledger without executing anything, then read every CHECK command and called script. Use --approve to consent to the exact resolved oracle; approvals bind the command, expectation, working directory, shell, timeout, platform, and PATH.

Does unlazy work on Windows?

Yes, the checker supports Windows with Node 16 or newer and zero runtime dependencies. It resolves the shell from --shell, UNLAZY_SHELL, or ComSpec, handles Windows process-tree timeout cleanup, and recommends portable Node scripts instead of Unix utilities like grep or tail.

Can unlazy coordinate parallel AI agents?

Yes, orchestrated mode creates scoped pipelines under .unlazy/<scope>/ with per-leaf ledgers, OWNS ownership leases, and native dispatch waves that require all agent launches before the first wait. It supports Codex subagents and Claude Code background agents through documented adapters.

What are the limitations of unlazy gate verification?

The checker proves only the declared command oracle, not that an English gate title matches what the command measures. Approval is consent rather than a sandbox, and scopes or leases coordinate cooperating processes without providing filesystem isolation.