This release is a pre-release and may not be stable for production use.
Tribune
AI code/PR review agent. Fetches a pull request, asks an LLM to review it, posts inline comments + a verdict back to the VCS.
Status: alpha, live on PyPI as
tribune-agent==0.1.0a1. Standalone: no inter-package runtime deps. GitHub + GitLab fully implemented in 0.1.0a1; Bitbucket lands in 0.1.0a2; Azure DevOps in 0.1.0a3.
What it does
tribune review https://github.com/owner/repo/pull/42
Tribune fetches the PR, asks your LLM to review the diff, then posts:
- Inline comments anchored to specific file + line, tagged severity (blocker / warning / nit) and category (bug / security / performance / test / style / docs / design).
- A top-level summary with a verdict (approve / request_changes / comment-only).
You can also run --no-post to print the review to your terminal without touching the PR.
Why this exists
ThinkNext ships an OSS agentic SDLC stack:
| Stage | Tool |
|---|---|
| Idea to code | Cascade (human-gated) or Relay (autonomous) |
| Code to review | Tribune (this repo) |
| Code to tested running app | Sentinel |
Tribune is the only piece that touches every PR, regardless of who wrote it. Human, Cascade, Relay, Copilot, anything else.
Install
pip install 'tribune-agent[anthropic]' # or [openai], [google], [claude-code], [all]
Configure
# LLM provider
tribune configure llm claude_code --set-default
# Or use a key-based provider:
tribune configure llm anthropic --key sk-ant-xxx --set-default
# VCS provider (token needs PR read + comment write scopes)
tribune configure vcs github --token ghp_xxx --set-default
Credentials live at ~/.config/tribune/config.yaml (mode 0600).
Run
# Print the review without posting (useful for dogfooding):
tribune review https://github.com/owner/repo/pull/42 --no-post
# Post the review back to the PR:
tribune review https://github.com/owner/repo/pull/42
What ships in 0.1.0a1
| Capability | Status |
|---|---|
| GitHub PRs (read + inline comments + review) | Full |
| GitLab MRs (read + discussions + approve) | Full |
| Bitbucket PRs | Stub (lands in 0.1.0a2) |
| Azure DevOps Repos PRs | Stub (lands in 0.1.0a3) |
| Multi-LLM via vendored client (Anthropic / OpenAI / Google / Claude Code / Ollama) | Full |
| Diff chunking for large PRs | Full |
| Skip lockfiles, removed files, binaries | Full |
| Structured findings (severity + category + line anchor + optional suggestion) | Full |
| GitHub Actions / GitLab CI / Bitbucket Pipelines / Azure Pipelines wrappers | Planned 0.1.0a2 |
Per-repo tribune.yaml (rules to apply, paths to skip, custom prompt) |
Planned 0.1.0a2 |
How it differs from existing tools
| CodeRabbit / Greptile | GitHub Copilot review | Tribune | |
|---|---|---|---|
| Multi-VCS (GitHub + GitLab + Bitbucket + Azure) | Limited | GitHub only | Yes |
| Self-hosted (your code stays on your network) | No | No | Yes |
| Bring your own LLM key | No | No | Yes |
| Free for individuals | Partial | Subscription | Yes |
| Open source | No | No | Yes |
License
MIT. See LICENSE.
About
Built and maintained by ThinkNext Software Solutions, alongside Cascade, Relay, and Sentinel.
Metadata
Release files for tribune-agent 0.1.0a1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| tribune_agent-0.1.0a1.tar.gz | 34.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| tribune_agent-0.1.0a1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 77.7 kB
Release files / tribune_agent-0.1.0a1.tar.gz
| Download URL | tribune_agent-0.1.0a1.tar.gz |
|---|---|
| Size | 34.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
074e609fbb5f6e1f68b72b700c0e5ad8f94fe4c7fee5831aac2da6070b5438af
|
|
BLAKE2b-256 checksum How to use checksums |
187e0969725f3da713185822a9e21e8ba007c18254c8e2f7647dfe620c67235a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Release files / tribune_agent-0.1.0a1-py3-none-any.whl
| Download URL | tribune_agent-0.1.0a1-py3-none-any.whl |
|---|---|
| Size | 43.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b1cb693a07acb17d6e5b42cce2b66c24cd157604f6308e06d60b4b5852a22614
|
|
BLAKE2b-256 checksum How to use checksums |
62e381f462ebef7de99b0bc8ce31d96d94e82dfa1182522139ade9f96ef281e7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.11.15
|
Security for tribune-agent 0.1.0a1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.