@@ -318,7 +318,7 @@ export function BoothDashboard({ auth, setRoute }) {
return (
-
My Booth
{auth.user.handle}
+
My Legion
{auth.user.handle}
{err &&
{err}
}
diff --git a/src/Scene2D.jsx b/src/Scene2D.jsx
index b39cfc7..e7e7b04 100644
--- a/src/Scene2D.jsx
+++ b/src/Scene2D.jsx
@@ -1,6 +1,6 @@
import React, { useCallback, useEffect, useRef, useState } from 'react';
import { useAuth, AuthPanel, AdminConsole } from './Auth.jsx';
-import { AgentBrowse, BoothDashboard } from './AgentPlatform.jsx';
+import { AgentBrowse, LegionDashboard } from './AgentPlatform.jsx';
import Mansion from './Mansion.jsx';
import Account from './Account.jsx';
import TavernGame from './TavernGame.jsx';
@@ -10,25 +10,26 @@ import { api } from './api.js';
const Menu = ({ size = 20 }) => (
);
const X = ({ size = 20 }) => (
);
-const RELEASE = '0.99.0-boothform';
+const RELEASE = '1.0.0-legion';
const NAV = [
{ id: 'home', label: 'Tavern' },
{ id: 'agents', label: 'Browse Agents' },
- { id: 'mansion', label: 'Mansion' },
- { id: 'booth', label: 'My Booth' },
+ { id: 'mansion', label: 'My Mansion' },
+ { id: 'legion', label: 'My Legion' },
];
-const VALID_ROUTES = ['home', 'agents', 'mansion', 'booth', 'account', 'admin', 'signin', 'status', 'changelog'];
+const VALID_ROUTES = ['home', 'agents', 'mansion', 'legion', 'account', 'admin', 'signin', 'status', 'changelog'];
const ROUTE_TITLES = {
- home: 'amerc — hire agents like mercenaries', agents: 'Browse Agents · amerc', mansion: 'The Mansion · amerc',
- booth: 'My Booth · amerc', account: 'Account · amerc', signin: 'Sign in · amerc', status: 'System status · amerc',
+ home: 'amerc — hire agents like mercenaries', agents: 'Browse Agents · amerc', mansion: 'My Mansion · amerc',
+ legion: 'My Legion · amerc', account: 'Account · amerc', signin: 'Sign in · amerc', status: 'System status · amerc',
changelog: 'Changelog · amerc', admin: 'Quartermaster · amerc',
};
function useHashRoute() {
const normalize = () => {
// first path segment is the route; the rest (e.g. #/agents/
) is a sub-path
- const base = window.location.hash.replace(/^#\/?/, '').split('/')[0];
+ let base = window.location.hash.replace(/^#\/?/, '').split('/')[0];
+ if (base === 'booth') base = 'legion'; // legacy alias for the renamed route
return VALID_ROUTES.includes(base) ? base : 'home';
};
const [route, setRouteState] = useState(normalize);
@@ -127,7 +128,7 @@ function Home({ setRoute }) {
Hire, run, and deliver AI agents across any software boundary — as an embedded chatbox, a live web terminal, or a public URL. No infrastructure, just skills.
-
+
{stats && (
@@ -148,8 +149,8 @@ function Home({ setRoute }) {
const HF_STEPS = [
{ icon: '🍺', title: 'Browse & hire', body: 'Walk the tavern floor and pick a mercenary by skill and tag. See runtime, online status, and what each agent can do.', cta: ['Browse Agents', 'agents'] },
- { icon: '🗡️', title: 'Publish & run', body: 'Register your own agent class in My Booth and run instances — your broker brings the runtime. No infrastructure to manage.', cta: ['Open My Booth', 'booth'] },
- { icon: '🔌', title: 'Deliver anywhere', body: 'Serve users as an embedded chatbox, drive a live web terminal, or expose a local port to the internet via Showcase.', cta: ['The Mansion', 'mansion'] },
+ { icon: '🗡️', title: 'Publish & run', body: 'Register your own agent class in My Legion and run instances — your broker brings the runtime. No infrastructure to manage.', cta: ['Open My Legion', 'legion'] },
+ { icon: '🔌', title: 'Deliver anywhere', body: 'Serve users as an embedded chatbox, drive a live web terminal, or expose a local port to the internet via Showcase.', cta: ['My Mansion', 'mansion'] },
];
const HF_USES = [
{ icon: '💬', title: 'Chatbox', body: 'Drop one