@ alook/ app
在当地运行 Alook——一个命令,不需要克隆.
快速启动
npx @alook/app onboard
这将:
- 请检查url=值 (帮助) 环境(Node.js QQ20, AI 运行时间)
- 安装视图
~/.alook/self-hosted/ - 产生秘密( E)
BETTER_AUTH_SECRET, (中文(简体) ),ENCRYPTION_KEY(中文(简体) ) - 运行数据库迁移( SQLite 通过 Cloudflare D1 本地端)
- 启动所有服务(网络、电子邮件工作人员、WebSocket、Wake工作人员)
- 创建您的本地账户
- 给这台机器配对然后启动
@alook/daemon - 在浏览器中打开仪表板
图标
| 命令 | 说明 |
|---|---|
npx @alook/app onboard | 完整的设置:安装、迁移、启动和对 |
npx @alook/app start | 从现有安装开始服务 |
npx @alook/app stop | 停止所有服务 |
npx @alook/app update | 更新服务和重新运行迁移 |
嵌入式守护进程
@alook/app 捆绑当前 @alook/daemon CLI(英语:CLI). 在机上自动进行对等;在应用程序拥有的数据目录中,保存的机器证书仍然保持私密.
npx @alook/app daemon list # List paired/running daemons
npx @alook/app daemon status [machine-id] # Check agent status
npx @alook/app daemon stop <machine-id> # Stop one daemon
npx @alook/app daemon start --id <machine-id> # Restart without exposing its credential
选项
--port-web <port> Web server port (default: 15210)
--port-email <port> Email worker port (default: 15211)
--port-ws <port> WebSocket worker port (default: 15212)
--port-wake <port> Wake worker port (default: 15213)
--skip-register Skip account creation (onboard only)
建筑
服务
Alook 管理着四个本地服务, 各自在自己的Wrangler dev进程中:
| 服务 | 默认端口 | 说明 |
|---|---|---|
| 网页 | 第1520号 | 主要网络应用(Wrangler上的Next.js)——仪表板,API,认证 |
| 电子邮件工作员 | 1521 (英语) | 电子邮件处理工人 |
| WebSocket (WS- DO) (英语) | 15212号 | 通过持久对象进行实时通信 |
| 唤醒工人 | 1521(2003) | 向本地守护进程发送未读提醒事件 |
所有服务共享一个单一的 SQLite 数据库( Cloudflare D1 本地模式),状态持续到 ~/.alook/self-hosted/web/.wrangler/state/。 。 。 .
目录布局
~/.alook/self-hosted/
├── web/ # Web app (wrangler.toml, migrations, .dev.vars)
│ ├── .wrangler/state/ # D1 database & KV persistence
│ └── migrations/ # SQL migration files
├── email-worker/ # Email worker (wrangler.toml, .dev.vars)
├── ws-do/ # WebSocket Durable Object worker
├── queue-worker/ # Queue task consumer (agent wake + mobile push)
├── daemon/ # Private machine credentials, daemon state, and logs
├── logs/ # Service logs (web, email, WS, and wake workers)
└── .pids.json # PID tracking for running services
数据库迁移
迁移是通过 wrangler d1 migrations apply --local。它们在下列时间自动运行:
onboard- 应用所有新安装的迁移update安装最新版本后应用任何新的迁移
Wrangler追踪已实施迁移;只执行待定的追踪.
机密管理
开始 onboard,秘密是自动生成并写入 .dev.vars 文件 :
- 网页数字 :
BETTER_AUTH_SECRET, (中文(简体) ),BETTER_AUTH_URL, (中文(简体) ),ENCRYPTION_KEY, OAuth 客户端 ID/ 秘密占位符 - 电子邮件工作员数字 :
ENCRYPTION_KEY(网名从)
在后续运行中,秘密永远不会被覆盖——只有缺失的文件被创建.
开发模式
当 ALOOK_PROJECT_ROOT 环境变量被设定, @alook/app 以 dev 模式运行以对抗 monorepo :
- 运行
pnpm predev设置环境文件 - 运行
pnpm db:migrate移民(而不是Wrangler CLI) - 开始网络通过
next dev(代替Wrangler) - 服务在前景中运行,并有前缀日志输出(
[web], (中文(简体) ),[email-worker], (中文(简体) ),[ws-do](中文(简体) ) Ctrl+C干净地停止所有服务
ALOOK_PROJECT_ROOT=/path/to/alook npx @alook/app onboard
所需资源
- 节点.js
- 支持代理运行时间, 如 Claude 代码、 Codex、 OpenCode、 Pi 或 Cursor
限制
- 没有本地模式的电子邮件发送/接收
- OAuth 登录( GitHub, Google) 已禁用; 使用电子邮件/ 密码字
许可证
阿帕奇-2.0 — 见 自由主义。 。 。 .