惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

月光博客
月光博客
D
Docker
腾讯CDC
J
Java Code Geeks
大猫的无限游戏
大猫的无限游戏
The Cloudflare Blog
Martin Fowler
Martin Fowler
MongoDB | Blog
MongoDB | Blog
博客园 - Franky
博客园 - 三生石上(FineUI控件)
Recent Announcements
Recent Announcements
F
Fortinet All Blogs
IT之家
IT之家
WordPress大学
WordPress大学
M
MIT News - Artificial intelligence
爱范儿
爱范儿
Microsoft Azure Blog
Microsoft Azure Blog
Vercel News
Vercel News
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
小众软件
小众软件
N
Netflix TechBlog - Medium
T
Tailwind CSS Blog
Engineering at Meta
Engineering at Meta
博客园 - 【当耐特】

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - anma-labs/anma: Boundary enforcement for AI codi...
nxy · 2026-06-22 · via Hacker News: Show HN

PyPI Python CI GitHub Action License

Boundary enforcement for AI coding agents. ANMA turns plain-YAML module contracts into the CLAUDE.md, hooks, and checks that keep Claude Code inside your architecture — and it measurably works where it matters most.

In a controlled benchmark (Python), a cheaper/faster model (Claude Haiku 4.5) violated a declared module boundary in 13 of 19 runs of a plain repo. With ANMA, across 20 runs of the same task it violated it 0 times (Fisher's exact p < 0.0001). See docs/BENCHMARKS.md for the full study, including the honest part: a frontier model (Opus 4.8) respected the boundary on its own, so ANMA's value is insurance for running cheaper agents plus a CI/governance guarantee — not making a frontier model smarter.

Languages: Python, Go, and TypeScript (language: in the root anma.yaml, one per project). Go and TypeScript enforce module→module dependencies; interface (public:) enforcement is Python-only today. The Go/TS adapters are validated (anma check + the hook detect and block real cross-module violations). In a pre-registered follow-up (neutral prompt, harder scenario), TypeScript shows a measured effect — control 18/20 vs ANMA 0/20, Fisher's exact p < 0.00001; Go is directional and significant (10/30 → 0/30, p = 0.0004) but its control rate fell below our pre-registered 0.40 floor, so we report it as suggestive, not yet efficacy. The Python headline is not extrapolated to either language. Details: CONCEPTS § Languages and BENCHMARKS.

What it does

You declare each module's public interface and what it may depend on. anma sync compiles that into everything else, so the architecture the agent reads can never drift from the rules CI enforces:

anma.yaml                       project config (schema_version, source_roots)
src/domains/billing/
  anma.yaml                     the module contract — see docs/CONCEPTS.md for all fields
  CLAUDE.md          (generated) loads when Claude opens billing/
CLAUDE.md            (generated) architecture map, between markers
.claude/rules/boundaries.md (generated) always-loaded imperative
.claude/hooks/anma_pretooluse.py (generated) blocks a boundary-breaking edit (exit 2)
tach.toml            (generated) engine config (Go: .go-arch-lint.yml; TS: .dependency-cruiser.cjs)
.github/workflows/anma.yml (generated) CI: drift check + boundary check
DECISIONS.md         append-only: why each boundary exists

Quickstart (60 seconds)

pip install anma[tach]      # tach backend recommended; works without it too
anma init                   # scaffolds contracts + a worked accounts/billing example
anma sync                   # generates CLAUDE.md, nested docs, hooks, tach.toml, CI
anma check                  # ✓ boundaries respected

For Go or TypeScript, scaffold with anma init --language go / anma init --language typescript (the external backends — go-arch-lint, dependency-cruiser — are optional; a builtin scanner is the zero-dep fallback).

Full walkthrough: docs/QUICKSTART.md.

Commands

anma init             # scaffold contracts + a worked example
anma sync             # regenerate all artifacts from contracts
anma sync --check     # CI guard: fail if generated artifacts drifted from contracts
anma check            # enforce boundaries (hook / pre-commit / CI)
anma check --warn     # report violations but exit 0 (incremental adoption)
anma check --json     # machine-readable output for pipelines

Exit codes: 0 ok · 1 violations, contract errors, or drift.

Two layers: guidance and enforcement

ANMA works at two levels, and the benchmark shows they play different roles:

  • Guidance — the generated root and per-module CLAUDE.md and .claude/rules put your architecture in the agent's context. This is what drove the 68% → 0 result: the model was steered to the correct design and didn't attempt a bad edit.
  • Enforcement — the PreToolUse hook judges the proposed edit and returns exit 2 to block any new disallowed import before it lands; the same check runs at pre-commit and in CI. This is the guarantee that holds for the edits guidance doesn't catch, and regardless of which model or human wrote the diff.

The enforcement hook is verified to fire (feed it a forbidden edit → exit 2); in the benchmark it never needed to, because guidance pre-empted every bad edit. Both matter; see the benchmarks for exactly what each one is shown to do.

Who it's for

  • Teams running cheaper or faster agents (cost-sensitive pipelines, bulk tasks, non-frontier or non-Claude models) that don't reliably respect an architecture on their own — this is where ANMA's steering is decisive.
  • Anyone who wants an enforced architecture: a guarantee in CI/pre-commit that module boundaries hold no matter who or what wrote the change.
  • Teams that want architecture as governance: declared interfaces, ownership → CODEOWNERS, and docs that can't silently drift from the rules.

If you only ever drive a frontier model on small, well-described tasks, ANMA may add turns without changing outcomes — and the benchmarks say so plainly.

Lightweight by design

~800 lines, no runtime, no DSL, one small dependency (PyYAML) — the builtin engine needs nothing more, and the faster external backends (tach for Python, go-arch-lint for Go, dependency-cruiser for TypeScript) are all optional. A security team can read the whole tool in an afternoon.

Enterprise

  • Drift detectionanma sync --check fails CI if generated docs/config fall out of sync with the contracts.
  • Incremental adoptionanma check --warn and per-module deprecated_deps let a large codebase adopt without a red build on day one.
  • Governanceowners: per module generates CODEOWNERS; source_roots: supports monorepos.
  • Supply chain — signed releases (PyPI Trusted Publishing + provenance + SBOM), pip-audit in CI, Apache-2.0. See SECURITY.md.

Documentation

Apache-2.0 · ANMA Labs LLC