Skip to main content

ADR Architecture Kit

ADR Architecture Kit helps teams keep architecture decisions as validated, machine-readable records and gives tools a dependable way to inspect them. Python and TypeScript/Node are peer public hosts over the same language-neutral semantic authority. Choose the host that fits your application; the installed capability manifest is the current source of truth for what that release supports.

Install

Python 3.14+:

pip install adr-architecture-kit

TypeScript/Node 20+:

npm install @system-of-thought/adr-kit

Validate an architecture repository

Both hosts can validate a project containing PROJECT.yaml and adrs/.

Python:

from pathlib import Path

from adr_kit.api import ValidationRequest, capabilities, validate_architecture

project_root = Path("/absolute/path/to/project")
print(capabilities().as_dict())

result = validate_architecture(ValidationRequest(project_root, cross_references=True))
for diagnostic in result.diagnostics:
    print(diagnostic.severity, diagnostic.code, diagnostic.message)
if not result.success:
    raise SystemExit(1)

Node:

import { capabilities } from "@system-of-thought/adr-kit";
import { validateArchitecture } from "@system-of-thought/adr-kit/node/governance";

const projectRoot = process.argv[2] ?? process.cwd();
console.log(capabilities());

const result = await validateArchitecture({
  project_root: projectRoot,
  cross_references: true,
});
for (const diagnostic of result.diagnostics) {
  console.log(diagnostic.severity, diagnostic.code, diagnostic.message);
}
process.exitCode = result.success ? 0 : 1;

The Python facade is adr_kit.api. The Node package exposes browser-safe entry points at its root and explicit filesystem-backed Node entry points under @system-of-thought/adr-kit/node. The browser profile is deliberately constrained: it does not provide filesystem-backed repository operations and is not a third peer filesystem host.

Discover the installed capability surface

Do not copy a version or operation inventory into an integration. Ask the installed package:

from adr_kit.api import capabilities

manifest = capabilities()
print(manifest.package_version)
print(manifest.operations)
print(manifest.supported_authoring_domain_versions)
print(manifest.authoring_capabilities)
import { capabilities } from "@system-of-thought/adr-kit";

const manifest = capabilities();
console.log(manifest.package_version);
console.log(manifest.host_operations);
console.log(manifest.supported_authoring_domain_versions);
console.log(manifest.authoring_capabilities);

Capability discovery is local and deterministic. It reports supported schema, contract, host, and browser surfaces for the installed release. ADC 1.0 discovery is descriptive, while ACC 1.0 construction is a detached, read-only candidate operation. Neither API persists files, mutates Git, or writes a repository.

Construct detached authoring candidates

Both public hosts accept the exact governed ACC 1.0 request and return the complete Rust/WASM-produced result. The request below assumes acc_request and qualified_basis were supplied by the consumer from the frozen ACC contract.

Python:

from adr_kit.api import AuthoringRequest, construct_authoring_set

request = AuthoringRequest(
    request=acc_request,
    basis=qualified_basis,
    operation="construct_authoring_set",
)
result = construct_authoring_set(request)
print(result.outcome)
for diagnostic in result.diagnostics:
    print(diagnostic.severity, diagnostic.code)
print(result.candidate_artifacts)  # detached candidate bytes; no files are written

Node:

import { constructAuthoringSet } from "@system-of-thought/adr-kit/node";

const result = await constructAuthoringSet({
  contract_family: "authoring_construction",
  contract_version: "1.0",
  operation: "construct_authoring_set",
  request: accRequest,
  basis: qualifiedBasis,
});
console.log(result.outcome);
for (const diagnostic of result.diagnostics) console.log(diagnostic.severity, diagnostic.code);
console.log(result.candidate_artifacts); // detached candidate bytes; no files are written

Rejected, Unavailable, and Unresolved are returned as governed results; host and protocol failures raise exceptions. Validation is exposed as validate_authoring / validateAuthoring with the same request shape.

Choose the next guide

  • Python SDK recipes — validate, discover authoring contracts, inspect repositories, work with semantic contracts, and materialize an exact qualified basis.
  • Node package guide — Node usage, package entry points, browser qualification, and cross-language distribution.
  • Documentation router — choose a task-oriented path for usage, authoring, contracts, or contribution.
  • Schema taxonomy — exact schema families and authority boundaries.
  • Public stability policy — stable, provisional, and internal surfaces.

The checked-in examples/public-v1 tree is retained as stable ADR v1.0 compatibility evidence. It is not the recommended modern first-use path; start with the host examples above and the public SDK guides.

Authority and contribution

Accepted ADRs, canonical schemas, and promoted contracts define ADR-Kit meaning. Generated indexes and normalized models are derived views. The kit owns authoring validation and repository-facing projections; ste-spec owns assigned cross-repository contracts, ste-runtime owns runtime observation and evidence, and ste-kernel owns admission.

For contributor and AI-first repository orientation, read the generated SYSTEM-OVERVIEW.md and CONTRIBUTING.md. For authoring-time versus runtime boundaries, see AUTHORING-SYSTEM.md.

ADR-Kit is pre-1.0 Alpha. Python and npm packages share one release lineage; individual operations remain governed by their compatibility contracts and qualified host profiles.

Metadata

Release files for adr-architecture-kit 0.12.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for adr-architecture-kit 0.12.1
File Size Uploaded Provenance
adr_architecture_kit-0.12.1.tar.gz 1.6 MB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for adr-architecture-kit 0.12.1
File Interpreter ABI Platform
adr_architecture_kit-0.12.1-py3-none-any.whl Python 3 none any Details

Total release size: 3.1 MB

Release files / adr_architecture_kit-0.12.1.tar.gz

Download URL adr_architecture_kit-0.12.1.tar.gz
Size 1.6 MB
Tags Source
SHA-256 checksum
How to use checksums
d88676fd94d36c5ab1ad8d3f811c4b840029137503770dfca3aa166e16c27397
BLAKE2b-256 checksum
How to use checksums
e4252d30a0e1b0d5de6775fef1e5934f2319ce74ca484c4c127d49c34a81b323
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Release files / adr_architecture_kit-0.12.1-py3-none-any.whl

Download URL adr_architecture_kit-0.12.1-py3-none-any.whl
Size 1.6 MB
Tags Python 3
SHA-256 checksum
How to use checksums
6d5130510a0d3814aab4fcee5204b9dab9501de1b9f69aecf8a116c7449d4d25
BLAKE2b-256 checksum
How to use checksums
807258be26a4e07956182356961f53b0ef6dc7396a8ef0e51026caa8c6baac85
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

Security for adr-architecture-kit 0.12.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for adr_architecture_kit-0.12.1.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Oct 3, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page