# @dev-mainsequence/devtools 中文文档

规范地址：https://npmcn.com/package/%40dev-mainsequence/devtools/

版本：0\.3\.17
npm 元数据更新时间：2026-11-05T14:08:39.046Z
中文译文更新时间：2026-11-12T02:29:59.961Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：519 kB，82 个文件
- 模块格式：CommonJS
- TypeScript 类型：包内自带
- Node.js 要求：\>=22
- 运行依赖：0 个
- 首次发布：2026-10-01T09:23:10.790Z
- 最新版本发布：2026-11-05T14:08:38.714Z
- 近 30 天下载量：3353（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：18（近 12 个月 18 个）

## 中文简介

共享主序列开发者动作、项目操作、MCP客户端和命令运行程序

## 安装

```sh
npm install @dev-mainsequence/devtools
```

也可以使用：`pnpm add @dev-mainsequence/devtools`、`yarn add @dev-mainsequence/devtools`、`bun add @dev-mainsequence/devtools`

## README

# 主序列开发器工具

`@dev-mainsequence/devtools` 是 MainSequence 后面的共享类型脚本包 开发者集成:浏览器登录和机器会话,寄存器和项目 操作,项目 MCP 客户端,平台代理客户端,共享的项目工具 登记册和登记册 `ms-devtools` 命令行。 它没有运行时间 npm 依赖和制造 没有 LLM API 调用; 开发者动作运行决定性 。 宿主的融合生活着 他们自己的寄存器 只使用这个软件包的公开 API.

## 我安装哪个主序列工具?

