A record built for security review
Grounding an agent in a shared store only helps if the store itself is defensible. Here is what becos records, what it leaves out, how cited sources resolve and how tenants are kept apart — including where the limits are.
What's in the record
- Prompts and the agent's text replies (shell output run with
!and subagent results arrive as prompt text) - Commit id, branch, author
- Changed file paths and the repositories touched
- Commands, command output and code edits (Claude Code and opencode plugins) or code blocks from the agent's replies (Codex plugin) — secret-redacted and size-capped
- Facts distilled from those sessions (decisions, reasons, rejected approaches), plus a dated ledger
Not sent by default
- The agent's
thinkingblocks - Files such as
.env,*.pemandid_rsa*— withheld entirely - Codex plugin: commands, command output and diffs (never sent)
Never returned to your agents
- Repository memory from another tenant — dropped before the model
Commands, output and code edits are on by default. Set VONIC_CAPTURE_CODE, VONIC_CAPTURE_COMMANDS or VONIC_CAPTURE_OUTPUTS to 0 to turn each off (the Codex plugin has only VONIC_CAPTURE_CODE); turning all three off sends prompts, replies and file paths only. VONIC_CAPTURE_THINKING=1 adds the agent's thinking. Secret redaction is pattern-based defence in depth, not a guarantee, so treat a session like anything else you would not paste into a shared document.
How the record is kept checkable and contained
Provenance you can check
A cited ledger event resolves via resolve_event to an exact excerpt of the stored source, with no model in the loop — so a grounded answer can be checked, not just trusted.
Tenant isolation
Repository memory lives under a normalised tenant path, and results are filtered by tenant prefix before content reaches a model. An earlier shared-tenant tool design was retired as a hazard.
Record treated as untrusted
Captured content is treated as untrusted input. The repository ingestion model runs with no tools, and its output schema has no slug, path or tool fields for injected text to set.
Teams adopted coding agents faster than they governed them
Industry numbers, for context. They describe how teams use coding agents today, not becos.
Sources: Black Duck / UserEvidence 2026 (831 engineers) · Stack Overflow 2025 Developer Survey.
Where it lines up with the frameworks
Framing for a controls conversation — not a certification claim. becos has not completed a SOC 2 examination. Clients sign in with per-user OAuth; server-side token verification on the runtime is still in progress.
event_id with tenant, author, repository and time — an attributable record of what an agent was grounded in. Evidence your auditors can use for your own monitoring controls (e.g. CC7.2).event_id keys link a grounded claim back to that event.Get the security narrative early
So the platform team's deal clears review instead of stalling in it.