OpenCode 不仅可以运行在终端里,它同样能以一个完整的 Web 应用程序形态直接在浏览器中使用,提供与终端几乎无差别的强大 AI 编码体验。这意味着,完全不需要打开命令行窗口,也能使用 OpenCode。
快速上手
启动 Web 界面只需一条命令:
opencode web这条命令会在本地127.0.0.1地址上启动一个服务器,端口由系统自动在可用范围内随机分配。同时,OpenCode 会自动在默认浏览器中打开操作页面。
⚠️** 安全提醒**
有一点必须注意:如果环境变量OPENCODE_SERVER_PASSWORD没有被设置,这个 Web 服务器就处于未加密保护的状态。仅在本机使用时,这通常是可以接受的,但假如要让服务器接受来自网络的访问,就务必事先设置好密码。
Windows 用户请注意
为获得最好的使用体验,建议在 WSL(Windows Subsystem for Linux)中运行opencode web,而不是直接在 PowerShell 中执行。这样做能确保文件系统访问和终端集成功能都处于正常工作状态。
配置选项
Web 服务器的各项设置可以通过命令行标志来临时指定,也可以写入配置文件实现持久化。
端口
默认情况下 OpenCode 会自己挑选一个可用的端口。如果想指定一个固定端口,可以这样:
opencode web--port4096主机名
默认的绑定地址是127.0.0.1(即仅允许本机访问)。要让 OpenCode 能被局域网内的其他设备访问,需要将主机名设为0.0.0.0:
opencode web--hostname0.0.0.0当使用0.0.0.0时,OpenCode 会同时显示本地访问地址和网络访问地址,比如:
Local access: http://localhost:4096 Network access: http://192.168.1.100:4096mDNS 发现
启用 mDNS 功能后,服务器就能在局域网内被自动发现:
opencode web--mdns这个标志会自动将主机名设为0.0.0.0,并以opencode.local作为域名在局域网内广播。局域网内的其他设备通过这个域名就能直接访问,无需记忆 IP 地址。
如果需要在同一网络中运行多个实例,可以自定义 mDNS 域名加以区分:
opencode web--mdns--mdns-domain myproject.localCORS(跨域资源共享)
有的场景下可能需要允许额外的域来进行跨域访问(比如构建自定义前端界面时),这时可以用--cors参数添加许可域:
opencode web--corshttps://example.com身份验证
要保护访问入口的安全,可以通过OPENCODE_SERVER_PASSWORD环境变量设置一个密码:
OPENCODE_SERVER_PASSWORD=secret opencode web访问时的用户名默认是opencode,如果想换一个,可以用OPENCODE_SERVER_USERNAME环境变量来修改。
使用 Web 界面
服务器启动之后,浏览器的 Web 界面便成为与 OpenCode 会话打交道的主入口。
会话管理
在主页上就可以查看和管理所有会话。页面上会列出当前活动中的会话,同时也可以从这里启动新的会话。
服务器状态
点击界面上的 “See Servers” 按钮,就能看到所有已连接服务器及其当前状态。
挂载终端
更有意思的是,终端 TUI(终端用户界面)可以挂载到一个正在运行的 Web 服务器上:
# 先在一个终端中启动 Web 服务器opencode web--port4096# 再打开另一个终端,执行挂载命令opencode attach http://localhost:4096这样就能同时使用 Web 界面和终端界面了,两者共享同一套会话和状态数据,在一边做的操作,另一边完全同步可见。
配置文件
除了命令行参数,服务器设置同样可以在opencode.json配置文件中完成:
{"server":{"port":4096,"hostname":"0.0.0.0","mdns":true,"cors":["https://example.com"]}}有一点值得记住:命令行标志的优先级高于配置文件中的对应设置。也就是说,命令行里的临时参数会覆盖配置文件里写好的值。