Copy this into your coding agent
Use this prompt in Cursor, Codex, Claude Code or another coding agent:Choose what you send
Ordinary SDK tracing starts with content capture off. The option iscaptureContent in TypeScript, capture_content in Python and Rust, and
CaptureContent in Go. Inputs and outputs are
omitted, and attributes are limited to supported operational metadata. Operation
names, repository references and other metadata can still identify people or
customers; use stable, non-sensitive names.
Enable content capture only for data you are authorized to provide. Supply a
project-specific redact function in your application when additional filtering is
needed, and test with synthetic data before capturing real interactions. Filtering
in your application can remove information before it leaves that application.
Explicit evaluateSystem calls are a separate test path: they capture redacted
test inputs, expected outcomes and execution evidence into a local report even
when ordinary trace content capture is off. Uploading that report requires a
separate publishSystemEvaluation call. Use synthetic cases and inspect the report
before sharing it. See application evaluation.
How redaction works
Each SDK filters enabled content before sending it. Bench applies server-side filtering again before saving submitted event content. It uses field names and pattern matching, without asking a language model to read the content. Built-in filtering is always on.
JSON objects, arrays and JSON encoded inside strings are processed recursively.
Field matching ignores capitalization. Recognized identifiers in JSON keys are
filtered too. Numeric card values are checked, including integral decimal and
exponent representations. Ordinary numbers retain their type and value.
Add your own fields
In SDK → Privacy controls, enter extra JSON field names, separated by commas, then choose Save. For example,customer_ref, account_number removes the values
of those fields from new events. You do not need to enable the built-in filters.
These settings apply to future trace ingestion under your own keys for that
repository and branch. They do not clean previously saved records or configure
every member’s keys, context documents or real app test reports.
What these filters cannot detect
Pattern matching is not complete anonymization. Names in prose, postal addresses, medical details, IPv6 addresses, unfamiliar formats and combinations that identify someone can remain. Matching can also remove legitimate values. API filtering happens after the content reaches Bench. Keep content capture off or use the SDK’sredact function to remove anything that must not leave your app.
Use deletion controls for already stored evidence.

