Skip to content

Commit be7b101

Browse files
Default provider → Anthropic Claude Opus 4.7; GitHub Pages landing
Provider - Default LLM is now Anthropic Claude Opus 4.7 (was MiniMax M2) - AGUI_LLM_BASE_URL defaults to https://api.anthropic.com - AGUI_LLM_MODEL defaults to claude-opus-4-7 - ANTHROPIC_API_KEY is now the primary fallback env var - All docs, bin/huxform[.ps1], README, env.example updated - MiniMax still works — just flip the four AGUI_LLM_* vars GitHub Pages - docs/index.html — a stage-first landing that demonstrates HUXForm by behaving like one: hero with rotating verb, before/after diptych, specimen cabinet with real PNGs of generated UIs, architecture, one-command quickstart, footer manifesto - docs/assets/ — banner, sigil, architecture, real screenshots - docs/.nojekyll — serve HTML as-is - Self-contained: one HTML file, Google Fonts, no build step - Enable by setting Pages source to "main / docs" in repo settings Screenshots (assets/) - Re-generated with English-only prompts and richer scenarios: · what's the weather in New York → meteorological_station_readout (deep navy METAR readout, 72°F NYC, condition cards) · explain MCP → mcp_technical_manual (cream paper, draft v1.0 — 2024 badge, justified spec text) · compare three payment processors for a US-based SaaS → payment_processor_scorecard (Stripe/Braintree/Adyen with real fees, scores, per-row Verdict badges) · find duplicates in this CSV → duplicate_forensics_bench Repo hygiene - idea.md untracked, added to .gitignore - Dev playwright screenshots in repo root are ignored
1 parent 8799fcc commit be7b101

25 files changed

Lines changed: 834 additions & 739 deletions

.env.example

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,10 @@
11
# --- LLM provider --------------------------------------------------------
22
# HUXForm talks to any provider that speaks the Anthropic Messages API
3-
# or the OpenAI Chat Completions API. Default: MiniMax M2 via its
4-
# Anthropic-compatible endpoint.
3+
# or the OpenAI Chat Completions API. Default: Anthropic Claude Opus 4.7.
54
AGUI_LLM_PROTOCOL=anthropic
6-
AGUI_LLM_BASE_URL=https://api.minimax.io/anthropic
7-
AGUI_LLM_MODEL=MiniMax-M2
8-
AGUI_LLM_API_KEY=your_minimax_key_here
5+
AGUI_LLM_BASE_URL=https://api.anthropic.com
6+
AGUI_LLM_MODEL=claude-opus-4-7
7+
AGUI_LLM_API_KEY=your_anthropic_key_here
98
AGUI_LLM_MAX_TOKENS=4096
109
AGUI_LLM_TEMPERATURE=0.6
1110

.gitignore

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,20 @@ dist/
1515
.omc/
1616
test-dupes.csv
1717
apps/web/test-dupes.csv
18+
idea.md
19+
20+
# Dev screenshots from playwright runs (keep curated ones in assets/)
21+
/shot-*.png
22+
/page-*.png
23+
/landing-*.png
24+
/payment-*.png
25+
/csv-*.png
26+
/stage-*.png
27+
/sessions-*.png
28+
/huxform-*.png
29+
/page-hero.png
30+
/page-manifesto.png
31+
/page-cabinet.png
1832
.huxform-api.log
1933
.huxform-web.log
2034
*.log

