Docs menu

Data arrays

The Data Array Engine declares arrays in .ags/data-arrays.yml: where the data lives, how to locate it, how to order it, and what uniqueness key to use. Enforcement fails closed on violations; normalize planning tells the agent exactly how to rewrite the list.

Configure an array

.ags/data-arrays.yml yaml
schemaVersion: 1
arrays:
  - id: mcp-tools
    path: config/mcp-tools.json
    locator:
      jsonPath: tools
    order: alpha
    uniqueBy: "$value"
    itemKind: string
graphArtifact: docs/data-array-map/latest.json
  • path — file that holds the array
  • locator.jsonPath — where inside the file the array sits
  • order — e.g. alpha
  • uniqueBy — expression for dedupe ($value for string lists)
  • itemKind — expected element type

MCP tools

ToolDoes
array_getRead declared arrays / graph
array_validateValidate shape without enforcing write policy
array_enforceFail on order / dupes / shape issues
array_plan_normalizeReturn a concrete rewrite plan the agent can apply
Example calls json
// MCP tool: array_enforce
{ "arrayId": "mcp-tools" }

// MCP tool: array_plan_normalize
{ "arrayId": "mcp-tools" }

Gate

gate.array plugs into the same enforcement / CI path as other engines. Sentinel can fire a reflex.array_enforce remediation hint when arrays fail mid-session.

Related: Canonicalization · Showcase · Examples.

AGS documentation