| 东道主 | 你得到的东西 | 安装 | 仓库 |
| --- | --- | --- | --- |
| **VS 代码** | 一个 MainSequence 面板: 签名、 浏览寄存器和项目、 在本地设置、 打开签名终端、 运行 SDK 动作 | 安装 **主要顺序** 从VS代码市场,或 `code --install-extension mainsequencegmbh.vscode-mainsequence` | [ms-vscode-扩展](https://github.com/mainsequence-sdk/ms-vscode-extension) |
| **代码** (桌面和CLI) | MainSequence面板(家,代码,项目,代理,工具),聊天中的代理消息,项目MCP工具, `/ms` 命令 | `codex plugin marketplace add mainsequence-sdk/mainsequence-codex-plugin`,则 `codex plugin add mainsequence@mainsequence` | [主序列- 编码- 插件](https://github.com/mainsequence-sdk/mainsequence-codex-plugin) |
| **克劳德桌面** (代码) | MainSequence gane(家,代码,项目,代理,工具),代理对话 `/ms @agent`,项目MCP工具,部署 | **自定义 插件 添加市场 从寄存器添加**输入 `https://github.com/mainsequence-sdk/mainsequence-claude-desktop.git`,安装 **主要顺序** 从 `mainsequence-desktop` | [主后序- claude- 桌面](https://github.com/mainsequence-sdk/mainsequence-claude-desktop) |
| **终端或 CI** | 这个 `ms-devtools` 命令行 | `npx -p @dev-mainsequence/devtools ms-devtools --help`,或 `npm install -g @dev-mainsequence/devtools` | 此寄存器 |

他们都需要22号或更新 并且每个后端共享一个签入 保存在操作中 系统证书存储( 登录 macOS 上的密钥链, 特勤通过 `secret-tool` (原始内容存档于2018-09-26). on Linux. 这个 `mainsequence` (毕通)并 `command-center-sdk` (节点) 命令行读取相同的记录, 所以在任何地方签名 在任何地方的标志。 窗口 在此软件包中没有持续存储: VS 代码扩展保存自己的会话 ,而代码和 Claude 桌面插件尚未在 Windows 上支持。 每个 主机的README解释了自己的设置;指挥中心的 **设置-账户- 开发工具** 页面给出与部署后端 URL 相同的步骤.

## 这个 `ms-devtools` 命令行

```sh
npx -p @dev-mainsequence/devtools ms-devtools --help
ms-devtools login --backend https://api.main-sequence.app
ms-devtools auth-status --backend https://api.main-sequence.app --check --json
ms-devtools refresh-token --backend https://api.main-sequence.app
ms-devtools repositories --backend https://api.main-sequence.app --json
ms-devtools status --path "/path/to/project" --json
ms-devtools sync --path "/path/to/project"
```

### 签名

`login` 使用 PKCE 打开主机浏览器的授权流和回回调; 账户创建是主机流量的一部分。 登录和 `auth-status` 工作之前的任何一个 SDK已安装. 跑者在打开浏览器前检查商店并读取 在报告成功前保存对对。 保存的记录是 SDKs 现有的 `MainSequenceCLI.auth` 服务、 后端范围账户和版本 1 JSON 格式; 有 没有单独的证书记录和符号文件. `refresh-token` 更新已保存 机器会话; 它不替换导出到另一个 shell 的符号 . `logout` 删除后端的本地记录并单独报告远程撤销 已完成.

登录持续时间只要其刷新符号: 后端结束于之后的固定时间 注册(默认为5天),但经常续签. `auth-status` 报告说 瞬间为 `sessionEndsAt` 并命名为摘要。 届会一旦通过 在未与后端联系的情况下,将读出签名,每个请求都会回答“保存的” 在协调世界时结束。 再说一遍" 401意味着后端不再接受 登录( 已过期、 已撤销 或另一个后端的): devtools 刷新一次, 否则询问 为一个新的登录。 403是账户缺乏的许可: `FORBIDDEN`, (中文(简体) ), 没有更新,没有重试,也没有签到的快.

特意提供的 `MAINSEQUENCE_ACCESS_TOKEN` 与其匹配 `MAINSEQUENCE_ENDPOINT` 是一个进程或 CI 身份。 一个被拒绝的流程身份永远不会 回到另一个保存的身份。 运行时证书是一条单独的应用道 而不为开发者动作所接受.

### 项目行动

后端选择使用明确的 `--backend`,则 `MAINSEQUENCE_ENDPOINT`,基特根号 `.env` 端点,现有的 CLI 配置,然后是标准后端. 项目 选择验证真正的 Git 根、 附属分支、 完整的 HEAD SHA 和 Canonical 远程 身份证明 模糊的 Python/ 前端项目需要 `--type python` 或者说 `--type vite_react`。 。 。 .

| 命令 | 行为 |
| --- | --- |
| `status` | 本地 Git 语境、 会话元数据以及已安装的命令能力. |
| `resolve` | 后端 Git-context 分辨率带有身份/分支/ref/承诺验证. |
| `setup --uid UID --branch BRANCH --base-dir DIR [--install]` | 获取已注册绑定; 重复使用/登记寄存器 SSH 密钥; 验证访问; 克隆输入 `<base>/<org>/projects/<name>-<uid>` (一个赤裸的) `DIR` 例如 `mainsequence-dev` 是您家目录中的文件夹, 作为 `mainsequence` CLI 读取; 只写一个结束点 `.env`;可选择安装依赖关系. 现有的退出文件夹从未被替换 . |
| `install` | `uv sync` 用于 Python ; `npm ci` 前端项目. |
| `sync` | 用已安装的 SDK 刷新工程的依赖文件: Python `code-repository sync` 运行 `uv lock`, (中文(简体) ), `uv sync` 并锁定 `requirements.txt` 导出( e)`mainsequence` 9.0.5或以后);节点 `code-repository sync` 刷新点 `package-lock.json` 运行 `npm ci` (单位:千美元)`@dev-mainsequence/command-center-sdk` (见A/CN.9/WG.III/WP.105,第0.5.13段或以后)。 没有承诺消息, 干运行, Git 命令或后端请求: 审查修改, 然后自己承诺并按下 。 已安装的 SDK 仍然具有已退休的发行同步( S)`--dry-run`编号 :`--message` 在同步帮助中报告无法运行; 运行 `update-sdk`。 。 。 . |
| `sdk-status` | 孤立 Python 分布元数据加稳定源版本, 或节点 `application sdk-status`。源版本不能证明登记册的公布. |
| `update-sdk [--dry-run]` | 蟒 `code-repository update-sdk` 或节点 `application update-sdk`;保留该项目现有的依赖政策. |
| `update-agents` | Python SDK的包装 `AGENTS.md` 管理区块更新. |
| `install-skills [--dry-run]` | 节点SDK的打包技能安装. Python的综合技能指挥需要MCP,在此不支持. |
| `env-cleanup` | 删除遗留的项目证书并保留端点和无关的设置; 拒绝跟踪或并联 `.env` 文档. |
| `skills-sync` | 不支持的报告:后端拥有的技能需要MainSequence MCP. |
| `open-folder`, (中文(简体) ), `signed-terminal` | 被库所暴露的主机能力;终端跑车报告为不支持. |

Python 调度用途 `.venv/bin/mainsequence` (单位:千美元)`Scripts/mainsequence.exe` )),在视窗上. 节点调度执行工程安装 `@dev-mainsequence/command-center-sdk/cli/command-center-sdk.mjs` 与跑者节点 可执行文件 。 没有全球SDK或同源路径是倒置. 检查命令帮助 ; 缺失或更老的能力产生结构化错误.

代码存储器的版本和发布标记是寄存器代码,例如 GitHub 动作工作流程;平台从Git推出,所以 `sync` 仅刷新 依赖文件且没有 `freeze-env`。对于已有的图书馆呼叫器,请同步 请求仍然携带 `message` 被接受,信件被忽略, a `freeze-env` 请求报告 `UNSUPPORTED_ACTION`和堕落者 `sanitizeCommitMessage` 导出 财务报告和审定财务报表 `freezeEnv` CLI 动作名称仍然保留,但没有构建命令.

若为 `.env` 仍然包含证书, 运行 `env-cleanup` 明确在SDK发送前. 它会去除犬形标志 运行时的证书 不支持的遗产标志 运行时间证书认证模式任务,包括 `export` 和白空间表。 这个 保存无关的应用程序设置, 保留 VS 代码扩展名中的结束点 块`# BEGIN MAINSEQUENCE AUTH (managed by VS Code)` . `# END MAINSEQUENCE AUTH`,作为 扩展写,不包括 `.env` 从吉特语开始,用私人语气写出来 权限。 此窗体中的文件不再写入 .

突变在 Git 常见目录中有一个寄存器锁定, 也覆盖链接 工作树。 在克隆存在之前, 设置锁定 `.<folder>.mainsequence-devtools.lock` 内 其犬目母目录. 取消停止子进程; 失败于 执行开始报告部分或不确定的影响。 失败的同步永远不会 自动重试或回滚。 突然处理后, 检查运行 动作在去除 stale 锁之前(`mainsequence-devtools.lock` 数字 目录,或命名的设置锁).

Raw SDK输出是私有的,不包含在结果或钩输出中. 进展 报告命令生命周期; 支持的结构状态元数据被过滤。 运行 SDK 当需要其详细的诊断输出时,直接在私人终端. 原始内容 证书从来不是论据、公开结果或模式上下文.

### 项目MCP

`mcp-discover`, (中文(简体) ), `mcp-add`, (中文(简体) ), `mcp-list`, (中文(简体) ), `mcp-remove`, (中文(简体) ), `mcp-tools`, (中文(简体) ), `mcp-call` 财务报告和审定财务报表 `mcp-catalog [--refresh]` 发现平台的 MCP 目录, 请记住选中的 释放、读取其工具并通过本地的 MCP 客户端引用,使用开发者 届会和短期释放证书。 连接保存于 `mcp-connections.json` 除了 CLI 配置( 主机可能注入) `mcpConnectionsPath`) (中文(简体) ). `mcp-add` 存储发布的名称、存储器的名称和 其寄存器分支与连接( e)`name`, (中文(简体) ), `display_name`, (中文(简体) ), `code_repository_branch_uid`),这样 `mcp-list` 在没有后端的情况下标签保存的连接 请求; 无法读取的标签被忽略,而不是使 MCP 不可用. 在 Codex 中这些连接的谈话用途如下: [代码插件的指南](https://github.com/mainsequence-sdk/mainsequence-codex-plugin/blob/main/docs/conversational-mcp.md)。 。 。 .

## 图书馆 API

```ts
import { createDevTools, createNodeHost } from '@dev-mainsequence/devtools';

const tools = createDevTools({ host: createNodeHost() });
const result = await tools.dispatch({ action: 'sync', root: '/path/to/project' });
```

同名调度员为图书馆,CLI和主机跑车服务. `parseArguments`, (中文(简体) ), `tokenizeCommand` 财务报告和审定财务报表 `HELP` 导出后, 主机可以解析与 `ms-devtools`。 。 。 . `HostServices` 供应浏览器和进程执行,安全进度, 取消, 以及可选本地文件夹和终端操作 。 共享代码导入否 主机API. 公共类型包括: `ActionRequest`, (中文(简体) ), `ActionResult<T>`, (中文(简体) ), `ProjectContext`, (中文(简体) ), `ActionCapability` 财务报告和审定财务报表 `SessionStatus`全权证书不对外开放.

`createSessionService` 拥有浏览器授权, 认证 HTTP, 刷新和 撤销; `RepositoryClient` 拥有 Canonic 后端响应和 Git 分辨率 合同; `createDevTools` 拥有项目动作和取消. `HostAuthSession` 是一个 用于同步主机SecretStorage、机器会话的选入兼容适配器 和东道国预测/移民政策 `get`, (中文(简体) ), `save`, (中文(简体) ), `environment` 财务报告和审定财务报表 `persistence` 方法是具有特权的认证桥梁,绝不能到达网页视图 状态、进度、日志、钩子输出或动作结果。 VS码扩展使用它的地方 没有本地商店可以到达; Codex 和 Claude Desktop 只使用本地持久性 .

### 发现和账户绑定

`dispatch()` 推断为会议状态、环境、代理目录、, MCP 发现、保存连接和工具目录;导出包括 `McpConnection`, (中文(简体) ), `McpTool`, (中文(简体) ), `McpCatalog`, (中文(简体) ), `McpDiscoveryPage`, (中文(简体) ), `AgentDirectory` 财务报告和审定财务报表 `DiscoveryResultMap`。 。 。 . 后端响应验证留在这里;主机应用程序拥有其视图状态.

```ts
const verified = await devtools.dispatch({ action: 'auth-status', backend, check: true });
if (verified.status !== 'success' || !verified.data?.username) throw new Error('Sign in first');
const scope = { backend, expectedAccount: verified.data.username, environmentUid };
const saved = await devtools.dispatch({ action: 'mcp-list', ...scope, readOnly: true });
const available = await devtools.dispatch({ action: 'mcp-discover', ...scope, enrichNames: true, limit: 20 });
```

-   `mcp-list` 与 `readOnly: true` 读取已保存的元数据, 无需标签查看、 锁定或 连接文件写入; 没有它, 保存的没有标签的记录由 首先列出可以读取它们.
-   `mcp-discover` 与 `enrichNames: true` 每次解决可选寄存器名称 分支,一次最多4个,没有连接写作.
-   `mcp-environments` 财务报告和审定财务报表 `organization-environments` 共享一个界限 `listEnvironments` 加载器: 重复行, 更改总计, 不成熟的空页和目录 over 1万个条目被拒绝.
-   MCP、代理和组织项目行动接受 `expectedAccount`内置 校正用于请求和重试的证书、拒绝 当选中的证书在 a 期间更改时, 不同账户并丢弃回复 读取. `bindSessionAccount(session, backend, expectedAccount)` 给出公有领域 同一合同的客户; 习惯 `SessionService` 执行可选 `withAccount` 方法,账户检查失败 `UNSUPPORTED_ACTION` 当它缺乏 一个 范围化会话无法登录、注销或更改认证 。 仍为主机 当所配置的后端或环境发生变化时,无效 stale 选择.

### MCP 项目客户端

远程工具失败 `MCP_TOOL_ERROR` 保持消毒的MCP `content` 财务报告和审定财务报表 `structuredContent` 内 `ActionResult.data`,除运输和API出错;主机 保留这个结果和任何 `effects` 警告,电话从不重播 自动。 持续的客户再利用经核实的释放元数据、发放赠款和 它的存储器工具目录最多60秒, 不超过证书过期: a 编制 `mcp-call` 只发送业务 `tools/call` 请, `mcp-tools` 刷新点 明确计划,冷藏装置在进入和完成时远程核实账户,以及 温暖的呼叫在本地执行前后重读共享证书选择 . 登录、 更改证书对或保存的终点、 删除、 过期和运输 失败无效重用; 服务器仍然授权每个调用 . `createDevTools()` 默认拥有缓存; 每个请求创建调度器的主机通过一个不透明 `createMcpConnectionCache()` 处理为 `mcpCache`的会话适配器 `selectionIdentity()` 总是使用新的设置。 单独的 CLI 进程共享无缓存 .

冷却项目MCP(缩放为零 FastAPI 发布)缓慢:对照 生产CRM,第一次 `mcp-call` 取了53-71 s,取了7-10 s. 项目请求 有自己的预算, `projectRequestTimeoutMs` (违约120 s; `requestTimeoutMs`默认值 30 s,管辖后端请求)和a `tools/call` 尊重工具的广告 `_meta["mainsequence.ai/timeout-seconds/v1"]` 当它更大,上限为300秒。主机设置 他们的外部界限高于此。 错误消息显示哪个端点回答了哪个请求 (单位:千美元)`The project MCP https://… returned HTTP 503 for tools/call crm_contacts_list.`,告诉一个 超时( e)`timed out after 120 s`)除连接失败(`failed before a response arrived (ECONNREFUSED)`),并保留 JSON-RPC 错误的自己消息,被编辑.

