# xspec ## Docs - [xspec build and check: Build and Validate](https://xspec.mintlify.app/cli/build-check.md): Reference for xspec build (parse, validate, generate) and xspec check (full validation including staleness and policy) with the complete findings catalog. - [xspec coverage: Measure Requirement Coverage](https://xspec.mintlify.app/cli/coverage.md): Reference for xspec coverage: run coverage profiles, view covered and uncovered nodes with shortest covering paths, and gate CI on requirement coverage. - [xspec ids and show: Inspect Requirements](https://xspec.mintlify.app/cli/ids-show.md): Reference for xspec ids (list all requirement IDs with optional tree view) and xspec show (print full node detail including hashes, edges, and text). - [xspec impact: Track Changes Across the Graph](https://xspec.mintlify.app/cli/impact.md): Reference for xspec impact: compare your workspace against a git baseline to identify changed requirements and directly or transitively impacted code. - [xspec CLI Reference: Commands and Conventions](https://xspec.mintlify.app/cli/overview.md): Complete reference for xspec CLI conventions: global flags, argument rules, exit codes, output streams, freshness model, and concurrency guarantees. - [xspec query: JSON Graph Access for Scripts](https://xspec.mintlify.app/cli/query.md): Reference for all xspec query subcommands: node, nodes, edges, subtree, ancestors, and reachable — JSON-native graph access for scripts and automation. - [xspec rename and move: Safe Refactoring](https://xspec.mintlify.app/cli/rename-move.md): Reference for xspec rename (rename a requirement ID with full reference rewriting) and xspec move (relocate files or sections with journal tracking). - [xspec review: Staged Review Session Commands](https://xspec.mintlify.app/cli/review.md): Reference for xspec review subcommands: create, list, status, next, show, split, resolve, and export — strategies, resolve statuses, and scripting tips. - [How xspec Measures Requirement Coverage Precisely](https://xspec.mintlify.app/concepts/coverage-model.md): xspec coverage is graph reachability, not annotation. Learn how profiles define required nodes, which edges count, and how to gate CI with --check. - [How xspec Uses Hashes to Track Requirement Changes](https://xspec.mintlify.app/concepts/hashes-and-identity.md): xspec gives every requirement node four distinct hashes so that content, structural, and upstream dependency changes are each tracked independently. - [Structuring Requirement IDs and Identities in xspec](https://xspec.mintlify.app/concepts/requirement-ids.md): Requirement IDs in xspec are structural dot-paths. Learn the segment rules, full identity format, and naming conventions that keep your graph valid. - [Understanding the xspec Project Dependency Graph](https://xspec.mintlify.app/concepts/spec-graph.md): xspec parses MDX spec files and builds a typed, queryable dependency graph connecting requirements to code — powering coverage, impact, and review. - [Installing xspec: Build and Link from Source](https://xspec.mintlify.app/installation.md): Install xspec on Node.js 22+: clone the repository, build from source, and put the CLI on your PATH using npm link or a direct path invocation. - [What is xspec and Why It Matters](https://xspec.mintlify.app/introduction.md): Understand xspec's core model — typed requirement references, a graph-based dependency model, reachability coverage, and hash-based impact analysis. - [Get Started with xspec: Install and First Coverage](https://xspec.mintlify.app/quickstart.md): Install xspec from source, create a config, write your first spec, reference it from TypeScript, and measure coverage — all in under ten minutes. - [Setting Up TypeScript Compiler for xspec Modules](https://xspec.mintlify.app/typescript/compiler-setup.md): Configure TypeScript to typecheck and emit xspec-generated modules correctly, with guidance on tsconfig, compile-in-place, ESM vs CJS, and linting expression statements. - [Importing xspec-Generated Modules into TypeScript](https://xspec.mintlify.app/typescript/importing-specs.md): Learn how to import xspec-compiled spec modules into TypeScript, access nodes via dot and bracket notation, and use type-only imports. - [Requirement Markers and text() in TypeScript](https://xspec.mintlify.app/typescript/markers-and-text.md): Understand how requirement markers record graph edges, how text() retrieves node content at runtime, the rules governing both, and how code locations are attributed. - [Measuring and Gating Requirement Coverage](https://xspec.mintlify.app/workflows/coverage.md): Run coverage profiles to find which requirements are reachable from your boundary nodes, gate CI on uncovered items, and turn gaps into tracked review sessions. - [Analyzing the Impact of Specification Changes](https://xspec.mintlify.app/workflows/impact-analysis.md): Use xspec impact to discover which requirements, ancestors, and code locations are affected by spec changes relative to any git baseline. - [Renaming and Moving Requirements Safely](https://xspec.mintlify.app/workflows/refactoring.md): Use xspec rename and xspec move to restructure your specification graph without breaking baselines, reviews, or cross-file references. - [Running Staged Review Sessions with xspec](https://xspec.mintlify.app/workflows/reviews.md): Create durable, structured review checklists from impact reports, coverage gaps, or full audits, then work through them item by item at your own pace. - [Managing xspec Workspace Files with Git](https://xspec.mintlify.app/workflows/workspace-files.md): Understand which xspec output files are derived vs durable, what to commit, how to configure .gitignore, and how staleness detection works. - [Configuring an xspec Project with xspec.config.ts](https://xspec.mintlify.app/writing-specs/configuration.md): Reference for xspec.config.ts: static-parsing rules, specs and code groups, markdown output, coverage profiles, policy rules, selectors, and glob syntax. - [Declaring Dependencies Between Requirements](https://xspec.mintlify.app/writing-specs/dependencies.md): Use the d prop and {text()} embedding to link requirements across files, understand hash behavior, enforce static references, and avoid import cycles. - [Writing Requirement Specs in MDX with xspec](https://xspec.mintlify.app/writing-specs/mdx-syntax.md): Learn to write xspec requirement documents in MDX: the section tag, allowed constructs, nesting, Markdown compilation, and own vs subtree text. - [Using Tags and Coverage Attributes in Specs](https://xspec.mintlify.app/writing-specs/tags-and-coverage.md): Annotate requirement nodes with tags and the coverage prop to filter coverage profiles, drive policy selectors, and opt nodes out of coverage measurement.