@cultivx/codereach

中文文档
0.2.34发布于 2026/11/07MITTypeScriptES Module近 30 天下载 5485

从您的手机中驱动本地的 OpenCode 会话 。 运行一个命令;扫描一个QR.

中文使用文档
文档目录11 节
  1. 安装
  2. 更新
  3. 语音模型
  4. 身份
  5. 它会做什么
  6. 旗帜
  7. 环境
  8. 它能做什么和不能做什么
  9. 可选工具
  10. 日志
  11. 归属

代码

将本地的 OpenCode 会话转换成您手机能驱动的东西 .

cd ~/projects/my-app
npx @cultivx/codereach

安装

命令需求
无npx @cultivx/codereach,或 npm install -g @cultivx/codereach节点 22+

Npm包是捆绑的JavaScript. opencode 一定在你身边 PATH;不需要其他东西.

更新

codereach 每天检查一次npm注册 并告诉你什么时候有 新发布, 带有更新您副本的命令 :

CodeReach 0.3.0 is available (you have 0.2.11). Update with: npm install -g @cultivx/codereach@latest

或只请作道:

codereach upgrade

它的工作原理是如何安装和运行正确的软件包管理器.

语音模型

声音在你的电脑上被转录 电话发送一个语音给 机器是配对的, 没有任何东西去主机演讲服务.

有两个包:

包装大小封面
联合国541 甲基溴英语,最准确
多语言645 甲基溴从语音中检测出30种语言

发动机是 转写.cpp数字 : 苹果硅上的金属,Windows和Linux上的Vulkan,有一个CPU倒置. 这个 匹配本地软件包安装于此 CLI; 没有 GPU 或编译器 需要帮助.

代理开始时没有下载 。 当您想要语音时安装 :

codereach voice                         # what is installed
codereach voice setup                   # asks which language, then downloads
codereach voice setup --language en     # skip the question
codereach voice setup --language multi
codereach voice remove --language en    # delete one
codereach voice remove --all            # delete every pack

模特儿住在这里 ~/.codereach/voice/models。下载将对照 安装前被绑住的SHA-256,所以断开的下载从未成为 发动机可以装入模型. codereach voice setup --force 又下载.

  Remote Control ready
  ─────────────────────
  Session:  studio-mac
  Folder:   ~/projects/my-app
  OpenCode: 2.0.29

  End-to-end encrypted: the relay cannot read this session.
  Scan the QR with the app, or paste this pairing link there.
  No pairing code: only the QR and the link pair an encrypted session.

  Scan with CodeReach:

  █▀▀▀▀▀█ ▄▀▄ █▀▀▀▀▀█
  █ ███ █ ▀▄▀ █ ███ █
  █ ▀▀▀ █ █▀▄ █ ▀▀▀ █
  ▀▀▀▀▀▀▀ ▀▀▀ ▀▀▀▀▀▀▀

  Pairing link: codereach-pair:eyJ2IjoyLCJjb2RlIjoiN0s5U...

  If end-to-end encryption slows things down, you can disable it with --no-e2e, at your own risk.

  Expires: 12:29:27 pm

  Waiting for phone… (Ctrl+C to stop)

与 --no-e2e 机器打印一个短代码, 而这是唯一的 配对纯文本会话的文物 :

  Code:  7K9P-2M4X

  Plaintext: the relay can read this session.

身份

每届都报告三件事 应用显示三件事:

示例为什么
会议studio-mac,或任何东西 --name 说区分两个运行在同一个机器上
机器studio-mac (主持人名)区分两台计算机
文件夹~/projects/my-app区分同一还原的两次检出

--name 只更改会话标签; 主机名总是被报告 单独命名会话 api 仍然告诉你它在你的笔记本电脑上. 文件夹在您的主目录上崩溃, 所以中继器从未看到 你的账户名称.

它会做什么

  1. 查找或开始 opencode serve 打开 仅127.0.0.1,带有新鲜的随机 密码保存在记忆中 .
  2. 要求接力进行对接并打印对接文物. 在一个 端到端运行这些是QR和配对链接,它们携带一个 一次性保密,因此只有在stdout是终端时才打印;管道或 登录的输出表示它们被隐藏(电话之前的对接仍然连接). 没有 短码被打印: 中继器的配对和携带的代号 加密会话不需要任何材料 所以打一个电话 将用正文对齐,每个命令都将被拒绝。 单位 --no-e2e 模式代码是机器打印的,因为这是双相 纯文本会话 。 接力没有账号,因此它首先给代理递出一个小的工作证明挑战(大约一秒钟的CPU,用短片解开,所以Ctrl+C保持响应),代理随请求发出答案.
  3. 连接您的手机命令到 OpenCode 并流回结果 .
  4. 在 Ctrl+C 上清理: 在中继上结束会话并停止服务器 开始 .