README.md

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -47,22 +47,22 @@ moment.
4747
<table>
4848
<tr>
4949
<td align="center" width="50%">
50-
<img src="./assets/shot-explainer.png" alt="Museum specimen card explainer" width="100%"/>
51-
<sub><b>explainer · technical specimen card</b><br/>"explain what MCP is" — cream parchment, serif display, taxonomy ledger</sub>
50+
<img src="./assets/shot-weather.png" alt="Meteorological station readout" width="100%"/>
51+
<sub><b>status_view · meteorological station readout</b><br/>"what's the weather in New York?" — cold observatory palette, METAR string</sub>
5252
</td>
5353
<td align="center" width="50%">
54-
<img src="./assets/shot-stage.png" alt="Payment system specimen cabinet" width="100%"/>
55-
<sub><b>decision_board · payment specimen cabinet</b><br/>"compare three payment processors" — side-by-side cards, real data</sub>
54+
<img src="./assets/shot-mcp.png" alt="MCP technical manual" width="100%"/>
55+
<sub><b>explainer · technical manual</b><br/>"explain Model Context Protocol" — paper specimen, justified spec text</sub>
5656
</td>
5757
</tr>
5858
<tr>
5959
<td align="center" width="50%">
60-
<img src="./assets/shot-csv.png" alt="Specimen sorting bench for CSV dedup" width="100%"/>
61-
<sub><b>generated_app · specimen sorting bench</b><br/>"check this CSV for duplicates" — working drop-zone bound to the tool broker</sub>
60+
<img src="./assets/shot-payments.png" alt="Payment processor scorecard" width="100%"/>
61+
<sub><b>decision_board · processor scorecard</b><br/>"compare payment processors" — feature matrix, scores, per-row verdicts</sub>
6262
</td>
6363
<td align="center" width="50%">
64-
<img src="./assets/shot-landing.png" alt="HUXForm landing" width="100%"/>
65-
<sub><b>landing · the moment of stillness</b><br/>one prompt, rotating hint, no chat history, no dashboard chrome</sub>
64+
<img src="./assets/shot-csv.png" alt="Duplicate forensics bench" width="100%"/>
65+
<sub><b>generated_app · duplicate forensics bench</b><br/>"find duplicates in this CSV" — real drop-zone bound to the tool broker</sub>
6666
</td>
6767
</tr>
6868
</table>
@@ -75,7 +75,7 @@ Same runtime, four completely different surfaces — picked and built per task.
7575
## Quick start
7676

7777
Clone the repo and run one script. It checks your Python and Node versions,
78-
creates a virtualenv, installs dependencies, prompts for your MiniMax key
78+
creates a virtualenv, installs dependencies, prompts for your Anthropic key
7979
(or any Anthropic-compatible / OpenAI-compatible key), starts both servers
8080
and opens your browser.
8181

@@ -103,7 +103,7 @@ That's it. The script does the rest:
103103
104104
setup
105105
✓ python3 / node / npm preflight
106-
paste your MiniMax API key ⟶ ······
106+
paste your Anthropic API key ⟶ ······
107107
✓ wrote .env
108108
api · creating Python venv
109109
api · installing dependencies
@@ -127,11 +127,11 @@ skipped automatically.
127127
| Python | 3.11+ | `python3 --version` |
128128
| Node.js | 20+ | `node --version` |
129129
| npm | 10+ | bundled with Node |
130-
| An LLM key || MiniMax M2 by default; or any Anthropic / OpenAI-compatible endpoint |
130+
| An LLM key || Anthropic Claude Opus 4.7 by default; or any Anthropic / OpenAI-compatible endpoint |
131131

