# @alterset/alterspec-client 中文文档

规范地址：https://npmcn.com/package/%40alterset/alterspec-client/

版本：0\.12\.0
npm 元数据更新时间：2026-11-06T21:16:57.994Z
中文译文更新时间：2026-11-08T03:13:37.802Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40alterset/alterspec-client
原文对照：https://npmcn.com/package/%40alterset/alterspec-client/?lang=original
项目主页：https://github.com/altersetigor/alterspec/tree/main/client#readme
源码仓库：https://github.com/altersetigor/alterspec

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

- 包体积（解压后）：496 kB，27 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=20
- 运行依赖：2 个
- 首次发布：2026-10-29T18:08:15.361Z
- 最新版本发布：2026-11-06T21:16:57.797Z
- 近 30 天下载量：1922（2026-10-06 至 2026-11-04，npm 官方下载统计）
- 已发布版本数：14（近 12 个月 14 个）

## 中文简介

变换客户端:将变换客户端从发件人导出到开发者寄存器的任务.

## 安装

```sh
npm install @alterset/alterspec-client
```

也可以使用：`pnpm add @alterset/alterspec-client`、`yarn add @alterset/alterspec-client`、`bun add @alterset/alterspec-client`

## README

# 更改光谱客户端

`@alterset/alterspec-client` 带来工作 [换相](https://github.com/altersetigor/alterspec) 产品 检查建立产品的储存库。 利用它,一个在克洛德码公司工作的开发商 承担了一项任务 更改光谱调度器,仅读取任务需要的光谱部分,构建它,并报告进度和完成情况 回来 客户端从不编辑 spec.

它还带有导出格式 `work.json` (单位:千美元)`@alterset/alterspec-client/work`)为调度所.

新来的调度员? 从分步开始 [开发者指南](https://npmcn.com/package/%40alterset/alterspec-client/developer-guide.md) (单位:千美元)`developer-guide.md` 内 此软件包: SSH 密钥, 设置一个寄存器, 签名, 从开始到完成的任务 。 这个读取器是 参考文献.

## 你需要的东西

-   节点.js 20或以后,git,和 [克劳德代码](https://code.claude.com/)。 。 。 .
-   调度员的URL 从您的管理员.
-   复制 **导出** 寄存器 : 您团队创建的已签名产品规格 。 客户拉出它. 绝不用手编辑.
-   一个 `ssh-ed25519` 键:在 ssh-agent 中,或 `~/.ssh/id_ed25519`签名给调度员使用。 没有 要管理的密码或令牌 .

## 单词

-   **任务**: 一个音轨上的签名更改, 写入 `CHG-012/BE`。 。 。 .
-   **音轨**:一流的建筑工程. 这不是一个渠道. `BE` 是后端(包括每个 API 频道)。 每个 其他音轨是一款设计,由拥有该音轨的信道的代码命名(`BO`, (中文(简体) ), `MOB`) (中文(简体) ). 共享的频道 另外一个设计是在那个频道的赛道上建造的.
-   **核对清单**:一项任务的项目,例如接受标准(`CAP-CAT-001-AC-03`),屏幕动作(`SCR-PRC-01.A02`(中文(简体) ) 经验说明`UX-SCR-PRC-01-WEB#error`) (中文(简体) ). 进展算上你承诺的掩护.
-   **然后显示**: 一个标准 `Then` 系统保证的是什么(后端的),它的 `Shown` 什么屏幕 显示( 一个 UI 音轨的) 。 任务核对表只包含一项标准;一项没有 `Shown` 这是所有的 后卫的.
-   **反馈**:当任务核对表被覆盖时,代理人会告诉调度员该类别中哪些内容不明确,什么 它不得不打开 超出简报 和它自己决定的, 命名ID, 所以产品方面可以固定 光谱.
-   **问题**:当spec不做决定时,经纪人会问 `/alterspec-spec-ask`。答案是: 在产品方面确认或纠正之前 它,或打开(等它), 调度员保留假设和开放假设(一个来自 spec 的答案是 未发送);一个产品人回答那里,并在光谱说出来后标记每个光谱与光谱调和.

## 设置仓库

在创建一个或多个音轨的寄存器根中:

```bash
npx @alterset/alterspec-client init --dispatcher https://<dispatcher> --export ../<export-clone> --track BE
```

| 选项 | 含义 |
| --- | --- |
| `--dispatcher <url>` | 调度员的URL. |
| `--export <path>` | 您的导出仓库的克隆, 相对于此仓库或绝对值 . |
| `--track <code...>` | 存储器所构建的音轨( T)`BE`, (中文(简体) ), `BO`允许几个: `--track BE BO`。 。 。 . |
| `--worktrees <path>` | 工作树去的地方。 默认 : `../<repo>-tasks`。 。 。 . |
| `--key <key>` | 要签名的公用钥匙,作为 `.pub` 路径或密钥行。 默认: 第一个 `ssh-ed25519` 键,然后 `~/.ssh/id_ed25519.pub`。 。 。 . |
| `--branch <name>` | 赛道主分支. 默认: 远程 `HEAD`,则 `main`。 。 。 . |
| `--force` | 替换您修改过的技能 . |

`init` 写道:

-   `.alterspec-client.json`:上方配置.
-   `.mcp.json`页:1 `dispatcher` MCP 服务器( U)`npx @alterset/alterspec-client mcp`) (中文(简体) ).
-   `.claude/settings.json`: 一条钩子, 报告每个钩子之后的进展 `git commit`。 。 。 .
-   `.claude/settings.local.json`: 您对 `dispatcher` 服务器( e)`"enabledMcpjsonServers": ["dispatcher"]`, (中文(简体) ), 和档案里的其他东西合并了 Claude 代码从项目中装入服务器 `.mcp.json` 只有一次才会 批准,并尊重这一批准 只在不跟踪文件,所以 `init` 将文件添加到 `.gitignore` 还没有忽略它的时候.
-   `.claude/skills/alterspec-*`:技能,是薄薄的包装.
-   `.alterspec-client/prompts/`:技能背后的完整指示.

还能安全运行 运行它同样更新客户端: 它添加了新版本的技能, 删除 那些掉下来的, 保持任何你编辑的技能,除非你通过 `--force`。交出它所写的一切,除非 `.claude/settings.local.json`因此,任务工作树也有它. `worktree` 将批准写入每个新任务 工作树本身。 如果您将设置保留在 git 中, 作为顶级的同位素链接到另一个寄存器(`.claude`, (中文(简体) ), `.mcp.json`, (中文(简体) ), `.alterspec-client`),被打晕了, `worktree` 将每个人连接到新的工作树上。 如果与相对目标存在这种联系,则 它不会从工作树上指出一个更深的文件夹, `worktree` 链接它在工作树上丢失的文件夹 文件夹到您退出的旁边的文件夹( x)`../<repo>-tasks/ops` → `../ops`),所有任务都共享; git sees 无变化.