您的网络中没有打开端口 。 特工只出门 连接,所以它工作在NAT,CGNAT和公司Egress代理之后.

旗帜

旗帜含义
-n, --name <name>应用程序中此会话的标签 。 默认主机名 .
-r, --relay <url>中继为用. 默认已部署的代码Reach中继器 .
-a, --attach <url>附在您已经启动的 OpenCode 服务器上 。 要求数 OPENCODE_SERVER_PASSWORD。 。 。 .
-y, --yes跳过第一跑 同意即时. 仅CI:非TTY stdin被作为衰落来对待,所以这个存在是为了脚本而不是方便. 它从不启用手机命令.
--e2e-auto-accept端到端跑道:对接第一个不打入其六位数代码而扫描QR的手机. 任何看到 QR 的人可以对对, 所以它被拒绝 当 Stdout 不是一个终端,除非 CODEREACH_E2E_SHOW_PAIRING_IN_PIPE=1 已经设定. --yes 这并不意味着.
--no-e2ePlaintext模式:中继器可以读取会话. 用于已有的平正文本配对, 或如果端到端加密太慢, 冒着风险 。 默认是加密结束 .
-v, --verbose调试细节到 Stderr .

环境

变量含义
OPENCODE_URL使用此 OpenCode 服务器, 而不是生成一个 .
OPENCODE_SERVER_PASSWORD外部 OpenCode 服务器的密码 。 要求为 OPENCODE_URL 编号 : --attach。 。 。 .
CODEREACH_RELAY_URL与 --relay。 。 。 .
CODEREACH_HOME在同意记录的情况下,代理人的身份(identity.json)和可信任的电话(devices.json现场直播。 默认为 ~/.codereach。 。 。 .
CODEREACH_E2E_SHOW_PAIRING_IN_PIPE1 打印端到端对齐的QR和链接,即使Stdout不是终端,并允许 --e2e-auto-accept 在这里。 只有当输出对您是保密的时, 才会设定它: 读它的人可以配对 .

它能做什么和不能做什么

默认情况下,电话可以发送提示,回答许可请求,中止一个转弯, 管理会话(创建、重命名、披针、删除、切换模式和模式),读取 diffs 并拖动屏幕截图和其他介质 生产。 破坏行动仍要经过OpenCode自己的 许可系统,它表面上显示为屏蔽批准/拒绝表.

从手机上运行命令关闭. 这是远程代码执行,所以 第一次电话问, codereach 问你在这个终端 (单位:千美元)Allow commands from your phone? [y/N]) (中文(简体) ). 直到你回答是的,电话被告诉了 在电脑上批准. --yes 无法做到这一点。 答复记录在 ~/.codereach/shell-consent.json; 删除该文件以再次关闭。 图标 只从您的工程文件夹中开始 .

可选工具

不需要低于标准;工具打开时,每个功能都开关 PATH。 。 。 .

工具用于
sips (飞船与macOS)JPEG 图像缩略图
ffmpegWebP和视频缩略图, 720p 引渡,海报框, 标出相容
ffprobe视频大小和长度
lsofdev 服务器正在监听的端口

日志

结构化 JSON 改为 标准; stdout 保留在横幅上, 所以 QR 代码 保持可扫描。 文件内容从未登录, 提示文本从未登录 info,工具输出在到达日志行前被截断.

归属

不隶属于OpenCode项目或获得其认可. 见寄存器 LICENSE 财务报告和审定财务报表 docs/SECURITY.md。 。 。 .

版本与发布记录

@cultivx/codereach 共发布 29 个版本,首次发布于 2026/10/22;过去 12 个月发布了 29 个版本。

版本发布日期距今
0.2.34latest2026/11/074 天前
0.2.332026/11/074 天前
0.2.322026/10/3110 天前
0.2.312026/10/3011 天前
0.2.302026/10/2913 天前
0.2.292026/10/2814 天前

关于 @cultivx/codereach 的常见问题

@cultivx/codereach 是什么?

从您的手机中驱动本地的 OpenCode 会话 。 运行一个命令;扫描一个QR.

如何安装 @cultivx/codereach?

在项目目录运行 npm install @cultivx/codereach,或使用 pnpm add / yarn add / bun add。它还提供命令行工具 codereach,可以用 npx codereach 直接运行。

@cultivx/codereach 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@cultivx/codereach 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@cultivx/codereach 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@cultivx/codereach 可以商用吗?

@cultivx/codereach 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@cultivx/codereach 的下载量有多少?

根据 npm 官方下载统计,@cultivx/codereach 在 2026/10/11 – 2026/11/09 这 30 天内被下载 5,485 次,日均约 183 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@cultivx/codereach 还在维护吗?

最新版本 0.2.34 发布于 2026/11/07(4 天前);至今共发布 29 个版本,其中过去 12 个月发布了 29 个;首次发布于 2026/10/22。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。