132-
You can grab a free MiniMax key in five minutes at
133-
[platform.minimax.io](https://platform.minimax.io/). To switch providers,
134-
edit `.env` after first run (see [Provider configuration](#provider-configuration)).
132+
Get a key from [console.anthropic.com](https://console.anthropic.com/). To
133+
switch to MiniMax, OpenAI, OpenRouter, Groq, Together, Ollama or any other
134+
provider, edit `.env` after first run (see [Provider configuration](#provider-configuration)).
135135

136136
### Other ways to run
137137

@@ -225,8 +225,8 @@ HUXForm is provider-agnostic. Pick the protocol your provider speaks:
225225
| Var | Default | Notes |
226226
|-----------------------|--------------------------------------|----------------------------------------|
227227
| `AGUI_LLM_PROTOCOL` | `anthropic` | `anthropic` (Messages) or `openai` |
228-
| `AGUI_LLM_BASE_URL` | `https://api.minimax.io/anthropic` | Provider base URL. |
229-
| `AGUI_LLM_MODEL` | `MiniMax-M2` | Model id. |
228+
| `AGUI_LLM_BASE_URL` | `https://api.anthropic.com` | Provider base URL. |
229+
| `AGUI_LLM_MODEL` | `claude-opus-4-7` | Model id. |
230230
| `AGUI_LLM_API_KEY` || API key. |
231231
| `AGUI_LLM_MAX_TOKENS` | `4096` | |
232232
| `AGUI_LLM_TEMPERATURE`| `0.6` | |
@@ -236,9 +236,9 @@ HUXForm is provider-agnostic. Pick the protocol your provider speaks:
236236
| `AGUI_ENABLE_CLI` | unset | Enables `cli.*` host-CLI tools. |
237237
| `AGUI_CLI_ALLOWLIST` | unset | Optional `:`-separated allowlist. |
238238

239-
> Default is **MiniMax M2** via its Anthropic-compatible endpoint. Switch to
240-
> Anthropic / OpenAI / Groq / OpenRouter / Together / Ollama by changing the
241-
> four `AGUI_LLM_*` vars — no SDK changes required.
239+
> Default is **Anthropic Claude Opus 4.7**. Switch to MiniMax, OpenAI, Groq,
240+
> OpenRouter, Together or Ollama by changing the four `AGUI_LLM_*` vars —
241+
> no SDK changes required.
242242
243243
---
244244

apps/api/src/config.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
"""Runtime configuration loaded from environment variables.
22
3-
AGUI is provider-agnostic. By default we talk to MiniMax M2.7 via its
4-
Anthropic-compatible endpoint, but any provider speaking either the
5-
Anthropic Messages or OpenAI Chat Completions protocol will work — just
6-
point AGUI_LLM_BASE_URL at it and pick the protocol via
7-
AGUI_LLM_PROTOCOL.
3+
HUXForm is provider-agnostic. By default we talk to Anthropic Claude
4+
Opus 4.7, but any provider speaking either the Anthropic Messages or
5+
OpenAI Chat Completions protocol will work — just point
6+
AGUI_LLM_BASE_URL at it and pick the protocol via AGUI_LLM_PROTOCOL.
87
"""
98

109
from __future__ import annotations
@@ -34,9 +33,9 @@ def load_llm_config() -> LLMConfig:
3433
protocol = (_env("AGUI_LLM_PROTOCOL", "anthropic") or "anthropic").lower()
3534

3635
if protocol == "anthropic":
37-
base_url = _env("AGUI_LLM_BASE_URL", "https://api.minimax.io/anthropic") or ""
38-
api_key = _env("AGUI_LLM_API_KEY") or _env("ANTHROPIC_AUTH_TOKEN") or _env("ANTHROPIC_API_KEY") or _env("MINIMAX_API_KEY") or ""
39-
model = _env("AGUI_LLM_MODEL", "MiniMax-M2") or "MiniMax-M2"
36+
base_url = _env("AGUI_LLM_BASE_URL", "https://api.anthropic.com") or ""
37+
api_key = _env("AGUI_LLM_API_KEY") or _env("ANTHROPIC_API_KEY") or _env("ANTHROPIC_AUTH_TOKEN") or ""
38+
model = _env("AGUI_LLM_MODEL", "claude-opus-4-7") or "claude-opus-4-7"
4039
elif protocol == "openai":
4140
base_url = _env("AGUI_LLM_BASE_URL", "https://api.openai.com/v1") or ""
4241
api_key = _env("AGUI_LLM_API_KEY") or _env("OPENAI_API_KEY") or ""

apps/api/src/llm.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
send a system prompt + a list of role/content messages, get back text.
55
We support the two protocols that nearly every provider speaks:
66
7-
* Anthropic Messages API (POST /v1/messages) — MiniMax, Anthropic
7+
* Anthropic Messages API (POST /v1/messages) — Anthropic, MiniMax
88
* OpenAI Chat Completions (POST /v1/chat/completions) — OpenAI, OpenRouter,
99
Groq, Together, ...
1010

assets/shot-csv.png

-58.4 KB
Loading

assets/shot-explainer.png

-18.8 KB
Loading

assets/shot-landing.png

-2.31 KB
Loading

assets/shot-mcp.png

52.2 KB
Loading

assets/shot-payments.png

54.2 KB
Loading

0 commit comments

Comments
 (0)