第5课:远程终端操作#
为什么需要这个#
你在工作电脑上开始了一个任务,但需要离开。有了HAPI,你可以从手机继续控制AI代理——发送命令、审批操作并跟踪进度。就像你终端的遥控器。
两种工作模式#
HAPI支持两种模式,可以在它们之间即时切换:
本地模式(在终端中)#
- 你坐在电脑前,像平常一样工作
- 完整的终端界面,带语法高亮
- 按键即时响应
- AI代理直接在你的机器上运行
远程模式(从手机/浏览器)#
- 通过Web App从世界任何地方控制
- 一键审批权限
- 实时监控进度
- 会话继续在你的电脑上运行
如何切换模式#
从终端 → 切换到手机#
只需从手机(通过Web App)发送消息。终端会自动进入等待模式并显示:
Remote mode - waiting for input就这样!现在控制权在手机端。
从手机 → 切换到终端#
在终端中按双空格。立即恢复本地控制——就像你从未离开过。
💡 这是同一个会话——切换不会丢失上下文、历史和状态。
从手机运行命令#
第1步:确保Hub和Runner正在运行#
hapi hub --relay # Hub可通过互联网访问
hapi runner start # 远程启动的后台服务第2步:在手机上打开Web App#
扫描Hub显示的QR码,或通过URL访问。
第3步:管理会话#
在Web App中你可以:
- 打开现有会话 ——在列表中点击它
- 创建新会话 ——点击"New Session"按钮并选择机器
- 向代理发送消息 ——在输入框中打字,就像普通的即时通讯一样
- 浏览文件 ——打开会话的文件浏览器
- 查看代码更改 ——直接在界面中查看git diff
AFK模式:“离开键盘”#
AFK(Away From Keyboard——离开键盘)是HAPI专门为之设计的场景:
典型场景#
09:00 你在电脑前。启动:hapi
分配任务:"重构支付模块"
09:10 你去喝咖啡 ☕
09:12 代理想修改文件payment.ts
→ 手机收到通知!
→ 打开Web App → 点击"批准" ✅
09:15 代理想运行测试
→ 手机收到通知
→ "批准" ✅
09:20 回到电脑前
→ 双空格 → 回到终端
→ 代理已经全部完成! 🎉操作审批#
当AI代理想执行潜在危险的操作(修改文件、运行命令)时,会请求你的许可。
权限请求的样子#
在Web App中你会看到:
- 代理想做什么(例如"Edit file: src/payment.ts")
- 详情 ——具体提议了哪些更改
- Approve(批准)和 Deny(拒绝)按钮
审批方式#
| 方式 | 如何操作 |
|---|---|
| Web App | 点击"Approve"或"Deny"按钮 |
| Telegram | 收到机器人通知,回复 |
| 语音 | 对语音助手说"是"或"否" |
| 终端 | 如果你在电脑前——像平常一样确认 |
远程启动会话#
有了Runner,你可以直接从手机创建新会话,即使电脑上没有打开终端。
工作原理#
- Runner在你的电脑后台运行
- 在Web App中点击 "+"(新会话)
- 从列表中选择机器
- 选择AI代理(Claude、Codex、Gemini)
- 可选:指定工作目录
- 会话将在你的电脑上启动——从手机控制!
手机 → Web App → Hub → Runner → 新CLI会话
│
AI代理在你的
电脑上运行实用建议#
1. 配置通知#
连接Telegram机器人以接收推送通知:
export TELEGRAM_BOT_TOKEN="你的令牌"
hapi hub --relay现在权限请求会直接发送到Telegram——无需一直打开Web App。
2. 安装PWA#
在手机浏览器中打开Web App并"添加到主屏幕"。应用将像普通应用一样工作——有图标、全屏模式和快速访问。
3. 使用pm2确保可靠性#
pm2 start "hapi hub --relay" --name hapi-hub
pm2 start "hapi runner start --foreground" --name hapi-runner
pm2 save这样Hub和Runner将持续运行,即使电脑重启后也是如此。
4. 多台机器#
如果你有多台电脑(工作+家用),在每台上安装CLI和Runner并连接到同一个Hub。在Web App中你会看到所有机器,可以在任何一台上启动会话。
课程总结#
- HAPI允许从手机控制AI代理——发送任务和审批操作
- 终端和手机之间的切换是即时的(双空格)
- AFK模式 ——离开电脑,代理继续工作;你从手机审批操作
- Runner 允许远程启动新会话
- 通知可以通过 Telegram、Web App 或语音助手接收
- 安装PWA和pm2以获得最佳使用体验