YYLO Ledger is a local, Git-native task management tool that stores task intent, status, blockers, responses, history, archives, and commit evidence in Git, designed to make engineering work legible to both people and AI agents. It is a Python command-line application (version 0.2.1rc1) that runs on any system with Python and Git, and it is part of YYLO's broader engineering-memory product family.
YYLO Ledger is part of the wider YYLO developer-tool ecosystem. Use it independently as a Git-based task management CLI, connect it with YYLO CLI (GitHub) for AI coding-agent orchestration and guarded software delivery, or pair it with YYLO Benchmark (GitHub) for evaluation and evidence workflows.
Product page: YYLO Ledger on yylo.dev
Source code: YYLO Ledger on GitHub
Python package: yylo-ledger on PyPI
AI agent orchestration: YYLO CLI on yylo.dev · GitHub · npm
Evaluation tooling: YYLO Benchmark on yylo.dev · GitHub · npm
Features
- Git-native task management: Store canonical task state in repository files that can be reviewed and versioned with the project.
- Developer-friendly command-line interface: Create, list, search, inspect, update, mark, tag, and archive tasks from a terminal or script.
- Dependency-aware planning: Define blockers, find ready work, detect invalid dependency transitions, and order tasks using calculated scores.
- Reviewable current state and history: Separate current Markdown state from segmented, append-only, hash-chained task history.
- Typed Record store: Manage task, wiki, workflow, artifact, and general Record profiles through an ID-first interface.
- Automation-ready output: Return bounded NDJSON, JSON, XML, or table output for people, shell scripts, coding agents, and CI systems.
- Safe concurrent updates: Use task locking, optional expected-revision checks, atomic current-state replacement, and bounded lock waits.
- Disposable query cache: Accelerate list and search operations with SQLite while keeping repository files—not the database—as canonical truth.
- Integrity and recovery tools: Run
doctor, reconciliation, history checks, and cache rebuilds to verify or recover derived state.
- Immutable cold archives: Move eligible completed work into sealed archive packs while retaining exact retrieval and history access.
- Preservation-first migration: Inventory, plan, copy, verify, and receipt legacy wiki or artifact files without deleting the source material.
- Bounded and privacy-aware search: Control scope, projection, result count, and rendered bytes while keeping sensitive payloads out of default summaries.
- Read-only local Record host: Serve bounded Record projections to local tools without exposing mutation or workflow-execution APIs.
- Optional cross-project routing: Register explicitly allowed projects and query another initialized Ledger without unsafe fallback behavior.
- Shell completion: Generate completion for Bash, Zsh, and Fish.
- Open-source Python package: Install from PyPI, inspect the source on GitHub, and use it under the MIT License.
What is YYLO Ledger?
YYLO Ledger is a dependency-aware task tracker that uses your Git repository as the source of truth. It takes task commands such as yy ledger create as input and produces structured output in JSON, NDJSON, XML, or table formats. The tool is developed by YYLO and is available as a pip package, with source code publicly viewable on GitHub.
Key Features
- Durable task truth: Stores task bodies, statuses, responses, tags, relationships, and commit evidence directly in Git, making the repository the authoritative record.
- Dependency awareness: Models blockers, identifies ready work, and topologically orders tasks before dispatch, helping orchestrate complex workflows.
- Agent-friendly output: Supports JSON, NDJSON, XML, and table outputs, so scripts, AI agents, and human operators can consume task data programmatically.
- Retained history: Preserves mutation history and moves completed work into immutable cold archive packs, keeping a permanent, audit-ready record.
Who is it for?
- Engineering teams: Track task status and blockers in the same Git repo as the code, eliminating the need for separate project management tools.
- AI agents and automation: Consume task data via JSON or NDJSON to plan and execute work autonomously, with responses fed back into the ledger.
- Engineering managers: Gain visibility into task intent, history, and dependencies without leaving the command line.
- Open-source maintainers: Manage issues and tasks with full version control and archival of completed work.
How does YYLO Ledger work?
Install the release with pip install yylo-ledger==0.2.1rc1, then start by creating a task: yy ledger create "Verify the release" --status todo. The tool stores task data in the local Git repository and provides commands to query and update tasks. Output can be formatted as JSON, NDJSON, XML, or tables, making it easy to integrate with scripts and agents.
Use cases
- Software release management: Create tasks for release verification, track their status, and archive them as immutable cold packs once finished.
- Dependency-driven planning: Model blockers between tasks and let the tool find ready work in topological order before dispatching to developers or agents.
- Agent task queues: Feed tasks to coding agents via NDJSON output so they can pick up work and report responses back into the ledger.
- Auditable engineering memory: Keep a permanent, Git-versioned history of every task mutation, including commit evidence, for later review or compliance.
FAQ
Is YYLO Ledger free?
The source code is publicly available on GitHub, and installation is via pip, indicating an open-source, free model. The page does not mention any paid tiers.
It supports JSON, NDJSON, XML, and tables for human operators, scripts, and AI agents.
How does it handle task history?
It preserves mutation history and moves completed work into immutable cold archive packs, ensuring no task detail is lost.
Does it integrate with YYLO's other products?
Yes, YYLO Ledger is described as the task-memory foundation of YYLO's engineering-memory direction, and it is designed to be used inside the YYLO control plane.