Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add ChanMeng666/archlang --skill archlanggit clone --depth 1 https://github.com/ChanMeng666/archlangWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/chanmeng666/archlang/archlang)<a href="https://agentmods.dev/skills/chanmeng666/archlang/archlang"><img src="https://agentmods.dev/badge/skills/chanmeng666/archlang/archlang/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/chanmeng666/archlang/archlang"><img src="https://agentmods.dev/badge/skills/chanmeng666/archlang/archlang.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00105 | $0.07214 |
| Opus 5.5 | $0.00042 | $0.02886 |
| Sonnet 5.5 | $0.00021 | $0.01443 |
| Haiku 4.5 | $0.00011 | $0.00721 |
Grade A, and why
archlang scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 384 lines — stays where its author put it; the contents beside it link to each section on GitHub.
ArchLang — author floor plans as code
ArchLang turns a small .arch text file into a professional floor-plan drawing. It is built for
agents: deterministic, self-correcting (errors carry a machine code, a prose fix, and often a
machine-applicable fix archlang fix can apply), and verifiable without ever looking at an image
(archlang describe).
Setup (zero-install)
The CLI runs straight from npm — no clone, no build:
npx -y @chanmeng666/archlang --help
Or npm i -g @chanmeng666/archlang for a global archlang command. Every call below is written
archlang <cmd>; without the global install, write npx -y @chanmeng666/archlang <cmd>. Never run
a bare arch: the package installs it as an alias, but on Linux, macOS and Git Bash coreutils
owns that name, so the shell runs the wrong program.
The loop (always follow this)
- Learn the language first. Run
archlang specand read it — the entire language in one page. (archlang contextprints everything: spec + this workflow + CLI reference + error catalog.) Do this before writing any.arch. - Write the plan to a
.archfile (or pipe via stdin with-), preferring the placement sugar below so you never hand-compute a coordinate. - Render it:
archlang compile plan.arch -o plan.svg --json. The JSON is{ ok, diagnostics, summary }. - Auto-fix the mechanical faults: if
okis false, runarchlang fix plan.arch --dry-run --jsonto preview the machine-applicable edits (off-wall opening → attachment form, out-of-range position clamped, …), then re-run without--dry-runto apply. Anythingfixcan't resolve stays indiagnostics[].fixfor you to edit by hand. Exit code2means a deterministic user error — fix it, don't blindly retry (1= IO/internal,3= bad usage). - See the plan without an image:
archlang compile plan.arch -f txt(orarchlang preview plan.arch --ascii) prints a zero-dependency ASCII floor plan you can read straight from stdout. - Verify intent:
archlang describe plan.arch --jsonreturns the rooms (areas, adjacency), what each door connects, and totals. Confirm the room count, labels, and areas match what was asked. Each room reports two areas:area_m2on wall centrelines andnet_area_m2, the floor no wall stands on (the room less every wall band inside it, computed exactly, or absent when it cannot be, and then so is the net total);totalssums both. Quotenet_area_m2as floor area, and name which figure you report. - Gate on soundness — don't ship a flagged plan.
archlang validate plan.arch --strict --json(parse + resolve + lint).--strictmakes every advisory warning fail (exit2) — the gate a generation pipeline runs before it ships. Add--graph g.jsonto also assert the intended room-to-room adjacency ({ "living": ["kitchen","hall"], … }); a mismatch fails. Read eachdiagnostics[].fix, edit, and re-run until it passes — or, if a warning is deliberate, say so. - Check the plan against the brief. Write the user's brief as an
intent.json— its checkable expectations as data (room count, per-room concepts with area/window bands, total area, optional adjacency/reachability). Two disciplines keep it brief-grounded: assert an area band only where the brief gives a number ("about/~N" → ±10%; "at least N" →minonly; qualitative words → nothing), and assert the top-level roomcountonly when the brief enumerates the rooms. Gate witharchlang validate plan.arch --intent intent.json --feedback --json: a gating miss (room count/existence/area/total-area/window) fails (exit2) with a per-violation correction prompt — iterate on the feedback and re-run. Adjacency/reachability are advisory (reported, never fail the gate). Usearchlang score plan.arch --brief intent.json --jsonas a continuous satisfaction meter (always exit0) to watch the plan approach the brief across edits. See/intent.schema.json. - Fix furniture geometry:
archlang repair plan.arch -o fixed.archpushes furniture out of walls/doorways/swing arcs (the geometric corrector; distinct fromfix). It rewrites a piece in the form you wrote it (anatpoint, or theinsetof anin <room> anchor …placement) — and always readunresolved: a piece it may not rewrite (onefor/component statement drawing several pieces, expression coordinates, anagainst wallanchor) is reported there with the fault and why, never silently skipped.changed: falsewith a non-emptyunresolvedmeans you edit the source. - Finish the drawing: once lint is clean, run
archlang finish plan.arch --dry-run --json, then without--dry-runto apply. It first furnishes each rectangular room that holds no furniture, by the room's use (single-storey plans; a furnished room is never touched — a partly furnished one is named inunresolvedwith the categories it lacks, not topped up), then adds the sheet statements the plan lacks —paper,scale,dims auto,title,schedule rooms,legend— on the smallest sheet the drawing fits. It fills only what is missing and deletes nothing. Readunresolved: a room it left empty or a statement it left out is named there with the reason (--only furnish/--only sheetruns one step;--reissuelets it replace apaper/scalethe drawing does not fit). - Show the user:
archlang preview plan.arch -o plan.pngrenders a PNG (--installfetches the optional renderer if missing). To hand the user the plan itself, rendered and with nothing to install, runarchlang link plan.arch(ornpx -y @chanmeng666/archlang link plan.arch): it prints a playground URL that opens the plan;--jsonadds the embed URL.
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- assets/fonts/LICENSE.txt 598 B
- assets/fonts/Roboto-Regular.ttf 503 KB
- examples/accessible.arch 1.9 KB
- examples/aquarium.arch 8.6 KB
- examples/aquarium.svg 53 KB
- examples/attached.arch 1.9 KB
- examples/attached.svg 7.9 KB
- examples/bungalow.arch 9.4 KB
- examples/bungalow.svg 56 KB
- examples/clinic.arch 9.9 KB
- examples/clinic.svg 93 KB
- examples/courtyard-house.arch 13 KB
- examples/courtyard-house.svg 110 KB
- examples/furnished-flat.arch 8.7 KB
- examples/furnished-flat.svg 62 KB
- examples/gallery-l.arch 2.7 KB
- examples/gallery-l.svg 20 KB
- examples/garden-house.arch 15 KB
- examples/garden-house.svg 151 KB
- examples/garden-loft.arch 2.6 KB
- examples/hexagon-pavilion.arch 9.7 KB
- examples/hexagon-pavilion.svg 21 KB
- examples/hillside-villa.arch 18 KB
- examples/hillside-villa.svg 144 KB
- examples/imports.arch 1.2 KB
- examples/laneway-house.arch 3.0 KB
- examples/laneway-house.svg 39 KB
- examples/lib/doors.arch 578 B
- examples/lib/fixtures.arch 1.1 KB
- examples/lib/furniture.arch 3.3 KB
- examples/library.arch 13 KB
- examples/library.svg 202 KB
- examples/materials.arch 8.2 KB
- examples/materials.svg 64 KB
- examples/museum-wing.arch 3.1 KB
- examples/museum-wings.arch 4.8 KB
- examples/museum.arch 8.0 KB
- examples/museum.svg 85 KB
- examples/one-room.arch 742 B
- examples/parametric.arch 1.9 KB
- examples/relational.arch 4.8 KB
- examples/studio.arch 3.7 KB
- examples/studio.svg 19 KB
- examples/terrace-row.arch 7.8 KB
- examples/terrace-row.svg 68 KB
- examples/themed.arch 2.1 KB
- examples/tiny-house.arch 8.9 KB
- examples/tiny-house.svg 21 KB
- examples/townhouse.arch 11 KB
- examples/townhouse.svg 30 KB
- examples/transit-hall.arch 10 KB
- examples/transit-hall.svg 137 KB
- examples/two-bed.arch 3.4 KB
- examples/two-bed.svg 25 KB
- examples/two-storey.arch 5.8 KB
- examples/two-storey.svg 24 KB
- schemas/intent.schema.json 8.2 KB
- schemas/plan.schema.json 24 KB
- scripts/changelog-section.mjs 2.4 KB runs code
- scripts/check-drift.ts 3.9 KB runs code
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- today Changed · +7 lines 81373a89523f
- yesterday Changed · +27 lines 409adc068351
- 2d ago Changed · +8 lines 6f97a7bbd532
- 3d ago Changed · +4 lines 3479d45b837e
- 10d ago Changed · +11 lines · +1 tokens per session 5329a089a5d7
- 14d ago Changed · +20 lines 9b7fee4764f9
- 24d ago Changed · -1 lines dedeccd91411
- 1mo ago Changed · +9 lines c1305b450274
- 1mo ago Changed · +38 lines 6d1d7d6ad667
- 1mo ago First seen · 261 lines · 104 tokens per session scan A e15c5d26aed8
archlang is a skill published in the GitHub repository ChanMeng666/archlang (24 stars, last pushed today), licensed MIT. It adds 105 tokens to every session and 7,214 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
furniture-fit
Assess whether furniture fits in a measured Pascal room or layout. Use this skill for sofa, table, bed, cabinet, appliance, staging, placement, collision, clearance, or rotated-footprint questions. Produce a tool-backed spatial report that distinguishes footprint fit from unsupported height, door-swing, assembly, and…
pascal-3d
Connect to Pascal and use its MCP tools to create, inspect, edit, validate, save, or hand off editable 3D building scenes. Use this skill whenever a user asks an agent to work in Pascal, make a room or building model, inspect a Pascal project, perform spatial edits, connect Pascal MCP, or return a verified Pascal…
accessibility
Use when making a web UI conform to WCAG 2.2 Level AA — axe-core or Lighthouse a11y violations, keyboard operability, focus management, ARIA roles/names/live regions, contrast, tap-target size. NOT palette or visual intent (that is design), NOT test-runner setup (that is testing-web), NOT LCP/page-speed (that is…
brand-identity
Use when a project needs its visual foundation built or consolidated into one system: logo brief, color system in HEX/RGB/CMYK/OKLCH with proven AA contrast, type system, usage rules, and an exported W3C design-tokens.json that later skills consume. NOT the applied UI pixels (that is design), NOT the words or tone…
plan
Use when an approved, clarified spec must become a technical blueprint before any code — the SDD phase between clarify and tasks: architecture, contracts, data flow, testing strategy, sequencing and risks, at structure altitude, never framework syntax. NOT the what/why spec (that is specify), NOT the ambiguity sweep…
android-compose-patterns
Use when building native Android with Jetpack Compose - stateless composables, state hoisting, ViewModel-owned state, edge-to-edge, predictive back, adaptive layout, atomic components, and Material theming over hardcoded values.