Files
ai-town/server-node
empty 8b90d55f02 feat: AI Town MVP - 完整三层架构实现
- Python FastAPI 引擎:世界状态模拟、全局能量条、世界事件系统
- Node.js WebSocket 服务器:实时通信、事件队列批处理
- 前端仪表盘:世界状态可视化、行动日志、事件展示

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-30 10:29:35 +08:00
..

AI Town Server (Node.js)

WebSocket 服务器,连接前端和 Python 引擎。

功能

  • HTTP 静态托管 ../web 目录
  • WebSocket 接收客户端消息并入队
  • 每 2 秒批量调用 Python 引擎并广播结果

启动

# 安装依赖
npm install

# 开发模式(热重载)
npm run dev

# 生产构建
npm run build
npm start

依赖服务

启动前需先运行 Python 引擎:

cd ../engine-python
uvicorn app.main:app --port 8000

API

  • GET /health - 健康检查,返回 ok
  • WebSocket / - 游戏消息通道

WebSocket 协议

客户端发送:

{ "type": "comment", "text": "你好", "user": "玩家A" }

服务端广播:

{
  "world_state": { "tick": 1, "weather": "sunny", ... },
  "actions": [{ "agent_id": "alice", "say": "...", "do": "..." }]
}