Troven
Troven is a Git-native CLI for tracking change intents and speculative development in software projects.
It maintains both positive knowledge (accepted changes) and rejection knowledge (dead ends, discarded hypotheses, benchmark findings) in structured, conflict-free records.
The Four Verbs
| Command | Action |
|---|---|
troven create <name> [--from <base>] |
Start a new troven worktree and initialize its record. |
troven open [<id>] |
Open an active or rejected troven in a worktree. |
troven accept [<id>] [--into <branch>] |
Fast-forward merge changes into target branch, recording outcome. |
troven reject [<id>] |
Archive branch to refs/archive/troven/<id>, recording rejection verdict. |
Exploration & Visibility
| Command | Action |
|---|---|
troven list [--status <state>] |
Hierarchical DAG view of all active, accepted, and rejected trovens. |
troven show [<id>] |
Print full markdown record for a troven. |
Installation
# Editable install via pip or uv:
pip install -e .
# or
uv tool install --editable .
Record Format (.troven/<id>.md)
Every troven is backed by a conflict-free markdown file:
---
version: 1
id: 2026-08-30-fast-lexer-simd
parent: 2026-08-30-fast-lexer
forked_from: null
status: active
base_branch: master
base_commit: 8f3c1a2d
target_ref: null
created_at: "2026-08-30T14:22:00-03:00"
resolved_at: null
---
## Summary
<!-- REQUIRED before accept or reject. Agent or user fills this in. -->
---
## Details
<!-- Optional append-only log. -->
Metadata
Release files for troven 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| troven-0.1.1.tar.gz | 19.4 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| troven-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 42.8 kB
Release files / troven-0.1.1.tar.gz
| Download URL | troven-0.1.1.tar.gz |
|---|---|
| Size | 19.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bfb32a37c0a9c7f650629c7be813b9ba63ef947578d054a4cfeed730f63a0a09
|
|
BLAKE2b-256 checksum How to use checksums |
92a834955c3cb19b1ac35fbf557def4e7f23345d372b3ab9cf467b5390ae0c70
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Omarchy","version":"4.0.0.r1951.g943d2fc","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / troven-0.1.1-py3-none-any.whl
| Download URL | troven-0.1.1-py3-none-any.whl |
|---|---|
| Size | 23.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3bf379136173483f4a4af9eff8e3a86399e01e688c7ad8ba479be26fee6454c9
|
|
BLAKE2b-256 checksum How to use checksums |
316ea48e2a6fd0c116a7944f982775c046fdc87c6167258eba478a244ddc5a76
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Omarchy","version":"4.0.0.r1951.g943d2fc","id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|