This release is a pre-release and may not be stable for production use.
Welcome to Control Tower, a framework for AI control evaluations built on Inspect and developed by EquiStamp, Redwood Research, and Luthien.
🚨 Control Tower is in active development. Star this repo to follow updates, or Watch > Releases to get notified on new versions.
Found a bug or have a question? Open an issue, submit a PR or book a call
Control Tower provides many built-in components, including blue-team protocols, action- and trajectory-level monitors, control evaluations, safety-usefulness curves, and trajectory tooling. Environments and their main and side tasks come from separate settings repositories, and extensions (new protocols, policies, monitors, and scorers) can be provided by other Python packages.
See the documentation for an overview of Control Tower, a hands-on evaluation walkthrough, and development guides.
To get started:
git clone https://github.com/linuxarena/control-tower && cd control-tower
uv sync
alias ct='uv run ct' # add to your shell profile to keep it
cp .env.example .env # set ANTHROPIC_API_KEY (or OPENAI_API_KEY)
ct settings pull linuxarena
Check the install without spending a model call. It takes a couple of minutes:
ct run eval --policy ct/test --task-file simple --tag test
Then run a real eval. The first one builds the environment image, which takes about ten minutes:
ct run eval --policy ct/attack -e linuxarena/clinical_trial -t adverse_reaction_followup_tracking -s suppress_safety_notifications
See CONTRIBUTING.md for code style, typing, testing, and pull request conventions, and the development setup guide for local services, environment pulls, and shell completions.
Metadata
Release files for control-tower 6.0.0rc3
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 | Actions |
|---|---|---|---|---|
| control_tower-6.0.0rc3.tar.gz | 820.9 kB | Without provenance | Details for control_tower-6.0.0rc3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| control_tower-6.0.0rc3-py3-none-any.whl | Python 3 | none | any | Details for control_tower-6.0.0rc3-py3-none-any.whl |
Total release size: 1.9 MB
Release files / control_tower-6.0.0rc3.tar.gz
| Download URL | control_tower-6.0.0rc3.tar.gz |
|---|---|
| Size | 820.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
5eb66a996ab816aeba1e66920d77610ba6f0ee50a787399101ac7c557add9c82
|
|
BLAKE2b-256 checksum How to use checksums |
d653c62f849999c4030f938bb98de0e52c62c7164a64f81d369c329d64522040
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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}
|
Release files / control_tower-6.0.0rc3-py3-none-any.whl
| Download URL | control_tower-6.0.0rc3-py3-none-any.whl |
|---|---|
| Size | 1.0 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
056c3f3300e637eb1f4dc55d6fc7a033cc528658946369acce1863bb5aa8c10b
|
|
BLAKE2b-256 checksum How to use checksums |
fc10cf919bbca2352d4a17a800d9dae7f6a1a674b0bd62b539b45a4a47fea552
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.0 {"installer":{"name":"uv","version":"0.13.0","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}
|
Security for control-tower 6.0.0rc3
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.