Skip to main content
Yanked

This release has been yanked by its maintainers, and will be ignored by installers, except when explicitly specified.

Steltic

A free, open-source AISI S100/S240/S400 cold-formed steel (CFS) design agent that runs locally. Paste a design brief and watch the agent build an OpenSees model + a stamped-style HTML report + an interactive 3D viewer — bringing your own LLM (your API base-url + key, held in memory only, never written to disk).

browser ──▶ FastAPI app (localhost) ──▶ your LLM (key in app memory, never stored)
                 │  parses tool calls
                 ▼
           sandbox executor (run_python only) — Docker when available
                 │
           steel engine + OpenSees ─▶ report.html + viewer_3d.html

Not for construction. Every output is produced by your own AI model, may be incomplete or incorrect, and must be independently checked and sealed by a licensed professional engineer before any use for design, construction, or permitting. See DISCLAIMER.md.

Try the hosted version of Steltic for free using our servers stelticai.com

Install & run

With uv (recommended — no Python setup needed):

uv tool install --python 3.12 steltic-cfs
steltic-cfs                    # starts on http://127.0.0.1:8000 and opens your browser

The --python 3.12 matters: openseespy (the analysis engine) ships compiled binaries for Python 3.10–3.12 only, and uv ignores the package's upper Python bound — without the flag it may install onto a newer interpreter where the engine can't load (Steltic will tell you and refuse to start). uv downloads 3.12 automatically if you don't have it. Or with pipx (which respects the bound): pipx install --python 3.12 steltic-cfs. The install includes the full engine (openseespy/numpy/scipy/matplotlib, ~400MB) so designs run out of the box without Docker. Or from a checkout:

git clone <this repo> && cd steltic_cfs
python -m venv .venv && . .venv/bin/activate
pip install -e .
./run_local.sh               # http://localhost:8000

First run: open Settings, enter your provider's API base URL (any OpenAI-compatible endpoint — OpenRouter, vLLM, Together, Fireworks, OpenAI, Anthropic…), your API key, and a model id. Then paste a brief (stories, bays & spacings, loads, seismic, system) — or pick one of the 25 built-in example briefs (numbered Ex1-Ex30; Ex20-24 rack briefs are descoped -- EXAMPLE_BRIEFS in steltic/main.py is the source of truth) — and click Design building.

Offline smoke test: set Model to MOCK — it drives the whole pipeline (sandbox, engine, OpenSees, report) with no LLM.

Windows note: if launching fails with "Application Control policy has blocked this file" or "os error 4551", Windows Smart App Control is blocking uv's downloaded (unsigned) Python. Fix: install the signed python.org build and point uv at it —

winget install Python.Python.3.12       # then open a new terminal
uv tool uninstall steltic-cfs
$env:UV_PYTHON_PREFERENCE = "only-system"
uv tool install --python 3.12 steltic-cfs

Sandbox

The agent's Python only ever executes in a sandbox. EXECUTOR (env / .env) picks the mode:

value isolation notes
auto Docker if available, else subprocess default
docker container per run: no network, read-only fs, non-root, cpu/mem caps build once: ./sandbox_image/build.sh
subprocess none (child process with rlimits) needs pip install openseespy numpy scipy matplotlib; fine for local single-user use

Steltic binds to 127.0.0.1 and has no authentication — don't expose the port. Designs are saved under your OS user-data dir (e.g. %LOCALAPPDATA%\Steltic, ~/.local/share/Steltic); override with DATA_DIR.

The hosted version of Steltic at stelticai.com grounds the agent with RAG vector databases of AISI S100-16(R2020)+S2/S3, S240-20 and S400-20, an examples database of validated OpenSees models, and two databases of the OpenSees documentation. The specifications and design examples ground the LLM in the current procedures; the OpenSees databases help it build the model — and when OpenSees throws errors, resolve them. Steltic's performance has been validated with these databases and will likely reduce without them.

For copyright reasons the vector databases of the AISI standards are not open-sourced in this project. The OpenSees databases are freely downloadable from the Steltic Releases page (shared with the AISC agent) as portable .jsonl.gz dumps (pre-embedded; see rag_v2/README.md for loading them into your own Qdrant): cfs_design_examples (original worked Q&A for the CFS scope; being authored), opensees_buildings_3d (40 validated 3D building models), opensees_building_templates, and the two OpenSees documentation sets.

Two options:

  1. None (default — not recommended). Leave RAG_API_URL empty — the agent relies on its own cited AISI/CFS knowledge. Good models do respectably; grounded runs are better.
  2. Bring your own server. Run any server exposing the small API described in rag_v2/README.md: load the downloadable OpenSees databases, and build the standards collections from your own licensed copies with the rag_v2/ chunking + ingestion starter kit. Then put the connection in the environment (or a .env next to where you launch): RAG_API_URL=http://your-server:8080/query and, if your server enforces one, RAG_API_TOKEN=....

Repo map

steltic/ FastAPI app + agent loop + sandbox executors · steel_engine/ OpenSees modelling, design pipeline, consistency checks, report + 3D viewer · contract/ the agent's working contract and references · frontend/ vanilla JS UI · sandbox_image/ Docker sandbox image · test_buildings/ the 25 CFS example briefs with assessment rubric · rag_v2/, rag_update/ build-your-own-RAG starter kit.

License

MIT — see LICENSE, NOTICE (third-party data notes) and DISCLAIMER.md (engineering disclaimer; also shown in-app at /terms).

Metadata

Release files for steltic-cfs 1.0.2

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

Source distribution (sdist)

Source distribution for steltic-cfs 1.0.2
File Size Uploaded
steltic_cfs-1.0.2.tar.gz 818.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for steltic-cfs 1.0.2
File Interpreter ABI Platform
steltic_cfs-1.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 1.6 MB

Release files / steltic_cfs-1.0.2.tar.gz

Download URL steltic_cfs-1.0.2.tar.gz
Size 818.1 kB
Tags Source
SHA-256 checksum
How to use checksums
7fe4c031d1e946050283e88e58874ba791e2e4e8ef35cb6e950d9bcc7d5fe8f4
BLAKE2b-256 checksum
How to use checksums
5f20009ae887f06af7957dc6fc62c1b0af1312b0440417887c944968f34d12f7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release files / steltic_cfs-1.0.2-py3-none-any.whl

Download URL steltic_cfs-1.0.2-py3-none-any.whl
Size 824.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4d9ad719bcced89157db1460c391e752c9c72449871b90e496a74f3a53bcbc07
BLAKE2b-256 checksum
How to use checksums
f5f6e5aa94ef0f987599100dd834e2b18c93fe178bda1a44ce82b8ecb7e9cdcc
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.10

Release history Release notifications | RSS feed

This release

1.0.2 This release

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