Badger
Badger is TestifySec's coding agent for networks that keep their code, tickets and models inside
the boundary: classified enclaves, air-gapped labs, and regulated programs. It is a maintained
fork of OpenCode (MIT) with a small patch series under
testifysec/.
A managed Badger build differs from upstream in three ways:
- One compiled policy. The managed build compiles its configuration in. No environment variable, flag, user setting or repository file can turn the policy off or widen it.
- One model route. Every model request leaves through a model gateway that the administrator runs. The gateway holds the provider credential; the workstation holds none.
- Signed configuration. What a workstation may run is described by a profile that an administrator signs. The gateway and the session broker refuse a profile that is unsigned, expired, assigned to another deployment, or below the minimum sequence the build trusts.
Badger also labels what it reads. Each connector has one classification, set by the
administrator, and every result it returns carries that marking. The session will refuse to send
data to a destination accredited below what it has read. The first half is on main; the second
is specified and not built. The
classification page says exactly which part is which.
Badger is a development preview. There is no published binary release and no signed release artifact yet. Several features described here are in open pull requests; each page marks them as In development and names the pull request. Publishing the source does not establish runtime isolation, a compliance qualification or an authorization.
What do you need to do?
Run Badger as a developer
Start a session against your administrator's gateway and work in a repository.
Administer Badger
Decide what every workstation may run, with what model, against which services.
- Configure the model gateway
- Install the management portal offline
- Author, approve and publish a profile
- Enroll a device
Connect Jira, Confluence or GitLab
Let the agent read your enclave's services as the signed-in developer, with a marking on every result.
Assess the security architecture
Read the trust boundaries, what is enforced today, and what is still open.
- Read the architecture and trust boundaries
- Read the no-write-down guarantee and its status
- Run the conformance suites yourself
- Check the NIST SP 800-53 control alignment
- See who is responsible for what, and what IL6 means here
How the pieces fit
| Piece | What it does | Status |
|---|---|---|
| Managed Badger build | The OpenCode agent and terminal UI with the policy compiled in | Available on main |
| Model gateway | Holds the provider credential, checks the signed profile and writes an audit record before every model request | Available on main |
| Signed profile admission | Verifies a profile's signature, assignment, validity window and sequence | Available on main (prototype trust input) |
| Connectors | Jira, Confluence and GitLab tools, each locked to one service | Available on main; not yet loadable by a managed session |
| Classification markings | One administrator-set marking per connector, on every result | Available on main |
| Management portal | Offline service where administrators manage users and sign and assign profiles | Available on main (devices, activations and two-person signing not built) |
Reference generated from the product documentation. Match commands and support details to your installed release.