# Get a floor plan from your AI

Pick the way in that suits you. They run from the least set-up to the most. The playground is for
looking around: open a plan, change a number, see what moves. Every other way in has your AI write
the ArchLang, and the compiler draws a dimensioned plan and tells your AI what is wrong with it.

## 1 Open a plan in your browser

Nothing to install. Pick a plan, drag one of its numbers and hover a room for its area. Source shows the ArchLang text behind the drawing, and you can edit it there.

[Playground](https://playground.archlang.uk) (in the browser)

## 2 Ask ChatGPT

Add the ArchLang app in ChatGPT, then describe the plan you want. ChatGPT writes ArchLang, the compiler draws the plan and reports what is wrong, and ChatGPT can fix it from that message. Nothing to install; you need a ChatGPT account.

[ArchLang app in ChatGPT](https://chatgpt.com/plugins/plugin_asdk_app_6acf8381cca08191bfb3eb7305fb6970) (no install)

Then ask, for example:

```text
Draw a two-bedroom flat of about 75 m² as an ArchLang plan, and check it.
```

What comes back: the compiled plan, each room labelled with its area, and any problems the compiler found.

## 3 Ask Claude on claude.ai

Add the hosted ArchLang server as a custom connector in claude.ai's settings, then ask for a plan. Nothing to install; you need a claude.ai account.

claude.ai connector (no install; add as a custom connector):

```text
https://mcp.archlang.uk/mcp
```

1. In claude.ai, open Customize > Connectors.
2. Click + Add, then Add custom connector.
3. Name it ArchLang, paste the server URL and click Continue.
4. Review the authentication settings, click Continue, choose No sign in, then click Add.

These are the steps on Pro and Max. On Team or Enterprise, an Owner adds it under Organization settings > Connectors (see the help page).

[Claude's help page on custom connectors](https://support.claude.com/en/articles/11175166-get-started-with-custom-connectors-using-remote-mcp)

## 4 Ask your coding agent

Paste this prompt into Claude Code, Codex, Cursor or any agent that can run commands. It adds the ArchLang skill, reads the language, writes your plan, compiles and checks it, and fixes what the compiler reports, or shows you the message.

```text
1. Run: npx -y skills add ChanMeng666/archlang --yes
2. Run: npx -y @chanmeng666/archlang spec   (read it before writing anything)
3. Write my floor plan as plan.arch from this brief: <describe rooms, areas, adjacencies>
4. Run: npx -y @chanmeng666/archlang compile plan.arch -o plan.svg --json
   then describe plan.arch --json, validate plan.arch --strict --json (same prefix); fix, recompile
5. Run: npx -y @chanmeng666/archlang finish plan.arch, then compile again to export.
Starting from a photo or PDF? Read https://archlang.uk/from-an-image. To change one room without moving the others, use `impact --lock` (https://archlang.uk/edit-one-room).
```

Claude Code, connected to the hosted server:

```text
claude mcp add --transport http archlang https://mcp.archlang.uk/mcp
```

The skill on its own ([skills.sh](https://skills.sh/ChanMeng666/archlang)):

```text
npx -y skills add ChanMeng666/archlang --yes
```

## 5 Write it in VS Code

The extension highlights .arch files, shows the compiler's errors and warnings as you type, offers its quick fixes, and draws an arch fence in the Markdown preview.

[VS Code extension, Visual Studio Marketplace](https://marketplace.visualstudio.com/items?itemName=ChanMeng.archlang) · [VS Code extension, Open VSX](https://open-vsx.org/extension/ChanMeng/archlang)

## Watch the film

[ArchLang — a language that compiles to dimensioned floor plans (YouTube)](https://youtu.be/RBcGF6X4esY)

## What next

- [Floor plans written by AI agents](/gallery): one-paragraph briefs and the plans agents wrote from them.
- [Starting from a photo or a PDF](/from-an-image): your AI reads the image; ArchLang does not.
- [Change one room without moving the others](/edit-one-room): `impact --lock` checks an edit.
- [The guide](/guide): what the language looks like, one statement at a time.

## Who maintains it

ArchLang is maintained by Chan Meng, a single maintainer. It is written with AI coding agents, and
changes are checked in CI. How decisions are made:
[GOVERNANCE.md](https://github.com/ChanMeng666/archlang/blob/main/GOVERNANCE.md).
