# @ever-works/opencode-plugin 中文文档

规范地址：https://npmcn.com/package/%40ever-works/opencode-plugin/

版本：1\.0\.18
npm 元数据更新时间：2026-11-03T09:01:57.953Z
中文译文更新时间：2026-11-14T01:54:44.820Z
软件包许可：AGPL-3\.0

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40ever-works/opencode-plugin
原文对照：https://npmcn.com/package/%40ever-works/opencode-plugin/?lang=original
项目主页：https://github.com/ever-works/ever-works/tree/main/packages/plugins/opencode#readme
源码仓库：https://github.com/ever-works/ever-works

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：2.1 MB，6 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：2 个
- peer 依赖：@ever-works/plugin ^1\.2\.16
- 首次发布：2026-06-06T08:19:38.333Z
- 最新版本发布：2026-11-03T09:01:57.553Z
- 近 30 天下载量：2609（2026-10-14 至 2026-11-12，npm 官方下载统计）
- 已发布版本数：15（近 12 个月 15 个）

## 中文简介

OpenCode 生成器插件 - 代表生成到 OpenCode 的完整管道插件

## 安装

```sh
npm install @ever-works/opencode-plugin
```

也可以使用：`pnpm add @ever-works/opencode-plugin`、`yarn add @ever-works/opencode-plugin`、`bun add @ever-works/opencode-plugin`

## README

# @ ever- works/ opencode- 插件

