Defense Industrial Base

CUI boundary enforcement for AI coding tools.

CMMC Phase 1 self-assessment went live in November 2025. Rye sits between your developers' AI tools and the model providers - enforcing per-workspace routing policy, logging every request with device and developer attribution, and producing audit records that answer what a C3PAO assessor actually asks.

CMMC Phase 1
Nov 2025

Self-assessment is a condition of DoD contract award. Phase 1 covers NIST 800-171r2 compliance across all contractors handling CUI.

DFARS 252.204-7012
CUI in scope

Obligations attach based on the contract clause, not ITAR or EAR classification. If the clause is present, AI coding tool traffic is in scope.

NIST 800-171 3.3
Audit records

3.3.1 requires audit records of user activity on systems that process CUI. AI coding tools that read CUI-adjacent source code are inside that boundary.

Where Rye sits

One checkpoint between the developer and the model provider.

Developer machine
Rye proxy
Destinations
Claude Code
Copilot
Cursor
rye
Secret scanCUI policyDevice authAudit log
ALLOW
Approved providers
anthropic.com, openai.com
BLOCK
CUI-restricted workspace
provider_call = not_sent
All decisions are logged with device identity, developer, workspace path, and policy rule. Per-workspace policy - CUI-marked repos route through the restricted path; other work is unaffected.

C3PAO audit evidence

What the assessor sees. Without Rye and with it.

Without Rye
Standard network log. Proves bytes left the machine. Cannot answer any NIST 3.3 audit question.
timestamp
2026-03-14 09:23:41
src_ip
10.0.4.23
dst
api.anthropic.com:443
method
CONNECT
bytes_out
214,872
developer
not recorded
tool
not recorded
workspace
not recorded
cui_check
not enforced
decision
not enforced
A C3PAO assessor looking at this log cannot identify the developer, the tool, the source repository, whether CUI was present, or whether the request should have been stopped.
With Rye - routine request
Rye decision record for a non-CUI workspace. Every NIST 3.3.1 field is present.
request_id
rye_req_7c4a2b
timestamp
2026-03-14 09:23:41
developer
p.kim
device
mbp-eng-042
tool
claude-code
workspace
src/nav-guidance
cui_match
false
model
claude-sonnet-4-6
provider
anthropic.com
decision
ALLOW
Developer identity, device registration, tool attribution, and workspace context are captured at request time by the local supervisor - not inferred after the fact.
With Rye - CUI-restricted workspace blocked
Request from a workspace tagged as CUI-restricted. Blocked before the provider receives it.
request_id
rye_req_9f1d3c
timestamp
2026-03-14 09:31:07
developer
t.chen
device
mbp-eng-019
tool
copilot
workspace
classified/seeker-fw
cui_match
true
reason
policy.cui_restricted
provider_call
not_sent
decision
BLOCK
provider_call = not_sent is the evidence that the content did not leave the boundary. The block is logged with the rule name and developer attribution, not just an IP address.

NIST 800-171 control mapping

Three control families. Addressed at the network layer.

3.1 - Access Control
3.1.1, 3.1.2, 3.1.3

Per-workspace allow-lists restrict which AI tools may process requests from CUI-marked repositories. Evaluated at the network layer before content reaches the provider.

3.3 - Audit & Accountability
3.3.1, 3.3.2

Every model API request is logged with developer identity, device, workspace, tool, model, request size, and policy decision. Structured for SIEM export and C3PAO review.

3.13 - Communications Protection
3.13.1, 3.13.5

Local proxy evaluates outbound content before it crosses the network boundary. CUI markers and secrets are matched and blocked before reaching the model provider.

Scope control

Enforce where the obligation is. Leave the rest alone.

Rye policy is per-workspace. CUI-marked repositories take the controlled path. Other development work routes normally. The enforcement overhead lands exactly where the DFARS clause puts the obligation.

Air-gapped deployment

Policy engine and audit log on your infrastructure.

For environments where proxy traffic to external infrastructure is not permitted, self-hosted Rye keeps everything inside your boundary. Same controls, no data leaving the enclave. Self-hosted Rye →

Find out where your AI coding tools stand against your CMMC boundary.

We can walk through which DFARS clauses apply to your contracts, where your current AI coding tool posture sits against NIST 800-171, and what a compliant configuration looks like for your team.