### 共享项目工具登记册

两个主机插件都将每个保存的工程 MCP 连接工具作为一等工具呈现 名称: `ms_<tool>_<hash>` (例如 `ms_crm_contacts_list_183f8138`因此,一个 模式调用 `crm_contacts_list` 就像其他工具一样 此软件包拥有该注册 (单位:千美元)[ADR 0004 数据](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/adr/0004-shared-project-tool-registry.md)); 插件只保留什么 具体针对他们的宿主.

-   `projectToolName(backend, environmentUid, releaseUid, tool)`数字 : `ms_` + 远程名称 (外边的特征) `[a-zA-Z0-9_-]` 改为 `_`,切为32)+ `_` + 小写 六进制 FNV-1a 32-位散列 `backend:environment:release:tool`一个远程工具 每个主机都有一个名称;上面的CRM向量是一个被冻结的测试.
-   `projectToolDefinition(connection, tool)` 财务报告和审定财务报表 `projectToolDefinitions(connection, tools)` (每个连接80个,重复和已丢弃的无效工具): `{ name, title, description, inputSchema, annotations }` 说明 `MainSequence <release name> [<environment>]: <remote description>`一个物体图案和四个布尔提示, 默认开放世界.
-   `projectToolResult(actionResult)`: 主机返回转发的呼叫内容: 远程 内容块,然后使用 JSON 文本块 `summary`, (中文(简体) ), `effects`, (中文(简体) ), `error` 财务报告和审定财务报表 `structuredContent` 当调用失败, 返回结构化内容或没有块 ; `isError` 关于任何未成功,带有远程内容的 `MCP_TOOL_ERROR` 保留了下来.
-   `readProjectToolCatalog(dispatch, { backend?, environmentUid?, previous?, signal?, budgetMs? })`数字 : `mcp-list` (只读),然后一个 `mcp-tools` 每个已保存的连接, 一次两次, 全部 在一个预算范围内(默认为300美元)。 无法读取目录的连接 在预算用完前不读, 保留其先前的工具并保留在目录中 标记 `unavailable` 有原因的,所以一个范围 其联系是不存在的 写入空和健康的; 已删除的连接丢失其工具; 连接在 范围被结转。 连接后端的会话当其工具被验证 名为.
-   `createProjectToolCatalog({ dispatch, file?, backend?, budgetMs?, staleMs?, notify?, disabled? })`数字 : 共享的盘子目录, `project-tool-catalog.json` 旁边 `mcp-connections.json` (单位:千美元)`mainSequenceStateDirectory(env)` 名称该目录). `list()` 从文件中解答 即刻,仅供主机的后端:给定的后端,或由 `ready()` 无 网络请求方式 `auth-status` 或从新鲜的事物中汲取教训,直到它实现 已知列表是空的, 绝不是后端的工具 . `state()` 报告连接 标记 `unavailable` 在文件中,无论哪个进程标出它们. `refresh()` 重读 在锁下,一个过程一次读目录,而另一个过程取出结果 从文件开始,返回时结束其调度器的信号; `update()`, (中文(简体) ), `dispose()` 财务报告和审定财务报表 `notify` 服务一个长寿主机,如 Codex MCP 服务器。 文件有计划 和标签.
-   这个 `mcp-catalog` 动作返回对主机相同的定义、约束和状态 发送动作而不是导入:没有 `refresh` 从文档中 `refresh: true` 正在重新读取 stale 缓存, 并 `'force'` 总是,等待最多两个 时间是另一个过程的更新结束. `mcp-tool-call` 实值 `mcp-call` 已回复 页:1 `projectToolResult` 形状.

