Skip to content

Commit 47620d2

Browse files
Chris Shellenbargerclaude
andcommitted
Change default serve port from 3100 to 3200
Port 3100 conflicts with Loki (Grafana log aggregation) which uses it as its default. Updated src, vite proxy, tests, and all documentation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent bb38926 commit 47620d2

13 files changed

Lines changed: 19 additions & 19 deletions

CHANGELOG.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ The harness now has a dual-interface architecture: the original terminal TUI for
1515
- 55 unit tests covering frontmatter parsing, tool filtering, and agent context
1616

1717
**Phase 2: Serve Mode Backend**
18-
- `--serve` starts a Fastify HTTP/WebSocket server (default port 3100)
18+
- `--serve` starts a Fastify HTTP/WebSocket server (default port 3200)
1919
- REST API: agent roster, session CRUD, usage tracking
2020
- WebSocket: real-time streaming (text tokens, thinking tokens, tool calls, sub-agent progress)
2121
- Token-based authentication via `~/.mastersof-ai/access.yaml` (SHA-256 hashed tokens)

CLAUDE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ Both share agent loading, tools, sub-agents, sessions, and memory.
3131
```bash
3232
npx tsx bin/mastersof-ai.js # TUI with default agent
3333
npx tsx bin/mastersof-ai.js --agent researcher # TUI with specific agent
34-
npx tsx bin/mastersof-ai.js --serve # Web UI server on port 3100
34+
npx tsx bin/mastersof-ai.js --serve # Web UI server on port 3200
3535
npx tsx bin/mastersof-ai.js --serve --port 5000 # Web UI on custom port
3636
npx tsx bin/mastersof-ai.js --agent researcher --sandbox # Bubblewrap sandbox
3737
npx tsx bin/mastersof-ai.js --card # Output Agent Card JSON

DESIGN.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ Agent runtime with full system prompt control. Two interfaces, one core.
44

55
```
66
Terminal TUI: mastersof-ai [--agent x] Single user, local, React/Ink
7-
Web UI: mastersof-ai --serve [--port 3100] Multi-user, token auth, Fastify + React SPA
7+
Web UI: mastersof-ai --serve [--port 3200] Multi-user, token auth, Fastify + React SPA
88
```
99

1010
Both share: agent loading, IDENTITY.md parsing, Claude Agent SDK, MCP tools, sub-agents, sessions, memory.
@@ -61,7 +61,7 @@ Detailed documentation for each area:
6161
```bash
6262
npx tsx bin/mastersof-ai.js # TUI with default agent
6363
npx tsx bin/mastersof-ai.js --agent analyst # TUI with specific agent
64-
npx tsx bin/mastersof-ai.js --serve # Web server on port 3100
64+
npx tsx bin/mastersof-ai.js --serve # Web server on port 3200
6565
npx tsx bin/mastersof-ai.js --serve --port 5000 # Custom port
6666
npx tsx bin/mastersof-ai.js --agent analyst --sandbox # Bubblewrap sandbox
6767
npx tsx bin/mastersof-ai.js --card # Output Agent Card JSON

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ mastersof-ai --list-agents # show available agents
123123
### Web UI
124124

125125
```bash
126-
mastersof-ai --serve # start on port 3100
126+
mastersof-ai --serve # start on port 3200
127127
mastersof-ai --serve --port 5000 # custom port
128128
```
129129

docs/configuration.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -294,7 +294,7 @@ mastersof-ai --resume [name|#N] Resume a session (TUI)
294294
mastersof-ai --sandbox Run in bubblewrap sandbox
295295
mastersof-ai --list-agents Show available agents with metadata
296296
mastersof-ai --init Force first-run setup
297-
mastersof-ai --serve Start web UI server (port 3100)
297+
mastersof-ai --serve Start web UI server (port 3200)
298298
mastersof-ai --serve --port 5000 Custom port
299299
mastersof-ai --serve --host 127.0.0.1 Bind to specific host
300300
mastersof-ai --card Output A2A Agent Card JSON and exit

docs/design-decisions.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
| Separate frontend SPA | `web/` dir, Vite + React, deploys independently | Frontend on CDN (Cloudflare Pages), backend on VPS — decoupled scaling |
2525
| Token auth via access.yaml | SHA-256 hashed tokens, constant-time comparison | Simple, no external auth service, hot-reloadable, secure at rest |
2626
| Per-user session isolation | Sessions stored under `sessions/{user}/` | No cross-user data leakage, supports per-user cost caps |
27-
| Default port 3100 for serve | Not 3000 (common conflict) | Avoids collision with Vite dev server and other common services |
27+
| Default port 3200 for serve | Not 3000 (common conflict) | Avoids collision with Vite dev server and other common services |
2828

2929
## Agent Definition
3030

src/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ if (getFlag("card")) {
198198
// --- Flag: --serve (server mode) ---
199199

200200
if (getFlag("serve")) {
201-
const port = parseInt(getFlagValue("port") ?? "3100", 10);
201+
const port = parseInt(getFlagValue("port") ?? "3200", 10);
202202
const host = getFlagValue("host") ?? "0.0.0.0";
203203

204204
const { loadAccessConfig } = await import("./access.js");

tests/test-ember-flow.mjs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
// Ember conversation flow test — tests multi-turn tool use
22
// Usage: node web/test-ember-flow.mjs
3-
// Requires: backend running on :3100
3+
// Requires: backend running on :3200
44

55
import { WebSocket } from "ws";
66

77
const TOKEN = "b3f88d0b-e226-486e-b0f6-80a5b98535cc";
8-
const WS_URL = `ws://localhost:3100/ws?token=${TOKEN}`;
8+
const WS_URL = `ws://localhost:3200/ws?token=${TOKEN}`;
99
const TIMEOUT = 120_000; // 2 minutes — tool use can be slow
1010

1111
function connectAndSubscribe() {

tests/test-ember-tools.mjs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
import { WebSocket } from "ws";
55

66
const TOKEN = "b3f88d0b-e226-486e-b0f6-80a5b98535cc";
7-
const WS_URL = `ws://localhost:3100/ws?token=${TOKEN}`;
7+
const WS_URL = `ws://localhost:3200/ws?token=${TOKEN}`;
88

99
function connect(sessionId) {
1010
return new Promise((resolve, reject) => {

tests/test-integration.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
#!/usr/bin/env bash
22
# Integration test: validates web frontend API calls against the running backend.
3-
# Requires: backend running on :3100 (mastersof-ai --serve)
3+
# Requires: backend running on :3200 (mastersof-ai --serve)
44
#
55
# Usage: bash web/test-integration.sh
66

77
set -uo pipefail
88

9-
BACKEND="http://localhost:3100"
9+
BACKEND="http://localhost:3200"
1010
VALID_TOKEN="b3f88d0b-e226-486e-b0f6-80a5b98535cc"
1111
INVALID_TOKEN="bad-token-12345"
1212
PASS=0

0 commit comments

Comments
 (0)