何时 `.claude` 是另一个寄存器的符号链接, git 无法分辨该文件是否被忽略 : `init` 这么说, 添加时 `.claude/settings.local.json` 去那个仓库 `.gitignore`。 。 。 .

最后会打印出你的公用钥匙和指纹. **送两个给调度员的管理员.** 一直到 管理员添加了您的密钥。 再次打印它们:

```bash
npx @alterset/alterspec-client key
```

调度器的工具出现在寄存器中开始的下一个克洛德代码会话中.

`init` 别碰你 `CLAUDE.md`让克洛德知道出口在哪里 以及如何在出口区之外处理 技能也一样,复制块 [`agent-instructions.md`](https://npmcn.com/package/%40alterset/alterspec-client/agent-instructions.md) (在这个包裹)进入你的经纪人 指示,无论你存放在哪里.

## 工作日

你和克洛德・克洛德・克洛德说话 技能是叫调度员和CLI.

1.  **开工去.** `/alterspec-task-next`或者"给我下一个任务" 立即指定一个音轨或请求几个音轨: `/alterspec-task-next BE 2`。它只分配:它继续完成一项任务,继续完成摘要,并列出几项任务 它们; 类型 `/alterspec-task-context <task>` 无论你们在什么地方工作 它不创造树枝,也不创造任何树干 工作由您选择( y)`worktree <task>` 做一个当你想要的.
    
2.  **从简取出.** `/alterspec-task-context [task]` 读取导出的任务摘要 :
    
    -   \* 核对表,包括调度员已经持有的物品以及每件物品的变化;
    -   为何作出改变;
    -   每个物体的前后;
    -   页:1 `BE`: 更改清单和操作的接受标准,整体;规则和事件 核对表的标准或更改的文本名称,整体;其他的能力名称,作为路径;
    -   页:1 `BE`能力所在的实体作为路径;
    -   决定和术语表 更改的文本名称,整体;其他决定其对象名称,如 路径;
    -   对于一个UI轨道:屏幕,他们的体验合同,模拟页和设计系统.
    
    你用自己的技术建造它 当谱系沉默或不同意代码时,克洛德会问你;它确实如此 不是发明商业规则。 模拟页面显示商定的外观和行为。 复制不是密码 .
    
3.  **准备拖车.** 任务的每一项承诺都以下列内容为结束:
    
    ```
    Alterspec-Task: CHG-012/BE
    Alterspec-Covers: CAP-CAT-001-AC-03, CAP-CAT-002
    ```
    
    `Alterspec-Task` 每一个承诺. `Alterspec-Covers` 只有承诺 使一个物品的测试通过, 准确如清单所写的那样命名项目。 列出每件物品一次;无任何内容的承诺没有 `Alterspec-Covers` 线条。 每人承诺后,向调度员报告被覆盖的物品。 它的工作在 永远不要挡住你 当报告没有变化或者最后一份报告不到15分钟时,它就跳过了报告 老样子.
    
4.  **合并,然后报告完成.** 一旦任务的工作进入轨道主分支 远程,类型 `/alterspec-task-done CHG-012/BE`它发出最后的进展,找到带来任务的承诺,以及 报告它做了。 在未合并工作时拒绝.
    

其他技能:

| 技能 | 它会做什么 |
| --- | --- |
| `/alterspec-task-status [track]` | 您的任务有进步和ETA,什么是可用的,什么是被阻挡的,什么是什么,以及每个关卡的开放变化. |
| `/alterspec-task-eta <task> <YYYY-MM-DD|clear> <reason>` | 为自己的任务设定日期, 或 `clear` 所以调度员计算出的ETA又适用了. |
| `/alterspec-task-release <task> [reason]` | 给一个任务回来。 你的密码和分枝保持不变. |
| `/alterspec-spec-ask <question>` | 回答出口产品的问题,引用身份证。 唯相读取. |

你只打过字 `task-done`, (中文(简体) ), `task-eta` 财务报告和审定财务报表 `task-release` 你自己,因为每个人都是你的保证。 克劳德开始 其他人也来自普通语言.

## 图标

这些技能是用来操作的;你很少自己需要这些技能。 在仓库或工作树上运行它们。 在任务中 工作树,配置从主检出处读取.

| 命令 | 它会做什么 |
| --- | --- |
| `init [options]` | 设置仓库(见上文). |
| `key` | 打印公用钥匙和指纹. |
| `open dispatcher` | 在浏览器中签名并打开调度器的页面. 连通一次,一分钟. |
| `context <task> [--json] [--stats]` | 从出口中打印任务简介,从问题和清单开始. |
| `worktree <task> [--here]` | 创建分支 `task/<chg>-<track>` 从 `origin/<main>` 在它自己的工作树上, 与检查结果的 git-ignored 顶级的连锁 和它的 承诺的相对解决. `--here` 使用此取出. |
| `progress [task] [--json]` | 报告你承诺的封面 默认: 当前分支的任务 . |
| `lookup [ref...] [--question <text>] [--task <task>] [--item <item>]` | 在出口中,问题在哪里得到回答:首先要读什么,在叫出口沉默之前要打开什么,是邻居. `--unread <path...>` 说什么没有打开. |
| `cites <ref...>` | 请检查date=中的日期值 (帮助) 每个ID或路径都在导出中;"从谱"的答案必须经过什么. |
| `questions [task] [--about <ID...>] [--open] [--json]` | 用产品方的答案打印一个任务的问题, 给一些ID命名, 或没有你自己的. |
| `merged <task>` | 打印承诺 `origin/<main>` 这带来了任务. |
| `export-head [--latest <sha>]` | 拉出输出克隆并打印承诺发送到调度器. |
| `mcp` | MCP 服务器 Claude 代码从 `.mcp.json`它向调度员前进. |

每个运行为 `npx @alterset/alterspec-client <command>`。 。 。 .

## 解决问题

-   **"调度员拒绝了你的SSH密钥"**: 管理员尚未添加您的密钥, 或者您正在与一个 不同的钥匙。 发送其打印的两行(或 `key`)给管理者.
-   **"没有 SSH 密钥可以签名"**: 添加一个 `ssh-ed25519` 键以创建 ssh-agent `~/.ssh/id_ed25519`,或设置 `key` 内 `.alterspec-client.json`。 。 。 .
-   **"ssh -agent没有钥匙"**: 运行 `ssh-add` 用于配置的密钥.
-   **Claude 代码中没有调度工具**页:1 `dispatcher` 服务器没有被批准或装入。 运行 `init` 再来 批准进去 `.claude/settings.local.json`),确保git不跟踪该文件(`git rm --cached` 如果是 `init` 然后开始新的会话。 互动 `claude` 终端, `/mcp` 显示 服务器的状态并批准它.
-   **"没有...** : 运行 `init` 在此寄存器中, 或将配置输入工作树 找到它。 发现它.
-   **"出口是N承诺落后"**:克隆人追不上. 任务已经改变,所以工作 继续说 检查克隆人的远程 如果它一直发生.
-   **报告为未知的物项**页:1 `Alterspec-Covers` 线条命名了清单所缺少的东西。 一个被逼迫的 无法改正; 请在以后的动作中指定正确的项目 .
-   **`task-done` 说工作没有合并**: 将任务的分支合并到主分支中, 或推动承诺 携带其 `Alterspec-Task` 拖车,然后运行它再次.

## 对于调度员: `work.json` 格式

```ts
import { parseWork, WorkSchema, AnyWorkSchema, WorkError } from '@alterset/alterspec-client/work';
```

`parseWork(text)` 读取 `work.json` 格式 1 或 2 并投掷 `WorkError` 当它不是一个。 JSON斯克马是 时间 `@alterset/alterspec-client/work.schema.json`。 。 。 .

## 许可证

麻省理工学院,Alterset d.o.

## 常见问题

### @alterset/alterspec-client 是什么？

变换客户端:将变换客户端从发件人导出到开发者寄存器的任务\.

### 如何安装 @alterset/alterspec-client？

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

### @alterset/alterspec-client 支持 TypeScript 吗？

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

### @alterset/alterspec-client 支持 ESM 还是 CommonJS？

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

### @alterset/alterspec-client 需要什么版本的 Node\.js？

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

### @alterset/alterspec-client 可以商用吗？

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

### @alterset/alterspec-client 的下载量有多少？

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

### @alterset/alterspec-client 还在维护吗？

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

