Skip to main content
Glama
README.md
<div align="center">

# Mason

### Your agents are creating tech debt. Mason helps you prevent it.

**Remember why decisions were made · Catch outdated guidance · Find what else needs updating**

[![npm version](https://img.shields.io/npm/v/mason-context?style=flat-square&labelColor=334155&color=2563eb)](https://www.npmjs.com/package/mason-context)
[![CI](https://img.shields.io/github/actions/workflow/status/adrianczuczka/mason/ci.yml?branch=main&style=flat-square&labelColor=334155&label=CI)](https://github.com/adrianczuczka/mason/actions/workflows/ci.yml)
[![Monthly downloads](https://img.shields.io/npm/dm/mason-context?style=flat-square&labelColor=334155&color=2563eb)](https://www.npmjs.com/package/mason-context)
[![License](https://img.shields.io/github/license/adrianczuczka/mason?style=flat-square&labelColor=334155&color=64748b)](https://github.com/adrianczuczka/mason/blob/main/LICENSE)

[![Works with Codex](https://img.shields.io/badge/Codex-supported-64748b?style=flat-square&labelColor=334155)](https://github.com/adrianczuczka/mason/blob/main/docs/setup.md)
[![Works with Claude Code](https://img.shields.io/badge/Claude%20Code-supported-64748b?style=flat-square&labelColor=334155)](https://github.com/adrianczuczka/mason/blob/main/docs/setup.md)
[![MCP compatible](https://img.shields.io/badge/MCP-compatible-64748b?style=flat-square&labelColor=334155)](https://github.com/adrianczuczka/mason/blob/main/docs/setup.md#other-clients)
[![Supported platforms](https://img.shields.io/badge/platforms-macOS%20%7C%20Linux%20%7C%20Windows-64748b?style=flat-square&labelColor=334155)](https://github.com/adrianczuczka/mason/blob/main/docs/distribution.md)

</div>

## Get started

Install on macOS or Linux:

```sh
curl -fsSL https://github.com/adrianczuczka/mason/releases/latest/download/install.sh | sh
```

Windows PowerShell:

```powershell
irm https://github.com/adrianczuczka/mason/releases/latest/download/install.ps1 | iex
```

No Node or npm required. Git is required. The installer configures PATH for Bash, Zsh, and Windows. [Platform details](docs/distribution.md) · [npm installation](docs/setup.md#unified-project-setup)

New standard standalone installs update automatically in the background. Updates activate on a future MCP launch after existing Mason MCP servers exit. Run `mason updates` to inspect or change this preference. Existing installations require one manual upgrade and `mason updates enable`. [Update controls](docs/distribution.md#automatic-updates)

Run this in your Git repository (open a new terminal if the installer asks):

```bash
mason setup --host codex
# For Claude Code, use --host claude.
```

Setup connects MCP, hooks, and project instructions. Review your host's trust settings, start a new session, and give your agent a normal task.

Check that Mason is being used:

```bash
mason status
```

Setup uses your installed `mason` command—no project launch scripts or runtime copies. Status distinguishes configuration from observed use. [Setup and upgrades](docs/setup.md#unified-project-setup) · [Disconnect a project](docs/setup.md#disconnect-a-project) · [Other MCP clients](docs/setup.md#other-clients)

### Try a check without setup

```bash
mason audit --dir .
mason review --dir . --base origin/main
```

The audit checks claims in README and agent instruction files throughout the repository. The review checks committed changes against your chosen base. Both are read-only and need no model calls.

## What Mason catches

| As your project grows… | Mason helps by… |
|---|---|
| Instructions fall behind the code. | Flagging missing paths, incorrect workspace counts, and missing npm scripts. |
| A patch misses a related update. | Surfacing references, related tests, and files that historically change together. |
| Old decisions lose their context. | Retrieving recorded rationale and review status, and flagging changes to the code they apply to. |
| A repair gets interrupted. | Retaining the original findings and verifying them through the final documentation commit. |

After resolving an incident or settling a constraint, ask your agent to record the reason with Mason. Later tasks can retrieve it. Proposals and accepted decisions stay distinct.

Mason complements tests, linters, and code review. Findings are evidence to inspect; unavailable checks stay explicit.

## Evidence so far

Earlier read-only decision-retrieval evaluations scored **9.0/10 with Mason vs 7.0/10 without**. The initial ten-task patch comparison tied at **10/10 for both**. Improved patch outcomes remain to be demonstrated. [Results, methodology, and limitations](docs/benchmarks.md)

## Documentation

- [Setup, hooks, and upgrades](docs/setup.md)
- [Data and network behavior](docs/data-and-network.md) · [Hook performance](docs/hook-performance.md)
- [Audits, repair verification, and CI evidence](docs/checks.md)
- [Decisions, tools, and optional architecture maps](docs/reference.md)
- [Roadmap](ROADMAP.md) · [Changelog](CHANGELOG.md) · [MIT license](LICENSE)

TDQS

A3.7/5.0

Scored across 22 tools

Disambiguation4/5

Tools are largely distinct: map building, decision lifecycle, advisory review, setup, and orientation each have dedicated operations. Minor ambiguity remains among orientation/read tools such as full_analysis, analyze_project, get_code_samples, get_snapshot, and get_context, though descriptions clarify map/no-map and task-context boundaries.

Naming Consistency4/5

Names are consistently snake_case and mostly follow a verb_noun pattern. A minor split exists between mason_* prefixed tools and unprefixed tools, and a few noun-like names such as full_analysis and mason_automation slightly break the pattern but remain readable.

Tool Count3/5

22 tools is at the heavy end for a single MCP server and falls into the borderline 16-25 range. The domain is complex, but some setup/lifecycle tools could likely be consolidated, so the set feels heavy rather than tightly scoped.

Completeness4/5

The surface covers setup, decision capture/review/retirement, map build/verification/drift, impact analysis, advisory review, and Confluence export, which is broad lifecycle coverage. Minor gaps exist around generic listing/deletion/update paths for some artifacts, but agents can generally work around them.

Maintenance

ActivityActive
ResponsivenessSlow