Skip to main content

living-architecture

A Claude Code plugin (la) plus its command-line tools that keep agent-written code from drifting into spaghetti, and keep each change on a reviewed plan.

  • An architecture that is enforced, not just drawn. A LikeC4 model maps nodes to code modules, and its arrows decide which module may import which. la-arch-check measures the real imports against the model. Grandfathered arrows are marked #legacy and only ever shrink. Each node carries arc42 principles with status tags, and agents treat the model and the principles like tests: changes need your approval.
  • A four-stage PR flow. /la:pr interviews you into a Codex-reviewed OpenSpec plan, writes the failing tests, implements until they pass, and then loops CI, Codex, CodeRabbit and Sonar reviews until every gate is clean. Each stage resumes from the branch name alone, and the plan is archived with the code.
  • Refactoring without import churn. Python and TypeScript moves and renames rewrite every import automatically, and the type checker proves nothing was left dangling.

The longer version is in Living architecture, explained.

Install

# the plugin
/plugin marketplace add MotleyAI/living-architecture
/plugin install la@living-architecture

# the commands (la-*, dr-*), pinned to the same version as the plugin, from your repo's ecosystem
uv tool install living-architecture==0.3.3      # Python repos
npm install -g living-architecture@0.3.3        # TypeScript/JavaScript repos (Node >= 22)

The commands ship as two twins with one contract: a PyPI package and an npm package of the same name. Each serves its own ecosystem natively, needs nothing from the other in a single-language repo, and calls the other for the other language's files in a mixed repo (details). Skills check that the installed commands match the plugin before they run.

Quick start

In the repo you want to onboard, run:

/la:init

It detects your tracker, test, lint and type-check commands, Codex, Sonar and any existing OpenSpec or architecture setup, then proposes a living-architecture.yaml and asks only about what it cannot detect. It then offers to set up OpenSpec, record the type-check baseline and build the architecture model with /la:arch-init. After that, start each change with /la:pr on a branch named after its issue.

Skills

Skill Purpose
la:init Onboard a repo: detect its tools, write living-architecture.yaml, offer the next setup steps
la:pr Run a change through plan → failing tests → implementation → review
la:arch-init Build the first architecture model from the measured code, then its principles
la:arch-cleanup Retire a batch of #legacy arrows, or carve a new boundary, with verified moves
la:deterministic-refactor Rename or move Python or TypeScript code, proven complete by the type checker

These skills call helper skills that you can also run on their own; see Skills.

Languages

A repo's languages are those with a root marker (pyproject.toml/setup.py; tsconfig.json) and source files, or a commands.typecheck entry, which a language needs when its marker is not at the root (like the web/tsconfig.json below); la-config get languages lists them. The architecture model declares one section per language in architecture/index.yaml, and a mixed repo has both:

python:
  root_package: mypkg                 # the package the python root maps to
  source_root: src                    # optional
typescript:
  root_package: src                   # the directory the typescript root maps to
  source_root: web                    # optional
  tsconfig: web/tsconfig.json         # optional: default the nearest tsconfig.json
legacy_arrows: {baseline: 0}

Pin the architecture check in CI to a release, in your ecosystem's form:

# Python
- uses: astral-sh/setup-uv@c18668ad3cf93ea998bef934396af7bb5c839dc7 # v10.2.0
- run: uvx --no-build --from living-architecture==0.3.3 la-arch-check
# TypeScript
- uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
- run: npx -y -p living-architecture@0.3.3 la-arch-check

Prerequisites

Always: git, bash, gh (authenticated) and jq.

Per repo language (la-doctor checks them):

Language Needs
Python the PyPI twin; basedpyright in the project env for the type-check gate
TypeScript node (>= 22) and npx; the npm twin; tsc in node_modules for the type-check gate

Per gate, as living-architecture.yaml enables it:

Gate Needs
tracker: linear the Linear MCP server
tracker: github nothing beyond gh
openspec: true npx (the OpenSpec CLI)
architecture: true npx (the LikeC4 CLI)
reviewers.codex: true the Codex MCP server (mcp__codex__codex)
Sonar on your PRs the SonarQube MCP server

Documentation

Metadata

Release files for living-architecture 0.3.3

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

Source distribution (sdist)

Source distribution for living-architecture 0.3.3
File Size Uploaded Provenance
living_architecture-0.3.3.tar.gz 107.4 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for living-architecture 0.3.3
File Interpreter ABI Platform
living_architecture-0.3.3-py3-none-any.whl Python 3 none any Details

Total release size: 249.6 kB

Release files / living_architecture-0.3.3.tar.gz

Download URL living_architecture-0.3.3.tar.gz
Size 107.4 kB
Tags Source
SHA-256 checksum
How to use checksums
a523b19cc4083729f2469ed72802c0917bae4079e9799d734a8640b82cac590d
BLAKE2b-256 checksum
How to use checksums
e1383c22d5c46071904fac17457e8e79a0032ca74bfce6fb020ac88d77f42be2
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 23, 2026.

Transparency log

Release files / living_architecture-0.3.3-py3-none-any.whl

Download URL living_architecture-0.3.3-py3-none-any.whl
Size 142.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bb70a3f4eee475465699c411cde7db438224c66f6ec6a94e944c5c45f5335359
BLAKE2b-256 checksum
How to use checksums
559934149b2e07a0eb4079b55bc16579b0cdc181485dc64d1d6c94affdae4f6f
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 23, 2026.

Transparency log

Security for living-architecture 0.3.3

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 living_architecture-0.3.3.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 23, 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.

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