Skip to main content

Agent-native issue tracker with convention-based project discovery

Project description

Filigree

Agent-native issue tracker with convention-based project discovery.

CI PyPI Python 3.11+ License: MIT

What Is Filigree?

Filigree is a lightweight, SQLite-backed issue tracker designed for AI coding agents (Claude Code, Codex, etc.) to use as first-class citizens. It exposes 43 MCP tools so agents interact natively, plus a full CLI for humans and background subagents.

Traditional issue trackers are human-first — agents have to scrape CLI output or parse API responses. Filigree flips this: agents read a pre-computed context.md at session start, claim work with optimistic locking, follow enforced workflow state machines, and resume sessions via event streams.

Filigree is single-project and local-first. No server, no cloud, no accounts. Just a .filigree/ directory (like .git/) containing a SQLite database, configuration, and auto-generated context summary.

Key Features

  • MCP server with 43 tools — agents interact natively without parsing text
  • Full CLI with --json output for background subagents and --actor for audit trails
  • Workflow templates — 24 issue types across 9 packs with enforced state machines
  • Dependency graph — blockers, ready-queue, critical path analysis
  • Hierarchical planning — milestone/phase/step hierarchies with automatic unblocking
  • Atomic claiming — optimistic locking prevents double-work in multi-agent scenarios
  • Pre-computed contextcontext.md regenerated on every mutation for instant agent orientation
  • Minimal dependencies — just Python + SQLite + click (no framework overhead)
  • Session resumptionget_changes --since <timestamp> to catch up after downtime

Quick Start

pip install filigree        # or: uv add filigree
cd my-project
filigree init               # Create .filigree/ directory
filigree install             # Set up MCP, CLAUDE.md, .gitignore
filigree create "Set up CI pipeline" --type=task --priority=1
filigree ready               # See what's ready to work on
filigree update <id> --status=in_progress
filigree close <id>

Installation

pip install filigree                     # Core CLI
pip install "filigree[mcp]"              # + MCP server
pip install "filigree[dashboard]"        # + Web dashboard
pip install "filigree[all]"              # Everything

Or from source:

git clone https://github.com/tachyon-beep/filigree.git
cd filigree && uv sync

Entry Points

Command Purpose
filigree CLI interface
filigree-mcp MCP server (stdio transport)
filigree-dashboard Web UI (port 8377)

Why Filigree?

Filigree GitHub Issues Jira TODO files
Agent-native (MCP tools) Yes No No No
Works offline / local-first Yes No No Yes
Structured queries & filtering Yes Yes Yes No
Workflow state machines Yes Limited Yes No
Zero configuration Yes No No Yes
Dependency tracking Yes Limited Yes No

Documentation

Document Description
Getting Started 5-minute tutorial: install, init, first issue
CLI Reference All CLI commands with full parameter docs
MCP Server Reference 43 MCP tools for agent-native interaction
Workflow Templates State machines, packs, field schemas, enforcement
Agent Integration Multi-agent patterns, claiming, session resumption
Python API Reference FiligreeDB, Issue, TemplateRegistry for programmatic use
Architecture Source layout, DB schema, design decisions
Examples Runnable scripts: multi-agent, workflows, CLI scripting, planning

Priority Scale

See Workflow Templates — Priority Scale for the full priority definitions (P0–P4).

Development

Requires Python 3.11+. Developed on 3.13.

git clone https://github.com/tachyon-beep/filigree.git
cd filigree
uv sync --group dev

make ci              # ruff check + mypy strict + pytest
make lint            # Ruff check + format check
make format          # Auto-format with ruff
make typecheck       # Mypy strict mode
make test            # Pytest
make test-cov        # Pytest with coverage (fail-under=85%)

Key Conventions

  • Ruff for linting and formatting (line-length=120)
  • Mypy in strict mode
  • Pytest with pytest-asyncio for MCP server tests
  • Coverage threshold at 85%
  • Tests in tests/, source in src/filigree/

License

MIT — Copyright (c) 2026 John Morrissey

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

filigree-1.0.0.tar.gz (330.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

filigree-1.0.0-py3-none-any.whl (112.4 kB view details)

Uploaded Python 3

File details

Details for the file filigree-1.0.0.tar.gz.

File metadata

  • Download URL: filigree-1.0.0.tar.gz
  • Upload date:
  • Size: 330.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for filigree-1.0.0.tar.gz
Algorithm Hash digest
SHA256 4d69634cf262b2013d80f798ccd26b325e3fc31bf7cee0515e924067a1b729fc
MD5 bad01175a7693feb1701c570db636094
BLAKE2b-256 a4fe198dec1e3058fe8701c0fc52678d7322bbf40355444c7143af3c34be55f5

See more details on using hashes here.

Provenance

The following attestation bundles were made for filigree-1.0.0.tar.gz:

Publisher: release.yml on tachyon-beep/filigree

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file filigree-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: filigree-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 112.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for filigree-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 45835281dacee20aad42e19707e11515fef61699e6f26f17aca0281ff7640b38
MD5 572048f163f2d52c7f36a6dc0f97d131
BLAKE2b-256 0927268b88468ef2f71f4566f6d5bc3e7327b50e3e86142637aacdc50fb039aa

See more details on using hashes here.

Provenance

The following attestation bundles were made for filigree-1.0.0-py3-none-any.whl:

Publisher: release.yml on tachyon-beep/filigree

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page