product

stable

File-based knowledge graph for features, ADRs, and test criteria — spec-to-implementation loop for agent-driven development

Author: Poul Kjeldager
Usage: product <command> [options]
Platform: linuxmacoswindows
Category: development

Examples

$ product init

Initialize a .product/ knowledge graph in the current repo

$ product context FT-001 --depth 2

Assemble the full context bundle for a feature

$ product verify FT-001

Run the feature's test criteria and update statuses

product (Product CLI)

product is a Rust CLI and MCP server that manages a file-based knowledge graph of features (FT-XXX), architectural decisions (ADR-XXX), and test criteria (TC-XXX). It assembles precise LLM context bundles from the graph and orchestrates the full spec-to-implementation loop — author, implement, verify.

Installation

Linux / macOS

curl -fsSL https://agentics.dk/install/product-cli.sh | bash

Windows (PowerShell)

irm https://agentics.dk/install/product-cli.ps1 | iex

The script detects your OS/architecture, verifies the sha256 checksum, installs the product binary to ~/.local/bin (or %LOCALAPPDATA%\Agentics\bin), and puts it on your PATH. Pin a version with VERSION=0.1.x.

Core concepts

  • Features (FT-XXX) — what to build, linked to decisions and tests
  • ADRs (ADR-XXX) — architectural decisions with scope and domain
  • Test criteria (TC-XXX) — scenario/invariant/chaos/exit-criteria tests with configured runners

The graph is derived: it is rebuilt from YAML front-matter on every invocation — no database, everything lives in your repo as markdown.

Typical loop

product init                      # scaffold .product/ in a repo
product author                    # author the spec graph interactively
product implement FT-001          # spawn an agent with the exact context bundle
product verify FT-001             # run TC runners, update statuses
product gap check                 # find spec gaps before committing

MCP server

product mcp exposes the same graph operations as MCP tools (stdio or HTTP), so coding agents can query context, update statuses, and validate changes directly.