AbdelStark

Claude Md Compiler — Development skill for Claude Code

Development community

Compile CLAUDE.md into a lockfile, then enforce repo changes against it in local runs, staged diffs, or CI.

How to install Claude Md Compiler

This entry records only its repository, not the path inside it, so there is no exact command to give. Open AbdelStark/claude-md-compiler and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Claude Md Compiler does

Compile CLAUDE.md into a lockfile, then enforce repo changes against it in local runs, staged diffs, or CI.

Alternatives in Development

  • Claudes C Compiler — Claude Opus 4.6 wrote a dependency-free C compiler in Rust, with backends targeting x86 (64- and 32-bit), ARM 2.6k ★
  • Magnitude — Open source inference server your agent sets up for you 1.5k ★
  • Devteam — Run a team of local coding agents in your terminal 264 ★

README

claude-md-compiler

**Compile structured Claude Code workflow policy into versioned artifacts and enforce it against runtime evidence, hooks, and git diffs.**

[![PyPI](https://img.shields.io/pypi/v/claude-md-compiler.svg?logo=pypi&logoColor=white)](https://pypi.org/project/claude-md-compiler/) [![Python](https://img.shields.io/pypi/pyversions/claude-md-compiler.svg?logo=python&logoColor=white)](https://pypi.org/project/claude-md-compiler/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](./LICENSE) [![Built with uv](https://img.shields.io/badge/built%20with-uv-de5fe9?logo=python&logoColor=white)](https://github.com/astral-sh/uv) [![Tests: pytest](https://img.shields.io/badge/tests-pytest-0A9EDC?logo=pytest&logoColor=white)](https://docs.pytest.org/) [![Status: Alpha](https://img.shields.io/badge/status-alpha-orange.svg)](https://github.com/AbdelStark/claude-md-compiler)

![cldc terminal preview](./docs/assets/img/screenshot-1.png)

What it does

`cldc` is a Python CLI **and** a typed library that compiles **structured** repository policy from `CLAUDE.md` fenced `cldc` code blocks, `.claude-compiler.yaml`, and `policies/*.yml` into a versioned lockfile, then checks reads, writes, commands, claims, and git diffs against that policy. It is purpose-built for **Claude Code** workflows that need a deterministic, offline, exit-coded judge sitting between Claude and the working tree.

In plain English

Anthropic's own Claude Code docs make the boundary clear:

Claude treats them as context, not enforced configuration.

Source: [How Claude remembers your project](https://code.claude.com/docs/en/memory#claude-md-vs-auto-memory)

That is the gap `cldc` is built to close for Claude-specific workflows. `CLAUDE.md` is excellent for guidance, memory, and project conventions; it is not a deterministic policy engine. Native Claude permissions are excellent for tool/path allow-deny decisions; they are not a versioned work