Skip to main content

text-to-reality

Give your agent the power to build real things.

text-to-cad makes a part. text-to-reality makes the working device.

License: MIT PyPI Python

Describe something you want to exist. Your agent turns it into a build package anyone can put together by following pictures:

  • a parts list you can order, using parts that plug together
  • 3D-printable parts for the case and mounts
  • the wiring, every wire and which connector it goes in
  • the code, ready to load
  • a step-by-step picture guide written for someone who has never built electronics
  • tests, so you know it works

No soldering, no breadboard, no electronics experience required. It runs on your machine: no account, no API key, and your projects are plain folders you own.

Example: Agent Meter

"Build me a little desk character that shows what my coding agent is doing and how much of my Claude allowance is left."

Agent Meter, a small printed robot character with a screen in its head (concept render)

Agent Meter illustrates this workflow: a Seeed Studio XIAO ESP32-S3 and a small screen inside a printed character, wired with plug-on connectors, with firmware and a picture guide. Its face shows when your agent is working, finished or waiting on you, plus your remaining allowance.

Get the Agent Meter kit →

Install

Ask your agent

Install text-to-reality from https://github.com/ai-wes/text-to-reality

Or install it yourself. text-to-reality runs through uv: check it's installed with uv --version, or use uv's installer. Then run the commands for your agent and restart it.

Claude Code

claude plugin marketplace add ai-wes/text-to-reality
claude plugin install text-to-reality@ai-wes

To update: claude plugin marketplace update ai-wes, then claude plugin update text-to-reality@ai-wes.

Codex

codex plugin marketplace add ai-wes/text-to-reality
codex plugin add text-to-reality@ai-wes

Cursor

Cursor also loads the Claude Code plugin; if that's installed, skip this.

git clone --depth 1 https://github.com/ai-wes/text-to-reality ~/.cursor/plugins/local/text-to-reality

Claude Desktop

Add the server to Claude Desktop's config (Settings > Developer > Edit Config), then restart. If it can't find uvx, use its full path (which uvx).

{
  "mcpServers": {
    "text-to-reality": {
      "command": "uvx",
      "args": ["--no-config", "--managed-python", "--python", "3.13", "--from", "text-to-reality==0.1.1", "text-to-reality", "mcp"]
    }
  }
}

Projects are saved in text-to-reality/ in the folder the app starts in; set TEXT_TO_REALITY_DIR in env to choose another folder.

Other agents

npx skills add ai-wes/text-to-reality

Then add the MCP server above to your agent's MCP config.

Works with text-to-cad

text-to-reality plans the whole device; text-to-cad is great at the printed parts. Install both, and the agent uses text-to-cad for the printed parts when it's available.

How it works

Each build is a folder. The agent fills in seven stages and checks them:

Stage What's in it
Requirements brief.md: what it does, size, power, budget, how you'll know it works
Parts bom.json: every part and quantity
Printed parts CAD source and STL/3MF files
Electronics wiring.json: every wire, its color, and its connector
Code firmware source and how to load it
Assembly the picture guide
Testing what to check, and what a pass looks like

The local MCP server gives the agent tools to create projects, record files, catch files edited after they were checked, validate the package, keep a build history, and look up board header layouts and plug-on parts.

You can also check a folder yourself:

uvx text-to-reality check ./text-to-reality/my-build

Parts that plug together

Loose jumper wires fall off and get swapped. JIG_ makes connectors that turn the wires going to one row of pins into a single plug, so wiring becomes plugging things in.

The agent uses JIG_ connectors by default. It looks up each board's pin rows, picks one connector per row, lists what to buy, and notes any row a connector can't fit. Get them at jig-robotics.com →

Each connector is a base that holds the wires in order and a cover that snaps on. The picture guide shows how to load it, close it and plug it on.

License

MIT

Metadata

Release files for text-to-reality 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for text-to-reality 0.1.1
File Size Uploaded
text_to_reality-0.1.1.tar.gz 227.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for text-to-reality 0.1.1
File Interpreter ABI Platform
text_to_reality-0.1.1-py3-none-any.whl Python 3 none any Details

Total release size: 476.0 kB

Release files / text_to_reality-0.1.1.tar.gz

Download URL text_to_reality-0.1.1.tar.gz
Size 227.4 kB
Tags Source
SHA-256 checksum
How to use checksums
2b5d7322d20b9f01bc0f79dc7038cb71debfa74a5627bb40e2c987cf90a4b488
BLAKE2b-256 checksum
How to use checksums
076074d4fa2f6c9b13f698abba92c99434d657d6cbdcd2e182231b05636c7ebc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / text_to_reality-0.1.1-py3-none-any.whl

Download URL text_to_reality-0.1.1-py3-none-any.whl
Size 248.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d604c739ed10910b123a1be391b47c62a259e6a5e8fe2bf5382adc39436470b4
BLAKE2b-256 checksum
How to use checksums
c337d8b521161268ba9fddef2ef4b3f314895bc77a48c46eb07b79028817023c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.25 {"installer":{"name":"uv","version":"0.11.25","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page