将生成工作委托给 [打开代码 CLI](https://github.com/sst/opencode). 一个单一的 OpenCode CLI会话在临时工作空间内自主处理网页搜索,内容创建,以及文件生成,同时使用活跃的Ever Works AI提供商进行模型访问.

## 插件元数据

| 外地 | 数值 |
| --- | --- |
| 身份证 | `opencode` |
| 类别 | `pipeline` |
| 能力 | `pipeline`, (中文(简体) ), `form-schema-provider` |
| 作者 | 永远工作团队 |
| 许可证 | AGPL-3.0 导弹 |
| 内建 | 对 |
| 可自动启用 | 没有 |

## 管道步骤

该插件运行了6个相继步骤 :

| {\\fn方正粗倩简体\\fs12\\an8\\1cHFFFF00\\b0} | 步骤 | 说明 | 可选 |
| --- | --- | --- | --- |
| 1个 | **设置 OpenCode** | 从 GitHub 下载/切换 OpenCode 的 CLI 二进制 | 没有 |
| 2个 | **准备背景** | 创建临时工作空间、种子现有项目和元数据 | 没有 |
| 3个 | **生成项目** | 执行 OpenCode CLI 作为 JSON 文件来研究和生成项目 | 没有 |
| 页:1 | **收集结果** | 读取生成的 JSON 文件返回到管道结果 | 没有 |
| 页:1 | **抓取屏幕截图** | 对生成的项目进行截图( 通过截图提供者) | 对 |
| 6个 | **清理** | 删除临时工作空间 | 对 |

步骤3,a **分类学观察者** 监视新项目文件的工作空间并保存 `_meta/` 实时同步分类文件(类别,标签,品牌). 按项目报告进展情况.

## AI 供应商一体化

OpenCode 不要求用户在此插件内配置单独的提供者, 认证模式或模型 .

相反,它解决了活跃的Ever Works `ai-provider` 当前 `{ userId, workId }` 上下文并生成一个孤立的 OpenCode 配置

-   提供者基础 URL 和 API 密钥来自 `execContext.aiFacade.getProviderConfig(...)`
-   模型选择来自 AI 提供者的路由配置( S)`complexModel` 先说 `defaultModel`(中文(简体) )
-   OpenCode 运行时使用用户扫描的、孤立的配置工作,而不是机器- 全球认证状态
-   明确启用网络工具,包括 `websearch`

## 设置

| 设置 | 类型 | 范围 | 说明 |
| --- | --- | --- | --- |
| `version` | 字符串 | 隐藏 | 要安装的 OpenCode CLI 版本( 默认 ): `v1.0.223`(中文(简体) ) |

## 表单Schema

插件提供了一个用户格式,有两个可配置字段:

| 外地 | 类型 | 默认 | 验证 | 说明 |
| --- | --- | --- | --- | --- |
| `target_items` | 编号 | 第50条 | 1 -500 (中文(简体) ) | 要生成的新项目的目标数量 |
| `capture_screenshots` | 布尔 | 虚假 | \- 说吧 | 获取生成项目的截图 |

## 提示系统

提示通过一个即时外观(如:Langfuse)来管理. 当找不到外部提示时,硬码默认被作为倒置.

提示键 :

-   `opencode.system` —系统即时模板
-   `opencode.user` – 用户提示模板

两者都支持工作环境、现有项目、类别、标签和品牌的可变替代.

## 二进制管理

插件从 GitHub 版本下载 OpenCode CLI 二进制 :

-   二进制缓存于 `{tmpdir}/opencode-generator/bin/opencode-{version}-{platform}/`
-   平台检测 : `linux-x64`, (中文(简体) ), `linux-arm64`, (中文(简体) ), `darwin-x64`, (中文(简体) ), `darwin-arm64`
-   可用SHA-256核对总和
-   默认版本 : `v1.0.223`

## 处理错误

-   **非零退出代码**:作为软警告处理. 如果物品仍在生产中,结果就会成功,并附有警告.
-   **空结果**:如果OpenCode完成而未产生任何有效的项目JSON文件,则会随CLI输出节录出错以进行调试.
-   **缺少 AI 提供者配置**: 如果已解决的 Ever Works AI 提供商没有曝光一个基址, API 密钥, 或可运行的模型, 管道会提前失效 .

## 项目结构

```
src/
  opencode.plugin.ts       # Main plugin class (IPlugin, IPipelinePlugin, IFormSchemaProvider)
  types.ts                 # Step IDs, constants
  steps.ts                 # Pipeline step definitions
  form-schema.ts           # Form fields, groups, validation
  prompt-keys.ts           # Prompt facade keys
  index.ts                 # Public exports
  prompt/
    system-prompt.ts       # Default prompts and variable builders
  utils/
    binary-manager.ts      # CLI download from GitHub releases
    opencode-config.ts     # User-scoped OpenCode config generation and cleanup
    pipeline-helpers.ts    # State management, settings resolution, progress reporting
    process-runner.ts      # OpenCode CLI subprocess execution
    workspace-manager.ts   # Workspace I/O (create, seed, read, cleanup)
    screenshot-capture.ts  # Screenshot facade integration
    taxonomy-sync.ts       # Merge new categories/tags/brands into _meta files
    taxonomy-watcher.ts    # Filesystem watcher for live taxonomy sync
    platform.ts            # Platform/architecture detection
```

## 发展

```bash
# Build
pnpm build

# Type-check
pnpm type-check

# Run tests
pnpm test

# Watch mode
pnpm test:watch

# Coverage
pnpm test:coverage
```

## 解决问题

| 症状 | 可能的原因是 | 修补 |
| --- | --- | --- |
| 世代从不开始/留在 `0%` | `opencode` 未选择此工程的运行中的管道插件 | 打开工作 **插件** → `pipeline` 能力和设置 `opencode` 作为活动管道;或 设置为全球管道默认 **设置 — 插件** |
| 步骤失败 `No AI / search / screenshot provider configured` | 管道依赖于无法启用或没有证书的能力插件 | 启用并配置工作或全球匹配能力插件( AI 提供者、 搜索、 截图、 内容提取器) |
| 步骤输出看起来错误/ 通用 | Form-field 调制未设置; 使用与工程域不符的默认管道 | 打开 **生成表单** 为工作设置特定域(类别、目标关键词、源 URL),并重运行受影响的步骤 |
| 子进程错误 : `command not found` | `OpenCode Generator` 运行 API 主机上未安装 CLI | 在 API 主机上安装 OpenCode 生成器 CLI, 并确保它打开 `PATH`; 通过运行验证 `which <cli>` 发射的同一枚炮弹 `pnpm dev:api` |
| 认证 / 设备- 自动流动站 | 上游 IDE / 浏览器中从未确认设备自动代码 | 重运行设备自动流出 **设置 – 插件 – 打开码 – 连接**,然后在代码到期前在上游服务中填写提示 |
| 主机重启后管道无法恢复 | 检查站没有继续存在(今天只有标准管道维持检查站) | 取消被卡住的运行并重新触发生成; 因为生产可靠性更可取 `standard-pipeline` |

## 文档

-   [工程文档](https://docs.ever.works/)
-   [Ever 工程仓库](https://github.com/ever-works/ever-works)
-   [插件系统](https://npmcn.com/package/plugin/README.md)
-   [OpenCode CLI 主页](https://github.com/sst/opencode)

## 许可证

AGPL-3.0 导弹

## 常见问题

### @ever-works/opencode-plugin 是什么？

OpenCode 生成器插件 - 代表生成到 OpenCode 的完整管道插件

### 如何安装 @ever-works/opencode-plugin？

在项目目录运行 npm install @ever-works/opencode-plugin，或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖：@ever-works/plugin（^1\.2\.16）。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖，Yarn 需要手动安装。

### @ever-works/opencode-plugin 支持 TypeScript 吗？

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

### @ever-works/opencode-plugin 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @ever-works/opencode-plugin 可以商用吗？

@ever-works/opencode-plugin 使用 AGPL-3\.0 许可。最严格的 Copyleft：除分发外，通过网络向用户提供基于它的服务也需要开源对应源码。闭源 SaaS 使用前务必评估。以上为概括，不构成法律意见，请以许可原文为准。

### @ever-works/opencode-plugin 的下载量有多少？

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

### @ever-works/opencode-plugin 还在维护吗？

最新版本 1\.0\.18 发布于 2026/11/03（10 天前）；至今共发布 15 个版本，其中过去 12 个月发布了 15 个；首次发布于 2026/06/06。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

