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.
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. Emitsreconify.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 schemanow exposes versioned contracts for capabilities, reconciliation results, structured diagnostics, file profiles, config proposals, explanations, and evaluation scenarios. - Structured diagnostics.
--error-format jsonemitsreconify.engine.diagnostic.v1envelopes on stderr, with stable codes, categories, structured details, and remediation suggestions. - Canonical Engine agent skills.
@reconifyhq/skillsnow installs the completereconify-engine-reconcile,reconify-engine-cli,reconify-engine-config,reconify-engine-debug,reconify-engine-performance,reconify-engine-bootstrap, andreconify-engine-ciworkflows, plus deprecatedreconify-*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 deterministicreconify.engine.explanation.v1findings with bounded top exception events, without re-running reconciliation.reconify config infer. Non-interactively proposes a confidence-gatedreconify.yamlfrom two input files: mappings, alternatives, validation counts, and YAML.--outwrites only ready proposals.reconify inspect FILE. Deterministically profiles a CSV, JSON, NDJSON, XLSX, or XLSM file before areconify.yamlmapping exists: format, per-column type inference, and representative sample values.- Global
--agentexecution profile. Defaults errors to structured JSON and reconciliation output to NDJSON withexceptions_only, while preserving explicit flag overrides and rejecting interactive commands with a structured alternative. --fail-if-exceptionsforreconcile. Exits with code4after a completed run if anyamount_diff,timing_diff, or unmatched event was emitted. Superset of--fail-if-unmatched.- Breaking:
left_currency/right_currencycolumns incsvresult output. Per-row events now carry the transaction currency; the columns are inserted afterleft_name/right_name, shifting later columns. Scripts reading the CSV by column position need updating. group_keyadded as the last column inparse --format csvandparse --format table, matching NDJSON and JSON.config check-sourcenow 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-mbflags. one_to_manyreconciliation pass. Matches one left transaction against N right transactions by summing amounts, with ambiguous-group detection and agroup_byfield (defaultreference).many_to_manyreconciliation pass. Matches left and right sets with arbitrary cardinality.duplicate_policyconfig 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 (0success,1unmatched,2validation failure,3fatal error at the time),--fail-if-unmatched, andreconify config schema. - Agent skill installer.
npx @reconifyhq/skillscopies 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_summaryalongside the aggregate summary. - Explicit one-to-one reconciliation passes. Pairs can define
passeswithreference_one_to_oneandname_tokens_one_to_oneto make the matching pipeline explicit. - Fixed:
one_to_manyis 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 validatedreconify.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 isautoor 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/reconifyacross 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 validateas its own command. It existed briefly around 0.1.0 and was later folded away; there’s no standalonevalidatecommand in the current CLI. - Default validation running automatically before
reconcile. --skip-validationand--fail-on-warningflags.- Planned validation categories: parseable dates and amounts, currency consistency, empty sources, high empty-reference rates, date-range overlap, and row-count disparity.