# @cleocode/goal 中文文档

规范地址：https://npmcn.com/package/%40cleocode/goal/

版本：0\.13\.0
npm 元数据更新时间：2026-11-03T00:01:15.660Z
中文译文更新时间：2026-11-10T01:11:55.411Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40cleocode/goal
原文对照：https://npmcn.com/package/%40cleocode/goal/?lang=original
项目主页：https://github.com/kryptobaseddev/open-goal#readme
源码仓库：https://github.com/kryptobaseddev/open-goal

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

- 包体积（解压后）：1.5 MB，81 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=22\.14\.0
- 运行依赖：3 个
- 首次发布：2026-10-17T21:29:31.906Z
- 最新版本发布：2026-11-03T00:01:15.244Z
- 近 30 天下载量：3422（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：19（近 12 个月 19 个）

## 中文简介

CLEO目标:OpenCode 2(和任何通过cleo-goal chick)的持久,东道主验证的入球模式,有结构化的入球合同和现场TUI.

## 安装

```sh
npm install @cleocode/goal
```

也可以使用：`pnpm add @cleocode/goal`、`yarn add @cleocode/goal`、`bun add @cleocode/goal`

## README

# 开放目标( CLEO 目标插件)

持续、主机验证的入球模式 [打开代码 2](https://opencode.ai/)描述你想要什么,让捆绑 **写入目标** 面试将它变为结构化的合同,插件保持会话工作,直到主机——而不是模型——证明每个标准.

> **状况:已释放(`0.9.4` npm 时为 `@cleocode/goal`) (中文(简体) ).** 引擎,校验和TUI是用一个脚本模型来构建并测试到以OpenCode 2.0.22为终点的,每个版本都从自己安装的标记中被证明. CLEO作为可选的一等公民融入社会(`/goal cleo`) (中文(简体) ). 见 [文件/手册](https://npmcn.com/package/%40cleocode/goal/docs/HANDOFF.md)。 。 。 .
> 
> **名称 :** 这个项目是 **开放式目标** (雷波语) `kryptobaseddev/open-goal`) (中文(简体) ). 这叫 `opencode-goal` 直到2026-10; GitHub repo 重定向旧的 URL, 代理邮箱是 **`open-goal-lead@macbook`**启用 `open-goal` 在新代码、文件、邮件和指令中——不是 `opencode-goal`。 。 。 .

## 为什么另一个目标插件

大多数入球循环让模型宣布自己完成. 研究和用户报告都说这是主要的失败:代理商声称文件不支持的成功. 在这里,工人只能 **索赔**;插件然后自行运行合同的检查,一个独立的只读验证器必须引用文件,以获取命令无法检查的任何内容,插件则重新读取这些引用. 一项失败的索赔又回到了工人身上,因为有组织的裁决和循环仍在继续.

|  |  |
| --- | --- |
| 结构化合同 | `goal.yaml`:结果,二进制标准 有真实的检查,不变量,受保护的测试文件,非目标,计划,假设,可选预算 |
| 主机核查完成 | 命令 / 文件 / 包含 / 不包含 / diff 检查 由插件运行; 有引文重读的验证器; 所有者签名关闭标准 |
| 诚实的循环 | 按工作树变化、摊位和阻塞器检测、零键等待、预算总结、 Esc 暂停测量的进展 |
| 防压缩 | 合同是按每一份要求提出的,从未被保留在历史上 |
| 现场TUI | 侧边栏卡、状态药丸、需要时横幅、土司和桌面通知 |
| 没有模式转换状态 | `/goal` 命令作为插件代码运行 |

## 安装

需要打开代码 **2.0.22 或晚点** (OpenCode 1.x插件与此插件不相容). 软件包是 **`@cleocode/goal`** ("CLEO目标");其本位是: `cleo-goal`,与 `ocg` ("开克球入球")作为别名. 垃圾桶运行在平地节点22.14+,不需要Bun.

为一个项目注册插件( 只写) `<project>/.opencode/opencode.json`键 `plugins`;同义词:

```bash
npm i -g @cleocode/goal
cd your-project
cleo-goal install --project          # --dry-run to preview, --json for a machine reply
```

与 [平等机会委员会](https://github.com/kryptobaseddev/cleo), (中文(简体) ), `cleo goal install --harness opencode` 运行同一步骤 `cleo doctor goal-runtime` 报告已安装的版本.

或通过 OpenCode 本身为每个工程安装它( 此写入用户- 全球配置 ) :

```bash
opencode plugin add "@cleocode/goal@<version>"
opencode reload
opencode plugin list        # open-goal should be listed
```

一个版本。 一个git标签仍然可以作为一个 spec: `github:kryptobaseddev/open-goal#v<version>`。 。 。 .

### 这个 `cleo-goal` 选项

| 命令 | 对 |
| --- | --- |
| `cleo-goal --version` | 指纹 `cleo-goal <version>` |
| `cleo-goal status --json` | 活的目标(最后完成的目标) `status: "none"`作为JSON与 `schemaVersion: 1`; 项目可读时退出 0 |
| `cleo-goal install --project [--spec <npm-or-git spec>] [--json] [--dry-run]` | 将此插件添加到 `.opencode/opencode.json`; 回复 `{schemaVersion, action: installed|already-present|updated|dry-run, file, spec, plugins}`; 出口 1 `{schemaVersion, error}`,退出 2 用途 |
| `cleo-goal tick` | jSON在Stdin上, JSON只在Stdout上 |
| `cleo-goal claim --summary <text> [--evidence C1=<note> ...]` | 记录一个没有OCG工具的吊带索赔 |

## 快开始

```
/goal new make the checkout test suite pass on Node 24
```

这个 **写入目标** 技能检查寄存器( 命令、 失败测试、 基线) , 仅询问它无法查看的决定 —— 几轮可选择的选项, 并附有推荐的答案 `.opencode/goals/<slug>/goal.yaml`,验证它, 给你看确切的合同, 并要求开始。 选择 **现在开始进球**。 。 。 .

或自己写合同然后跑 `/goal start <slug>`。 。 。 .

## 合同

```yaml
schema: goal/v1
id: node24-checkout
title: Checkout suite passes on Node 24
intent:
  verbatim: "make the checkout test suite pass on Node 24"
outcome: npm run test:checkout exits 0 under Node 24
non_goals: [Upgrading other packages]
criteria:
  - id: C1
    statement: WHEN the checkout suite runs on Node 24 THE suite SHALL exit 0
    check: {kind: command, run: "npx -y node@24 node_modules/.bin/jest checkout", live: true}
  - id: C2
    statement: 'No deprecated Buffer() constructor calls remain in src/checkout'
    check: {kind: absent, pattern: "new Buffer\\(", paths: [src/checkout]}
  - id: C3
    statement: MIGRATION.md explains each behaviour change
    essential: false
    check: {kind: verifier, ask: "Does MIGRATION.md explain every behaviour change made for Node 24?"}
invariants:
  - id: I1
    statement: The full suite SHALL CONTINUE TO pass on Node 22
    check: {kind: command, run: "npm test"}
protect: ["test/**"]
plan:
  - {id: S1, title: Reproduce the failures on Node 24}
  - {id: S2, title: Fix them, proves: [C1, C2], depends_on: [S1]}
```

检查类型 : `command` (退出代码/输出预期,超时,重复运行, `live` 在文件更改后重新运行) \\ `file` • 妇女 `contains` • 妇女 `absent` (不得继续比赛) `diff` (自开始以来路径不变) · `verifier` (必须引用文件的独立只读法官)- `human` (你的签注) 可选 : `scope`, (中文(简体) ), `constraints`, (中文(简体) ), `assumptions`, (中文(简体) ), `budget {turns, wall, tokens, cost_usd}`, (中文(简体) ), `stop`, (中文(简体) ), `autonomy`, (中文(简体) ), `verification {mode, max_rejections}`。完整参考: [技能/写作-目标/参考/目标-设计](https://npmcn.com/package/%40cleocode/goal/skills/write-goal/references/goal-schema.md)。 。 。 .

## 图标

| 命令 | 对 |
| --- | --- |
| `/goal new <words>` | 运行写目标访谈(录取探测器首先显示现有/类似目标) |
| `/goal start <slug>` \[承认-超 | 排练每次命令检查,然后锁定并运行 |
| `/goal` • 妇女 `/goal status` | 完整状态对话框 |
| `/goal pause` • 妇女 `/goal resume` | 停止 / 继续循环( 重置摊位和故障计数器) |
| `/goal verify` | 现在运行完成检查 |
| `/goal amend` • 妇女 `/goal amend confirm` | 提议/重新锁定所有者编辑的合同(生成约束的审计线索) |
| `/goal archive` | 将完成的入球降级到 `.opencode/goals-archive/` (从未删除;登记处仍然回答"这是否是一个目标?") |
| `/goal approve C3` • 妇女 `/goal reject C3 <why>` | 签个名 `human` 标准 |
| `/goal abort` | 永远停止跑步(保留脚本和证据) |
| `/goal validate <slug>` • 妇女 `/goal list [all]` | · 列出现场(+存档)目标 |
| `/goal cleo` • 妇女 `/goal cleo install|init|sync` | 探测CLEO CLI和这个项目 `.cleo` 工作空间(初始化/未初始化/没有CLI); `install`编号 :`init` 运行精确的文档命令 **只有你明确选择** (从来没有沉默,从来没有苏多); `sync [<slug>] T123[@sha] …` 记录真实的每门 CLEO 证据,并通过 CLI 完成相关任务 |
| `/goal help` | 代理前导:命令、工具分割、存储、中跑规则 |

命令调色板下的动作相同 **目标**。 。 。 .

## 模特儿会怎样

工具(仅限 `goal_*`,按名称可见: `goal_status`, (中文(简体) ), `goal_progress` (步骤+一行说明+下行行动), `goal_claim` (每个标准的证据,然后结束转弯), `goal_block` (稳定键;一行有3个停止进球), `goal_flag` (一个标准是矛盾的、不可能的或不安全的), `goal_wait` (在N秒后恢复,不花费符号), `goal_validate`, (中文(简体) ), `goal_inventory` (该项目的每一项合同:草稿、现场/截取/完成、档案), `goal_manage` (暂停/恢复/核实/附图/破坏/确切目标存档), `goal_recover_divergence` (磁盘合同与其锁不同), `goal_propose_amendment` • 妇女 `goal_resolve_amendment` • 妇女 `goal_review` (分阶段合同变更和所有者审查), `goal_start` (仅在你选择之后) **现在开始进球**) (中文(简体) ). 单是核查员 `goal_verdict`。 。 。 .

当一个目标运行该模型不能编辑合同时,文件在 `.opencode/goals/`,或保护路径,以及向您提出的问题被推迟(每个目标可配置).

## 保存着的东西

`.opencode/goals/<slug>/`数字 : `goal.yaml` (你们的), `context.md` 财务报告和审定财务报表 `decisions.jsonl` (从访谈中), `run.json`, (中文(简体) ), `ledger.jsonl` (每一个过渡), `evidence/<run>/` (合同快照、排练基线、每项判决、核查记录、修正记录)。 完成的目标在 `.opencode/goals-archive/<slug>/` (被除名,从未被删除). 在 `~/.local/share/opencode/goal-registry.json` (与 `OCGOAL_REGISTRY`列出各个项目的目标并存存档。 考虑忽略 `run.json`, (中文(简体) ), `ledger.jsonl` 财务报告和审定财务报表 `evidence/` 在基特语中.

## 插件选项

使用您 OpenCode 配置中的对象窗体来更改默认值 :

```jsonc
{ "plugins": [{ "package": "github:kryptobaseddev/open-goal#v0.5.0", "options": { "stallTurns": 4, "cooldownMs": 3000 } }] }
```

`backstopTurns` (200,仅在合同没有转弯预算时) `cooldownMs` · 1500年 `stallTurns` (3) 妇女 `recoveryAt` (2) 妇女 `blockerRepeats` (3) 妇女 `maxPromptFailures` (3) 妇女 `verifierAgent` ("目标验证人") ^ `verifierTimeoutMs` (2400) o `liveChecks` (真实的) `launchApprovalMs` (600,000) (英语).

## 发展

`bun install && bun test` - 端到端套房开始隔离 `opencode serve` 与脚本模型,所以它从来没有触及您的配置或会话。 见 [一般事务人员(其他职等)](https://npmcn.com/package/%40cleocode/goal/AGENTS.md) 财务报告和审定财务报表 [文件/手册](https://npmcn.com/package/%40cleocode/goal/docs/HANDOFF.md)。 。 。 .

## 许可证

麻省理工学院

## 常见问题

### @cleocode/goal 是什么？

CLEO目标:OpenCode 2\(和任何通过cleo-goal chick\)的持久,东道主验证的入球模式,有结构化的入球合同和现场TUI\.

### 如何安装 @cleocode/goal？

在项目目录运行 npm install @cleocode/goal，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 ocg、cleo-goal，可以用 npx ocg 直接运行。

### @cleocode/goal 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/cleocode\_\_goal 是否存在。

### @cleocode/goal 支持 ESM 还是 CommonJS？

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

### @cleocode/goal 需要什么版本的 Node\.js？

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

### @cleocode/goal 可以商用吗？

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

### @cleocode/goal 的下载量有多少？

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

### @cleocode/goal 还在维护吗？

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

