Skip to main content

Human-in-the-loop project management for agentic development

Project description

Tillr

CI

Human-in-the-loop project management for agentic software development.

Tillr sits between humans and AI agents. It defines structured iteration cycles with human checkpoints, so agents do the heavy lifting while humans retain steering authority. Everything is captured in a local SQLite database.


Install

# Homebrew
brew tap mschulkind-oss/tap && brew install tillr

# PyPI (works in any Python environment)
pipx install tillr   # or: uvx tillr

# Go
go install github.com/mschulkind-oss/tillr/cmd/tillr@latest

# From source (requires Go 1.24+, Node 22+, pnpm)
git clone https://github.com/mschulkind-oss/tillr.git && cd tillr && just install

Quick Start

# Initialize a project
cd ~/my-project
tillr init my-project

# Add features
tillr feature add "User authentication"
tillr feature add "API rate limiting"

# Start an iteration cycle
tillr cycle start collaborative-design <feature-id>

# Launch the web dashboard
tillr serve

CLI Overview

tillr init <name>               Initialize a new project
tillr status                    Project overview

tillr feature add <name>        Add a feature
tillr feature list              List features (--status, --json)
tillr feature show <id>         Feature details with history

tillr cycle start <type> <id>   Start an iteration cycle
tillr cycle status              Active cycle progress
tillr cycle advance --approve   Advance past a human checkpoint

tillr next --json               Get next work item (for agents)
tillr done --result "..."       Complete current work
tillr fail --reason "..."       Report failure

tillr serve                     Single-project web dashboard
tillr daemon                    Multi-project server daemon

See docs/guides/user-guide.md for the full guide.


Multi-Project Daemon

Run Tillr as a system service managing multiple projects:

# Configure projects
tillr daemon init ~/code/project-a ~/code/project-b

# Install systemd user service
just install-service

# Deploy (build + restart)
just deploy

The daemon serves all projects on a single port with a project switcher in the UI.


Development

just dev        # Backend (air live-reload) + Vite frontend
just check      # Format + lint + test
just build      # Build binary to bin/tillr

See CONTRIBUTING.md for full development setup.


License

Apache 2.0 — see LICENSE.

Project details


Download files

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

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

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

tillr-0.1.1-py3-none-musllinux_1_2_x86_64.whl (15.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

tillr-0.1.1-py3-none-musllinux_1_2_aarch64.whl (14.0 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

tillr-0.1.1-py3-none-manylinux_2_17_x86_64.whl (15.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

tillr-0.1.1-py3-none-manylinux_2_17_aarch64.whl (14.0 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

tillr-0.1.1-py3-none-macosx_11_0_arm64.whl (14.3 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

tillr-0.1.1-py3-none-macosx_10_9_x86_64.whl (15.2 MB view details)

Uploaded Python 3macOS 10.9+ x86-64

File details

Details for the file tillr-0.1.1-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: tillr-0.1.1-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 15.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tillr-0.1.1-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 17479af299ce5ce1913a6d26f8d35f4fa35824deec489a535b05affbd5db827e
MD5 585a116b31335aba20c69772e94e2fbb
BLAKE2b-256 ac9680572418b37770b81023cba2211a1cea52263a97793ca7fccddd2f45f428

See more details on using hashes here.

File details

Details for the file tillr-0.1.1-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: tillr-0.1.1-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 14.0 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tillr-0.1.1-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 4e8edce14559a46a43d2ba31f96564123c3b87671fd6eb9b2306938f90760e0d
MD5 a3d6fa17ae5e397183421e161acb874a
BLAKE2b-256 f3de37561e8cb90c2d03364f5cce1eef33038d3951566b289821d4769f2706ee

See more details on using hashes here.

File details

Details for the file tillr-0.1.1-py3-none-manylinux_2_17_x86_64.whl.

File metadata

  • Download URL: tillr-0.1.1-py3-none-manylinux_2_17_x86_64.whl
  • Upload date:
  • Size: 15.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tillr-0.1.1-py3-none-manylinux_2_17_x86_64.whl
Algorithm Hash digest
SHA256 8cd7de9adb675f3fee4fce8a2d5e5fd3c4760ce7a91d254a2b73c7c2b5d7a105
MD5 5f286e62572551afb8a3c255e3a4e391
BLAKE2b-256 d376ad67819ee4b2bd0bf697ba6f0742f66708b2ce9ac98028a9b85eefdb291c

See more details on using hashes here.

File details

Details for the file tillr-0.1.1-py3-none-manylinux_2_17_aarch64.whl.

File metadata

  • Download URL: tillr-0.1.1-py3-none-manylinux_2_17_aarch64.whl
  • Upload date:
  • Size: 14.0 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tillr-0.1.1-py3-none-manylinux_2_17_aarch64.whl
Algorithm Hash digest
SHA256 3c004b180f36b5b72332d744c152f8bac9c98483fa2854719f090faaf0f94d4a
MD5 9e399d3587c90352049e3f0aec202f72
BLAKE2b-256 eafd4574b80072309e17152665eff4d7bf06cd227e0983242c8634e8170619a2

See more details on using hashes here.

File details

Details for the file tillr-0.1.1-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: tillr-0.1.1-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 14.3 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tillr-0.1.1-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 449d873cab26ab4712250d434af5727e9db8242407f810269d228135d2079894
MD5 4ece121516ea2ca32f59592179312b93
BLAKE2b-256 597aa052c03e4345520e160046485cbdce58d8ab80969e1433c0c8842b1570c9

See more details on using hashes here.

File details

Details for the file tillr-0.1.1-py3-none-macosx_10_9_x86_64.whl.

File metadata

  • Download URL: tillr-0.1.1-py3-none-macosx_10_9_x86_64.whl
  • Upload date:
  • Size: 15.2 MB
  • Tags: Python 3, macOS 10.9+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for tillr-0.1.1-py3-none-macosx_10_9_x86_64.whl
Algorithm Hash digest
SHA256 2fe41c8a885aeff682972d08461262ab707754813a8bfae20d014246d4020c4f
MD5 c1a3bb9320743455527f891ebd1f555d
BLAKE2b-256 518b667353766f2f39b51769b980dae0940b8e5a4e208e8a0360cf2da949b0d8

See more details on using hashes here.

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