保留主机特定内容: Codex 服务器将定义合并到它的 `tools/list`, (中文(简体) ), 发送 `tools/list_changed` 并转发 `ms_*` 呼叫通过 `mcp-call`克劳德 桌面钩子登记定义, 每次通话前询问, 转换结果 块到信件 API 块,每个动作产生一个工人.

### 代理人、项目、工作空间和运输

-   [平台代理对话](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/agent-conversations.md): 物剂发现,会话, 任务和持久 `AgentDelivery` 主机聊天的协调员 .
-   [组织项目](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/organization-projects.md): 环境范围项目 列出和重复本地工作空间设置.
-   [共享项目业务](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/shared-project-operations.md): 本地仓库 发现、删除、多克构建和编辑主机适配器.
-   [工作空间默认和环境](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/workspace-environments.md): 后端和 寄存器文件夹分辨率和环境范围 MCP 动作.
-   [共享桌面传输](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/shared-desktop-transport.md): 每个用户的工人 每个聊天室使用一个进程的主机来共享HTTP连接,读取和符号更新.

A. 决 定 [ADR 0001 (韩语)](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/adr/0001-shared-developer-tooling-and-codex.md) (共享工具), [ADR 0002 (韩语)](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/adr/0002-conversational-project-mcp-client.md) (多边协商程序) 客户端, [ADR 0003 数据](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/adr/0003-codex-plugin-extraction.md) (主仓库)和 [ADR 0004 数据](https://npmcn.com/package/%40dev-mainsequence/devtools/docs/adr/0004-shared-project-tool-registry.md) (项目工具登记册).

## 发展

要求节点22或更新.

```sh
npm ci
npm run build
node dist/runner.js --help
npm run release:check
node scripts/verify-sdk-interop.cjs /path/to/mainsequence-sdk /path/to/command-center-sdk
```

`release:check` 类型检查、构建、运行测试、检查发布元数据和 文档,将 npm 归档打包到 `artifacts/` 我从一个孤僻的、 消费者。 测试使用回回回固定的后端,合成的内存存储条目, 本地商店程序、安装的 CLI 固定装置和临时 Git 的备用设备 寄存器; 他们从不登录到真正的后端, 也不读取或写入用户的 证书。 浏览器测试必须允许循环网络 。 解析器, 标致器和终端跑车都有自己的套房 `tests/arguments.test.cjs`,从 主机跑者依赖它们.

可选的 SDK 兼容脚本检查实际 SDK 源执行 与两个方向的合成内存记录相对立,并带有一个孤立的临时Python 归家去. 它只为检查而导入 SDK 私人会话执行,并装入其 未运行 SDK 初始化器而从给定的退出中获取的依赖性 。 设定 `MAINSEQUENCE_TEST_PYTHON=/path/to/sdk/.venv/bin/python` 当它的CLI依赖性是 无法使用 `python3`。 Live OS 存储和后端刷新-旋转互操作性是一个 单独的释放检查.

## 释放

Npm 归档包含 `dist`, (中文(简体) ), `README.md`, (中文(简体) ), `LICENSE` 财务报告和审定财务报表 `NOTICE`; 主机适配器, 清单和市场从自己的储存库中释放出来。 要释放:设置 新版本输入 `package.json` 财务报告和审定财务报表 `package-lock.json`运行 `npm run release:check`,合并, 并按下标签 `v<version>`. 发布工作流程`release.yml`, GitHub 环境 `npm`重复检查,并通过 npm 公布经核实的档案 值得信赖的出版。 已出版的版本是不可改变的; 从未重现重建的归档 根据现有版本。 在GitHub的标签上写下释放笔记. 出版后,从注册处读取档案的完整性 (单位:千美元)`npm view @dev-mainsequence/devtools@<version> dist.integrity`; 当地 `npm pack` 已经 在主机将新版本钉入其锁文件之前.

## 常见问题

### @dev-mainsequence/devtools 是什么？

共享主序列开发者动作、项目操作、MCP客户端和命令运行程序

### 如何安装 @dev-mainsequence/devtools？

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

### @dev-mainsequence/devtools 支持 TypeScript 吗？

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

### @dev-mainsequence/devtools 支持 ESM 还是 CommonJS？

以 CommonJS 形式发布，可以直接 require\(\)；在 ES Module 项目中也可以用 import 引入（Node\.js 会把 module\.exports 作为默认导出）。

### @dev-mainsequence/devtools 需要什么版本的 Node\.js？

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

### @dev-mainsequence/devtools 可以商用吗？

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

### @dev-mainsequence/devtools 的下载量有多少？

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

### @dev-mainsequence/devtools 还在维护吗？

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

