> ## Documentation Index
> Fetch the complete documentation index at: https://docs.reconifyhq.com/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Reconify's API reference is read-only for customer data. Do not invent endpoints or authentication behavior beyond the OpenAPI contract.
> The public OpenAPI document contains only the documented external /v2 contract.

# Changelog

> What shipped in each Reconify release, pulled from the engine repository's changelog.

The headline change in the latest release: `capabilities`, `inspect`, `config infer`, `explain`, `--agent`, `reconcile --auto`, and the published `reconify.engine.*.v1` schemas. An agent can discover what a build supports, profile a file, propose and validate a config, run a reconciliation, and summarize the result, all through versioned JSON with no human reading a manual in between.

See [Run it with an agent](/cli/agents).

The rest of this page is the release history from the engine repository's `CHANGELOG.md`, kept in sync by hand.

## 0.5.0 (2026-08-22)

* **Reconify Engine Agent Protocol v1.** Defines the stable discovery, inspection, configuration, execution, diagnosis, and evaluation contract for agents integrating with an installed Reconify Engine.
* **`reconify capabilities`.** Emits `reconify.engine.capabilities.v1`, so agents and scripts can discover supported commands, formats, matching passes, result modes, schemas, diagnostic codes, and exit codes from the installed binary.
* **Published Engine schemas.** `reconify schema` now exposes versioned contracts for capabilities, reconciliation results, structured diagnostics, file profiles, config proposals, explanations, and evaluation scenarios.
* **Structured diagnostics.** `--error-format json` emits `reconify.engine.diagnostic.v1` envelopes on stderr, with stable codes, categories, structured details, and remediation suggestions.
* **Canonical Engine agent skills.** `@reconifyhq/skills` now installs the complete `reconify-engine-reconcile`, `reconify-engine-cli`, `reconify-engine-config`, `reconify-engine-debug`, `reconify-engine-performance`, `reconify-engine-bootstrap`, and `reconify-engine-ci` workflows, plus deprecated `reconify-*` compatibility adapters.
* **`reconcile --auto`.** Confidence-gated zero-config reconciliation from exactly two input files, with the inferred YAML and mapping confidence embedded in structured run metadata for reproducibility.
* **`reconify explain`.** Reads a JSON, JSON-stream, or NDJSON reconciliation result and emits deterministic `reconify.engine.explanation.v1` findings with bounded top exception events, without re-running reconciliation.
* **`reconify config infer`.** Non-interactively proposes a confidence-gated `reconify.yaml` from two input files: mappings, alternatives, validation counts, and YAML. `--out` writes only ready proposals.
* **`reconify inspect FILE`.** Deterministically profiles a CSV, JSON, NDJSON, XLSX, or XLSM file before a `reconify.yaml` mapping exists: format, per-column type inference, and representative sample values.
* **Global `--agent` execution profile.** Defaults errors to structured JSON and reconciliation output to NDJSON with `exceptions_only`, while preserving explicit flag overrides and rejecting interactive commands with a structured alternative.
* **`--fail-if-exceptions` for `reconcile`.** Exits with code `4` after a completed run if any `amount_diff`, `timing_diff`, or unmatched event was emitted. Superset of `--fail-if-unmatched`.
* **Breaking: `left_currency` / `right_currency` columns in `csv` result output.** Per-row events now carry the transaction currency; the columns are inserted after `left_name` / `right_name`, shifting later columns. Scripts reading the CSV by column position need updating.
* `group_key` added as the last column in `parse --format csv` and `parse --format table`, matching NDJSON and JSON.
* `config check-source` now prints the input file's available column names to stderr when a required column is missing.

## 0.4.1 (2026-07-16)

* **Partition-level parallel reconciliation.** Partition workers process independent partitions concurrently and publish results through a bounded, disk-backed queue, while preserving deterministic final-writer ordering. New `--partition-workers`, `--partition-queue-capacity`, and `--partition-max-chunk-mb` flags.
* **`one_to_many` reconciliation pass.** Matches one left transaction against N right transactions by summing amounts, with ambiguous-group detection and a `group_by` field (default `reference`).
* **`many_to_many` reconciliation pass.** Matches left and right sets with arbitrary cardinality.
* **`duplicate_policy` config field.** Four values: `flag` (default), `keep`, `merge`, `latest`. Applies to both batch and streaming paths.
* **Bounded-memory partitioned reconciliation backend.** Splits large datasets into memory-safe partitions, enabling reconciliation of datasets that exceed available RAM, including across multiple counterpart sources in one pass.
* **Resource-aware index selection.** Automatically selects the memory or disk index backend based on available RAM at runtime; Windows resource probing supported.
* **`--result-mode` (`all`, `exceptions_only`, `summary_only`).** Controls which events are written to output.
* **LLM-agent-ready CLI.** Added `--error-format json`, meaningful exit codes (`0` success, `1` unmatched, `2` validation failure, `3` fatal error at the time), `--fail-if-unmatched`, and `reconify config schema`.
* **Agent skill installer.** `npx @reconifyhq/skills` copies the canonical `.agents/skills/` files into any project.

## 0.3.0 (2026-06-21)

* **Multi-counterpart reconciliation (`rights`).** A pair can reconcile one left source against several ordered counterpart sources, carrying unmatched left rows forward between passes.
* **Per-counterpart output summaries.** JSON, JSON-stream, and NDJSON outputs include source-level breakdowns via `by_source` / `source_summary` alongside the aggregate summary.
* **Explicit one-to-one reconciliation passes.** Pairs can define `passes` with `reference_one_to_one` and `name_tokens_one_to_one` to make the matching pipeline explicit.
* Fixed: `one_to_many` is rejected by config validation in this release. It isn't implemented yet and previously behaved like a silent no-op in batch reconciliation.
* Known limitation at this release: multi-counterpart CLI runs didn't yet support `--audit`, `--right-file`, or token-mode streaming reconciliation.

## 0.2.0 (2026-05-17)

* **`reconify config init`.** Interactive wizard that reads source file headers, asks you to map transaction fields, and writes a validated `reconify.yaml`.
* **Multi-format input parsing.** JSON arrays, NDJSON, and Excel workbooks (`.xlsx`, `.xlsm`), in addition to CSV. Format auto-detected from the file extension when the parser type is `auto` or unset.
* Fixed: trailing content after a JSON array is now rejected with a descriptive parse error instead of being silently ignored.
* Fixed: CSV output fields are sanitized against spreadsheet formula injection (values starting with `=`, `+`, `-`, `@`, tab, or carriage return are escaped).

## 0.1.1 (2026-03-23)

* Fixed: corrected the Go module path to `github.com/reconifyhq/reconify` across all import references.

## 0.1.0 (2026-03-23)

The first release. Core commands (`reconcile`, `parse`, `config validate`, `config check-source`), the three-tier matching algorithm (reference exact match, name-token similarity, duplicate detection), memory and disk index backends, all five output formats, `--audit` and `--deterministic`, and cross-compiled binaries for Linux, macOS (Intel and Apple Silicon), and Windows.

## Not implemented yet

* Standalone `reconify validate` as its own command. It existed briefly around 0.1.0 and was later folded away; there's no standalone `validate` command in the current CLI.
* Default validation running automatically before `reconcile`.
* `--skip-validation` and `--fail-on-warning` flags.
* Planned validation categories: parseable dates and amounts, currency consistency, empty sources, high empty-reference rates, date-range overlap, and row-count disparity.

These move into the CLI and guide pages once they exist in code, not before.
