The primitives agents were missing.
BinSentry gives every ephemeral artifact an identity, a policy, and a trail — without making you rewrite your agent.
Core primitives
Typed containers for ephemeral artifacts with content hash, TTL, and sensitivity.
Producer, tool, tenant, tags, and arbitrary key/value provenance.
Declarative rules for freshness, access, residency, and redaction.
Where a bin lives — memory, Redis, S3, your own object store.
A DAG of bins, tools, and runs you can query, replay, and audit.
import { bin } from "@binsentry/sdk";
const search = await bin.create("search.results.competitor-pricing", {
ttl: "90s",
sensitivity: "public",
tags: ["search", "pricing"],
data: results,
});
// later — gated by freshness + tenant policy
const fresh = await bin.read(search.id);policies:
- name: freshness.gate
match: { tag: search }
require: { age_lt: 90s }
- name: tenant.isolation
match: { all: true }
require: { tenant_eq: ${run.tenant} }
- name: redaction.pii
match: { sensitivity: internal }
apply: { redact: ["email", "ssn"] }MVP vs roadmap
What you can use today vs what's landing next.
| Feature | MVP (alpha) | Roadmap |
|---|---|---|
| Bin SDK (TS / Python) | ||
| Policy engine (YAML) | ||
| OpenTelemetry export | ||
| Run timeline + replay | ||
| Bin diff viewer | ||
| Managed object store | ||
| Cross-run lineage search | ||
| Tenant isolation guarantees | ||
| Compliance export (SOC2/HIPAA) |
A run, end to end.
Front-end simulated. Click events for details, replay the timeline, or diff two bin versions.
See a run in motion
Generate a sample agent run to inspect bin events, policy checks, and replay the timeline.
See it in your own stack.
Drop the SDK into one agent. We'll help you stand up policies in an afternoon.