TL;DR

wedow published tk, a single-file, git-backed CLI ticket system that stores issues as Markdown with YAML front matter. It aims to replace Beads by removing a SQLite dependency and background daemon, offers a migrate-beads command, and is distributed via Homebrew, AUR, or from source.

What happened

wedow released ticket (invoked as tk), a lightweight, git-native issue tracker implemented as a portable Bash script. Designed for agent-driven workflows, tk saves tickets as individual Markdown files with YAML front matter inside a .tickets/ directory, making them easy to inspect and search. The tool supports dependency tracking, linking, basic lifecycle commands (create, start, close, reopen), notes, and a query command that outputs JSON for programmatic use. It is explicitly positioned as a full replacement for Beads and includes a migrate-beads command to import .beads/issues.jsonl. Installation options listed in the repository include Homebrew, the Arch User Repository, or cloning and symlinking the script. Runtime requirements are minimal: coreutils and Bash, with jq required for queries and ripgrep used if available (falls back to grep). The project is MIT-licensed and the repository shows active maintenance, releases, and documentation for agent integration.

Why it matters

  • Eliminates the need for a separate SQLite file or a background daemon, simplifying version control and collaboration.
  • Markdown files with YAML front matter are easier for AI agents and humans to search and parse without large JSONL payloads.
  • Using ticket IDs as filenames enables quick navigation in IDEs and leverages Git history for context.
  • Compact, single-file implementation reduces dependencies and supports POSIX-compatible environments.

Key facts

  • tk is a single portable Bash script distributed in the wedow/ticket GitHub repository.
  • Tickets are stored as individual Markdown files under .tickets/ and include YAML front matter for metadata.
  • The CLI provides commands for create, edit, show, start, close, reopen, status, dep/undep, link/unlink, ls, ready, blocked, closed, add-note and query.
  • A migrate-beads command imports issues from .beads/issues.jsonl to help teams move from Beads.
  • Installation paths documented: Homebrew tap (wedow/tools), Arch AUR package, or cloning the repo and symlinking the script.
  • Runtime requirements: Bash and coreutils; jq is required for the query command; ripgrep (rg) is used if present, otherwise grep is used.
  • Supports partial ticket ID matching (e.g., 'tk show 5c4' can match 'nw-5c46').
  • Repository is MIT-licensed, has releases (latest listed as v0.2.0), and shows community interest (stars and forks recorded).
  • Documentation includes guidance for agent setup (add usage notes to CLAUDE.md or AGENTS.md) and mentions Claude Opus integration.

What to watch next

  • New releases and changelog entries in the repository (project has an established release workflow).
  • Homebrew and AUR package updates to ensure installers remain current.
  • not confirmed in the source

Quick glossary

  • git-backed: A workflow where issue data is stored in files tracked by Git, letting version control provide history and collaboration.
  • Markdown: A lightweight markup language for plain text formatting that is widely used for documentation and notes.
  • YAML front matter: A block of YAML at the top of a text file used to store structured metadata alongside content.
  • daemon: A background process that runs continuously and can manage state or perform tasks without direct user interaction.
  • jq: A command-line JSON processor used to filter, transform, and output JSON data.

Reader FAQ

Is tk intended to replace Beads?
Yes. The project is presented as a full replacement for Beads and includes a migrate-beads command.

How can I install tk?
Installation options documented are Homebrew (brew tap wedow/tools; brew install ticket), Arch AUR (yay -S ticket), or cloning the repository and symlinking the script into your PATH.

What dependencies does tk require?
tk runs on Bash with coreutils available. The query command requires jq; ripgrep (rg) is used if present, otherwise grep is used.

Does tk work with AI agents out of the box?
The repository suggests adding a note to CLAUDE.md or AGENTS.md and notes that Claude Opus picks it up naturally; other models may require additional guidance.

Is tk actively maintained?
The repository shows recent commits, releases, and documentation updates, but long-term maintenance expectations are not confirmed in the source.

ticket The git-backed issue tracker for AI agents. Rooted in the Unix Philosophy, tk is inspired by Joe Armstrong's Minimal Viable Program with additional quality of life features for managing…

Sources

Related posts

By

Leave a Reply

Your email address will not be published. Required fields are marked *