Skip to main content
Content policies can transform data inline with redact or remove elements from a structured tool result with filter.

Redaction strategies

For partial, keepStart and keepEnd are integers from 0–256. maskCharacter is exactly one character and defaults to *. Non-string targets fail the transformation. hash.saltRef is an identifier used for domain separation, not a literal secret. Equal inputs within the same organization and salt reference produce equal output. fake.subtype accepts:

Structured paths

paths is optional. Without it, Forge transforms the whole value available at the selected checkpoint. With it, Forge transforms 1–64 selected values inside a structured pre_tool input or post_tool result. Supported path syntax:
Paths are 3–512 characters and support:
  • the root $;
  • property segments such as .env;
  • zero-based array indexes such as [0].
Property names begin with a letter or underscore and may contain letters, numbers, _, or -. Wildcards, recursive descent, quoted keys, filters, slices, and negative indexes are not supported. When matching transformations overlap, Forge selects:

Filtering

filter is valid only at post_tool. It removes elements from one structured array while preserving the order of retained elements. Example:
If collectionPath or the predicate path cannot be evaluated, onUnavailable: "allow" returns the original result unchanged. onUnavailable: "block" converts the transformation failure into a blocked outcome. Forge does not coerce comparison types.