Skip to content

fix(frontend): post-charliebot install flow + accurate counts + xpragents.com URL#24

Merged
paulgnz merged 1 commit into
mainfrom
fix/frontend-postcharliebot-claims
May 15, 2026
Merged

fix(frontend): post-charliebot install flow + accurate counts + xpragents.com URL#24
paulgnz merged 1 commit into
mainfrom
fix/frontend-postcharliebot-claims

Conversation

@paulgnz
Copy link
Copy Markdown
Collaborator

@paulgnz paulgnz commented May 15, 2026

The live site's Register and Get Started pages still walked operators through the pre-charliebot --key PVT_K1_xxx pattern that the agent runner now refuses to boot with. Anyone landing from npm or search and copy-pasting would hit [FATAL] XPR_PRIVATE_KEY is set but is no longer supported. — pure rage-quit material.

This patch aligns the marketing surface with what actually ships in @xpr-agents/openclaw@0.4.2 and create-xpr-agent@0.5.1.

P0 — broken instructions

  • register.tsx Deploy Your Agent block: dropped --key flag table row + both broken code snippets (./start.sh --key PVT_K1_xxx and ./setup.sh --key PVT_K1_xxx). Replaced with the proton CLI keychain setup (key:add) → npx create-xpr-agent./start.sh --account --api-key flow. Added a callout naming the post-charliebot reason and a pointer to the Pinata harness path.
  • get-started.tsx Step 1: rewrote "Create an account & get your private key" → "Create an account & load its key into the proton CLI keychain". Drops the --key table row; shows the interactive proton key:add flow plus the echo "no" | proton key:add hosted-console form. Updates the WebAuth path so the agent-side key goes into the keychain instead of getting passed as a flag.
  • get-started.tsx Step 3: dropped the Docker ./setup.sh --key ... option (the scaffold no longer ships setup.sh). Added the harness path with openclaw plugins install @xpr-agents/openclaw.

P1 — stale numeric claims

Was Now Where
"55 MCP tools" 72 MCP tools get-started:39,470, how-it-works:347,386
"29 read, 26 write" 35 read, 37 write how-it-works:348
"175+ AI tools" "72 MCP tools + 13 bundled skills" index.tsx × 4 (meta, og, twitter, hero), how-it-works:84,333
"549 tests" 576 tests how-it-works:377,388

The "13 bundled skills" framing is the honest replacement for the inflated 175+ total — it's verifiable (13 directories in openclaw/skills/, all listed in openclaw.plugin.json).

URL update

agents.protonnz.comxpragents.com (per latest direction). Three references in index.tsx: og:url meta, JSON-LD WebApplication.url, JSON-LD WebPage.url.

Side-cleanup

Two untracked Finder-duplicate files (EndpointSelector 2.tsx, lib/rpc 2.ts) plus their non-suffixed orphan counterparts were breaking npm run build against the current NetworkConfig type. None were imported anywhere. Removed.

Verification

  • npm run build succeeds
  • No remaining --key PVT_K1_ patterns in user-facing pages
  • No remaining stale-count claims in frontend/src/
  • agents.protonnz.com in src/ fully migrated to xpragents.com

What this does NOT include (P2 — separate follow-up)

  • Post-charliebot security-model marketing section (the keychain story as a differentiator)
  • "Two deploy paths" prominent split on get-started (currently only standalone path is described in depth)
  • 13-skill listing as a feature card

Those need a more deliberate content-write session, not a hasty patch.

…ents.com URL

The live site's Register and Get Started pages still walked operators
through the pre-charliebot --key PVT_K1_xxx pattern that the agent
runner now refuses to boot with. Anyone landing there from npm or
search and copy-pasting would hit:

    [FATAL] XPR_PRIVATE_KEY is set but is no longer supported.

This patch aligns the marketing surface with what actually ships in
@xpr-agents/openclaw@0.4.2 and create-xpr-agent@0.5.1.

## Operator-blocking fixes

- `register.tsx` Deploy Your Agent block: dropped the --key flag row
  + the two `./start.sh --key PVT_K1_xxx` / `./setup.sh --key ...`
  code snippets. Replaced with the proton CLI keychain setup
  (key:add) → npx create-xpr-agent → ./start.sh --account --api-key
  flow. Added a callout naming the post-charliebot reason and a
  pointer to the Pinata harness `openclaw plugins install` path for
  operators who already have model access.
- `get-started.tsx` Step 1: rewrote "Create an account & get your
  private key" → "Create an account & load its key into the proton
  CLI keychain". Drops the table row claiming --key is required;
  shows the interactive `proton key:add` flow plus the
  `echo "no" | proton key:add` hosted-console form. Updates the
  WebAuth path to load the agent-side key into the proton CLI
  instead of passing it as a flag.
- `get-started.tsx` Step 3: dropped the Docker `./setup.sh --key ...`
  option (the scaffold no longer ships setup.sh; legacy under
  openclaw/starter/docker/ only). Added the harness-install path
  with `openclaw plugins install @xpr-agents/openclaw`.

## Stale-claim sweep

Marketing copy across four pages still advertised numbers that
predate 0.4.x:

- "55 MCP tools" → 72 MCP tools (verified against
  `openclaw/src/tools/*.ts` registerTool calls)
- "29 read tools, 26 write tools" → 35 read, 37 write
- "175+ AI tools" → "72 MCP tools + 13 bundled skills"
  (the 175+ number was an unsourced total that aggregated MCP +
  per-skill tool counts ambiguously)
- "549 tests" → 576 tests
- MCP Tools stat tile: 55 → 72

The "13 bundled skills" framing is the honest replacement for the
inflated total — it's verifiable (13 directories in
openclaw/skills/, all listed in openclaw.plugin.json) and
correlates 1:1 with what operators see in `openclaw plugins list`.

## URL: agents.protonnz.com → xpragents.com

The canonical URL is now xpragents.com. Updated three references in
`index.tsx`:
- og:url meta tag
- JSON-LD WebApplication.url
- JSON-LD WebPage.url

## Side-cleanup: orphaned untracked frontend files

Two untracked files were sitting in `frontend/src/` that broke
`npm run build` because of type errors against the current
NetworkConfig type:
- `EndpointSelector.tsx` + `EndpointSelector 2.tsx` (Finder dupe)
- `lib/rpc.ts` + `lib/rpc 2.ts` (Finder dupe)

Neither was imported anywhere in the live page tree. Both were
local-only artifacts from an earlier session. Removed so
`npm run build` succeeds on a clean checkout.

## Verification

- `npm run build` passes
- No remaining `--key PVT_K1_` patterns in user-facing pages
- No remaining "55 MCP tools" / "175+ tools" / "29 read, 26 write"
  / "549 tests" claims in `frontend/src/`
- All `agents.protonnz.com` references in `src/` migrated to
  `xpragents.com` (build artifacts in `.next/` will regenerate)
@paulgnz paulgnz merged commit 873384f into main May 15, 2026
5 checks passed
@paulgnz paulgnz deleted the fix/frontend-postcharliebot-claims branch May 15, 2026 22:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant