# @astron-team/skillhub 中文文档

规范地址：https://npmcn.com/package/%40astron-team/skillhub/

版本：0\.3\.1
npm 元数据更新时间：2026-11-04T08:11:57.461Z
中文译文更新时间：2026-11-07T01:16:10.529Z
软件包许可：Apache-2\.0

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

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

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

- 包体积（解压后）：1.3 MB，5 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- Node.js 要求：\>=18\.0\.0
- 运行依赖：6 个
- 首次发布：2026-05-06T09:11:01.916Z
- 最新版本发布：2026-11-04T08:11:57.228Z
- 近 30 天下载量：6107（2026-10-07 至 2026-11-05，npm 官方下载统计）
- 已发布版本数：14（近 12 个月 14 个）

## 中文简介

为 AI 编码代理管理和安装技能

## 安装

```sh
npm install @astron-team/skillhub
```

也可以使用：`pnpm add @astron-team/skillhub`、`yarn add @astron-team/skillhub`、`bun add @astron-team/skillhub`

## README

# SkillHub 语录

SkillHub CLI是SkillHub的官方命令行工具,用于搜索,安装,管理和发布Agent技能包.

## \* 安装

```bash
# Install globally via npm
npm install -g @astron-team/skillhub

# Or run directly with npx
npx @astron-team/skillhub@latest version

# Or install globally via Bun
bun add -g @astron-team/skillhub
```

## QQ 快速启动

```bash
# Log in interactively with OAuth Device Flow
skillhub login

# Search skills
skillhub search pdf

# Install skill to Agent directory
skillhub install pdf-parser --agent codex

# List installed skills
skillhub list

# Publish skill
skillhub publish ./my-skill --namespace myspace

# Synchronize a team workspace
skillhub sync pull --namespace myspace
```

## 登记配置

活动登记按下列优先顺序解决:

1.  `--registry <url>` 命令行参数
2.  `SKILLHUB_REGISTRY` 环境变量
3.  `registry` 内 `~/.skillhub/config.json`
4.  默认值 `https://skill.xfyun.cn`

```bash
# Temporarily use another registry
skillhub search pdf --registry https://skillhub.example.com

# Set via environment variable (Linux/macOS)
export SKILLHUB_REGISTRY=https://skillhub.example.com
```

**视窗 PowerShell :**

```powershell
$env:SKILLHUB_REGISTRY="https://skillhub.example.com"
```

**视窗 CMD :**

```cmd
set SKILLHUB_REGISTRY=https://skillhub.example.com
```

对于安装在 URL 前缀以下的登记册,请输入 `--registry` (例如, `https://skillhub.example.com/skillhub`) (中文(简体) ). 安装和命名空间同步 在遵循应用程序相关下载 URL 时保留该前缀 .

## 认证

`skillhub login` 只在参数、环境变量或为所选登记册保存的证书中解决无 API 令牌时使用 OAuth 设备流程。 无效的解析令牌不会自动倒回设备流 。 将分辨率优先用于 以符号为基础的明确登录和所有其他经认证的命令是:

1.  `--token <token>` 命令行参数
2.  `SKILLHUB_TOKEN` 环境变量
3.  存储在 `~/.skillhub/credentials.json` (每个登记册)

### 登录

```bash
# Interactive login: opens the registry's verification page and displays a user code
skillhub login

# Interactive login on a remote/headless terminal
skillhub login --no-open --registry https://skillhub.example.com

# Non-interactive login with an API token
skillhub login --token sk_xxx --registry https://skillhub.example.com
```

在交互式登录时,在浏览器中完成认证并输入显示的用户代码. CLI的民意测验只在服务器提供过期前进行. 然后验证发行的代币 把它存进 `~/.skillhub/credentials.json`,然后将登记册写入 `~/.skillhub/config.json`。 。 。 . `--no-open` 压制自动浏览器的启动,同时保留终端中的校验URL和代码.

基于Token的登录仍然可供CI和其他非交互自动化使用. 在两种模式中, 证书只有在 `whoami` 成功 .

两个文件都是无损更新的: SkillHub CLI 只更改自己的 `tokens` 财务报告和审定财务报表 `registry` 字段并保存其他相容工具所写的未知字段。 允许共享工具 页:1 `~/.skillhub` 在同一 JSON 文档中保留独立命名状态的目录.

### 检查当前身份

```bash
skillhub whoami

# Check specific registry
skillhub whoami --registry https://skillhub.example.com

# Temporarily use different token
skillhub whoami --token sk_other
```

### 注销

```bash
skillhub logout

# Logout from specific registry
skillhub logout --registry https://skillhub.example.com
```

注销只去除指定的注册符,保存注册配置和安装记录.

## 搜索( E)

```bash
# Keyword search
skillhub search pdf

# Search with a one-off token
skillhub search pdf --token sk_xxx

# List all skills (empty query)
skillhub search "" --limit 50

# JSON output
skillhub search pdf --json
```

输出格式 : `namespace/slug version summary`

## QQ 安装技能

安装坐标接受空弹或任何等同的命名空间 下列表格:

| 坐标 | 已解析命名空间 | 已解析弹 |
| --- | --- | --- |
| `my-skill` | `global` | `my-skill` |
| `team/my-skill` | `team` | `my-skill` |
| `@team/my-skill` | `team` | `my-skill` |
| `team--my-skill` | `team` | `my-skill` |

对于一个赤裸的鼻涕虫, `--namespace team` 选择一个非全局命名空间。 A 类 命名空间坐标可与同一坐标合并 `--namespace` 数值,但 相互冲突的价值遭到拒绝,而不是沉默地压倒坐标.

```bash
# Install to auto-detected Agent directory
skillhub install pdf-parser

# Equivalent namespaced coordinates
skillhub install team/my-skill
skillhub install @team/my-skill
skillhub install team--my-skill

# Choose install scope explicitly
skillhub install pdf-parser --scope user
skillhub install pdf-parser --scope project --agent codex

# Specify namespace for a bare slug (default: global)
skillhub install pdf-parser --namespace myspace

# Specify version
skillhub install pdf-parser --version 1.2.0

# Install to specific Agent
skillhub install pdf-parser --agent codex

# Install to AStudio's fixed user-level directory
skillhub install pdf-parser --agent astudio

# Install to Pi's user-level directory (use --scope project for the project directory)
skillhub install pdf-parser --agent pi

# Install to DeepSeek Harness (use --scope project from the repository root for project skills)
skillhub install pdf-parser --agent dsh

# Install to multiple Agents
skillhub install pdf-parser --agent codex --agent claude-code

# Install to custom directory
skillhub install pdf-parser --dir ~/.claude/skills

# Reinstall a SkillHub-managed installation from the same source
skillhub install pdf-parser --force
```

### 安装目标分辨率

CLI 使用以下逻辑确定安装位置 :

1.  若为 `--dir` 指定: 安装到目录中, 代理标记为 `custom`。 。 。 . `--dir` 两者相互排斥 `--scope` 财务报告和审定财务报表 `--agent`。 。 。 .
2.  若为 `--scope user|project` 指定: 将检测限制在选定的范围.
    -   与 `--agent <profile>`: 直接向该配置文件的用户或项目技能目录安装.
    -   无 `--agent`:仅在选定范围内检测现有技能目录。 在交互式用户范围 `generic` 目标(`<home>/.agents/skills/`总是提供,并且可以单独选择或与被检测出的目标一起选择.
    -   在所选范围中未检测到目录 ~ 回落到 `<home>/.agents/skills/` 页:1 `--scope user` 或者说 `<cwd>/.agents/skills/` 页:1 `--scope project`。 。 。 .
3.  若为 `--agent` 指定(无) `--scope`:安装到相应的代理技能目录(已存在的行为,不变).
4.  如无上述规定:
    -   **互动模式** (Stdin和Stdout都是TTY,没有) `--json`: 及时 `user` 或者说 `project` 范围,然后按 `--scope` 规则.
    -   **非交互式模式**: 自动扫描当前目录以检测现有的代理配置目录. 1 检测到的代理 → 直接安装; 多个 → 出错; 无检测到 → 回落到 `<cwd>/.agents/skills/`。 。 。 .

> `--dir` 无法与 `--scope` 或者说 `--agent`。 。 。 .

### 安装路径

大多数代理公司都有项目级和用户级的技能目录. 使用 `--scope user|project` 用于控制使用哪一种。 Astudio只使用其固定的用户级目录.

| 探员 | 项目级路径 | 用户级路径 |
| --- | --- | --- |
| `astudio` (阿斯图迪奥) | 不予支持 | `~/.acode/skills/` |
| `claude-code` | `<project>/.claude/skills/` | `~/.claude/skills/` |
| `codex` | `<project>/.codex/skills/` | `~/.codex/skills/` |
| `cursor` | `<project>/.cursor/skills/` | `~/.cursor/skills/` |
| `dsh` (深呼吸声) | `<project>/.dsh/skills/` | `~/.dsh/skills/` |
| `github-copilot` | `<project>/.github-copilot/skills/` | `~/.github-copilot/skills/` |
| `gemini-cli` | `<project>/.gemini/skills/` | `~/.gemini/skills/` |
| `windsurf` | `<project>/.windsurf/skills/` | `~/.windsurf/skills/` |
| `kiro-cli` | `<project>/.kiro/skills/` | `~/.kiro/skills/` |
| `roo` | `<project>/.roo/skills/` | `~/.roo/skills/` |
| `trae` | `<project>/.trae/skills/` | `~/.trae/skills/` |
| `trae-cn` | `<project>/.trae-cn/skills/` | `~/.trae-cn/skills/` |
| `openhands` | `<project>/.openhands/skills/` | `~/.openhands/skills/` |
| `openclaw` | `<project>/.openclaw/skills/` | `~/.openclaw/skills/` |
| `opencode` | `<project>/.opencode/skills/` | `~/.opencode/skills/` |
| `kilo` | `<project>/.kilo/skills/` | `~/.kilo/skills/` |
| `pi` (毕) | `<project>/.pi/skills/` | `~/.pi/agent/skills/` |
| `zcode` | `<project>/.zcode/skills/` | `~/.zcode/skills/` |
| _倒计时_ | `<project>/.agents/skills/` | `~/.agents/skills/` |

对于自定义路径或不支持的代理目录,使用 `--dir` 以指定安装路径。 在交互式用户范围 `generic` 目标与检测到的特工目标同时提供。 Astudio 在选择器中出现, 当 `~/.acode/skills/` 已存在。 何时 `--scope user|project` 找不到匹配的代理目录, CLI 返回到 `_fallback_` 上面排着一行.

DeepSeek Harness从最近的 Git 寄存器根解析项目技能,而SkillHub CLI 则使用当前目录进行项目范围配置. 运行 `--scope project --agent dsh` 从寄存器根。 若为 `DSH_HOME` 覆盖默认 `~/.dsh`,安装 `--dir "$DSH_HOME/skills"`。 。 。 .

### 安装后的文件结构

```
.codex/skills/pdf-parser/
├── ...                          # Extracted skill package files
└── .skillhub/
    └── metadata.json            # Installation metadata
```

`metadata.json` 示例:

```json
{
  "schemaVersion": 1,
  "registry": "https://skill.xfyun.cn",
  "namespace": "global",
  "slug": "pdf-parser",
  "version": "1.0.0",
  "versionId": 123,
  "fingerprint": "sha256:...",
  "files": { "SKILL.md": "sha256..." },
  "source": "skillhub",
  "agent": "codex",
  "installedAt": "2026-04-28T06:00:00.000Z"
}
```

CLI 创建 `.skillhub/metadata.json` 提取出下载的软件包后。 它不属于 当管理目录再次被公布时,则排除.

## \* 升级安装的技能

`upgrade` 只在明确选择的、由SkillHub管理的地方设施上运行。 从来没有 安装缺失的 Skill 且没有隐含的升级全模式.

```bash
# Preview without changing files
skillhub upgrade @global/skillhub-cli --check

# Upgrade one or a bounded list of installed Skills
skillhub upgrade @global/skillhub-cli
skillhub upgrade @team/code-review @team/java-guide

# Machine-readable plan
skillhub upgrade @team/code-review --check --json
```

来源身份是 `registry + namespace + slug`。 。 。 . `--force` 只有在 完全身份匹配安装元数据; 它从不覆盖一个未管理的目录或 a 从其他来源安装的技能.

每个选定的安装位置独立升级。 过滤器可以选择一个位置; 未选职位保留自己的版本和内容. 计划和结果报告每个职位一行. 命令还保留了注册解决旧版本时的本地文件. 如果一个多技能运行在较早的升级执行后失败, 执行停止并报告每个项目 作为 `upgraded`, (中文(简体) ), `failed`,或 `not-attempted`承诺的升级永远不会被隐含地卷回. 新设施存储绝对目标路径. 较早的目录条目,有相对目标路径 在升级前必须重新安装,因为其原始工作目录无法安全回收.

## 命名空间工作空间

使用命名空间同步来保持从一个团队空间中明确选择的技能. 每个同步动作都需要 `--namespace`· ; `global` 不是一个有效的同步目标,因为它没有命名空间成员.

```bash
# Interactively select new or updated skills in a TTY
skillhub sync pull --namespace team-a

# Non-interactive/CI pull: repeat --skill for every explicit target
skillhub sync pull --namespace team-a --skill code-review --skill java-guide

# Use an explicit workspace directory and target
skillhub sync pull --namespace team-a --skill code-review --dir ./.claude/skills

# Check without downloading
skillhub sync pull --namespace team-a --check

# Show local edits and remote updates
skillhub sync status --namespace team-a --json
skillhub sync diff --namespace team-a

# Remove only an explicitly selected, unchanged managed skill that no longer exists remotely
skillhub sync pull --namespace team-a --skill retired-guide --prune

# Validate and upload every local skill for review
skillhub sync push --all --namespace team-a --dry-run
skillhub sync push --all --namespace team-a --submit-review
```

默认的工作空间是 `<cwd>/.agents/skills`在交互式 TTY 中,拉出一个多选择列表;空 选择不会改变任何东西。 在TTY之外, 总是与 `--json`,拉势需要一个或多个可重复 `--skill <slug>` 选项,而永远不要提示. `sync pull --check` 例外:它检查整个命名空间和 从不编写本地文件 。 拉动绝不覆盖本地更改,除非 `--force` 提供,和 `--force` 仅适用于 明确选择技能。 远程清除量报告为: `orphaned` 并予保留,除非 `--prune` 财务报告和审定财务报表 匹配 `--skill` 已提供.

同步比较已发布的版本和包指纹. 确切的匹配是 `up-to-date`, (中文(简体) ), 当更新版本是 `update-available` 即使其内容不变。 旧的遥控器 版本, 无法排序的版本配对, 或更改的远程内容, 没有版本折叠 `blocked`。 。 。 . `--force` 不得绕过这些释放安全检查; 核实释放情况并使用明确的 `skillhub install` 当替换是故意的.

工作空间推是非重叠的:一个已存在的取名空间/slug/版本被报告为冲突,包括仍然被上传或等待审查的版本. 其他同类技能 `--all` 运行继续处理.

名称空间同步写入 `.skillhub/namespace-sync.json` 工作空间和技能 `.skillhub/metadata.json` 文档。 这些文件包含注册坐标、已公布版本、汇总指纹、以及所使用的文件散列 `status` 财务报告和审定财务报表 `diff`。 。 。 .

## 使用已安装的技能和装备

安装下载 Skill 文件; 它不执行任务 。 打开您代理中的目标项目, 验证其发现 `SKILL.md`,配置文档的依赖关系,请其使用“技能”。 见 [成套使用指南](https://npmcn.com/package/%40astron-team/docs/skillhub/en/guide/skill-suites.md)。 。 。 .

```bash
# Replace with a real Suite coordinate
skillhub suite install @team/example-suite --scope project --agent codex
skillhub suite check @team/example-suite
skillhub suite upgrade @team/example-suite --check
skillhub suite upgrade @team/example-suite
skillhub suite remove @team/example-suite
```

## 地方管理

### 列出已安装的技能

```bash
# List all installed skills
skillhub list

# Filter by Agent
skillhub list --agent codex

# Filter by multiple Agents
skillhub list --agent codex --agent claude-code

# Filter by directory
skillhub list --dir ~/.codex/skills

# JSON output
skillhub list --json
```

### 删除技能

```bash
# A bare slug removes matching local installations across namespaces
skillhub remove pdf-parser

# A namespaced coordinate removes only that namespace
skillhub remove myspace/pdf-parser
skillhub remove @myspace/pdf-parser
skillhub remove myspace--pdf-parser

# Equivalent precise local removal with an explicit namespace
skillhub remove pdf-parser --namespace myspace

# Remove only specific Agent's installation
skillhub remove pdf-parser --agent codex

# Remove all targets (skip interactive confirmation)
skillhub remove pdf-parser --all

# Remove remote skill (requires authentication, prompts for confirmation)
skillhub remove pdf-parser --remote --namespace myspace

# Skip remote deletion confirmation
skillhub remove pdf-parser --remote --hard --namespace myspace
```

> 参数排他性规则:
> 
> -   `--all` 无法使用 `--agent`
> -   `--remote` 无法使用 `--agent` 或者说 `--all`
> -   在非互动环境中需要远程删除 `--hard`

### 重建当地库存

```bash
skillhub doctor
```

`doctor` 执行下列操作:

1.  扫描 `<cwd>/.<agent>/skills/<slug>/.skillhub/metadata.json`
2.  组别 `registry + namespace + slug`
3.  后退旧去 `inventory.json` (如果存在)
4.  写入新内容 `inventory.json`

每个目标都跟踪版本。 医生报告康复问题;它不下载或提升技能.

## · 出版

```bash
# Publish directory (auto-packaged as zip)
skillhub publish ./my-skill --namespace myspace

# Publish existing zip file
skillhub publish ./my-skill.zip --namespace myspace

# Specify visibility
skillhub publish ./my-skill --namespace myspace --visibility private
```

可见选项 :

-   `public` (默认)——人人可见
-   `namespace-only` ——仅能识别空间成员
-   `private` - 只有你自己才看得出来

在服务器接受提交后,CLI会显示服务器的当前状态和技能细节页面URL. 诸如: `SCANNING` 财务报告和审定财务报表 `PENDING_REVIEW` 已成功同步提交,但不确认 技能最终被公布。 请检查access-date=中的日期值 (帮助) 最后出版或审查状态的网页.

## \* 自我更新

```bash
# Check for new version
skillhub update --check

# Execute update
skillhub update
```

更新机制 :

-   通过 npm 全球安装: 自动执行 `npm install -g @astron-team/skillhub@latest`
-   通过 Bun 全球安装: 自动执行 `bun add -g @astron-team/skillhub@latest`
-   通过 npx 运行: 提示手动更新命令
-   未知的安装方法: 提示手动更新

## 环境变量

| 变量 | 说明 | 优先权 |
| --- | --- | --- |
| `SKILLHUB_REGISTRY` | 默认注册 URL | 低于 `--registry` 参数 |
| `SKILLHUB_TOKEN` | API 令牌 | 低于 `--token` 参数, 高于存储的符号 |

## 本地文件结构

```
~/.skillhub/
├── config.json           # User configuration (registry, defaultAgent, etc.)
├── credentials.json      # API tokens (stored per registry, permissions 0600)
└── inventory.json        # Installed skills inventory
```

## QQ 命令参考

| 命令 | 说明 |
| --- | --- |
| `skillhub help [command]` | 显示帮助信息 |
| `skillhub version [--json]`, (中文(简体) ), `skillhub --version`, (中文(简体) ), `skillhub -v` | 显示 CLI 版本 |
| `skillhub login [--no-open] [--token <token>] [--registry <url>] [--json]` | 登录 OAuth 设备流或 API 令牌 |
| `skillhub logout [--registry <url>] [--json]` | 删除指定的注册符 |
| `skillhub whoami [--registry <url>] [--token <token>] [--json]` | 验证当前符号并显示用户信息 |
| `skillhub search <query> [--registry <url>] [--token <token>] [--limit <n>] [--json]` | 搜索已公布的技能 |
| `skillhub install <coordinate> [--scope <user|project>] [--namespace <slug>] [--version <v>] [--agent <profile>] [--dir <path>] [--force] [--registry <url>] [--token <token>] [--json]` | 安装技能 |
| `skillhub upgrade <coordinate...> [--namespace <slug>] [--agent <profile>] [--dir <path>] [--registry <url>] [--check] [--force] [--json]` | 升级明确选择的安装技能 |
| `skillhub list [--agent <profile>] [--dir <path>] [--registry <url>] [--json]` | 列出已安装的技能 |
| `skillhub remove <coordinate> [--agent <profile>] [--all] [--remote] [--hard] [--namespace <slug>] [--registry <url>] [--token <token>] [--json]` | 删除技能 |
| `skillhub doctor [--json]` | 扫描项目目录并重建本地目录 |
| `skillhub publish <path> [--namespace <slug>] [--visibility <v>] [--registry <url>] [--token <token>] [--json]` | 发布技能 |
| `skillhub sync pull --namespace <slug> [--skill <slug>]... [options]` | 从非全局命名空间中提取明确选中的技能 |
| `skillhub sync <status|diff|push> --namespace <slug> [options]` | 检查或推动非全局命名空间工作空间 |
| `skillhub suite <install|check|upgrade|remove> <coordinate> [options]` | 管理一个被绑定的技能套件安装 |
| `skillhub update [--check] [--json]` | 检查或执行 CLI 自更新 |

## 安全说明

-   仅存储在用户目录中 `~/.skillhub/credentials.json`
-   在 Linux/macOS 上,证书文件权限自动设定为 `0600`
-   托肯从未写入任何工程本地文件
-   远程删除操作需要明确确认或 `--hard` 参数
-   `remove` 命令验证路径安全,以防止删除非技能目录

## \* 解决问题

### 认证失败

```bash
# Verify token validity
skillhub whoami

# Re-login interactively
skillhub login

# Or use a token for non-interactive automation
skillhub login --token sk_xxx
```

对于结构化注册失败, CLI 打印服务器的公众 `msg` 财务报告和审定财务报表 `requestId`. HTTP 403 无公开消息返回 `access denied`· ; 它不会自动被描述为缺失的符号范围。 包含 在要求注册操作员进行调查时请求识别.

### 网络错误

```bash
# Check if registry is accessible
curl 'https://skill.xfyun.cn/api/cli/v1/skills/search?q=test&limit=1'

# Use alternative registry
skillhub search test --registry https://skillhub.example.com
```

### 安装目录冲突

```bash
# Use --force to overwrite
skillhub install pdf-parser --force # same SkillHub source only

# Or remove first then install
skillhub remove pdf-parser
skillhub install pdf-parser
```

`--force` 不绕过源属性。 移动或明确删除未管理或不同来源 在安装另一个具有相同可见弹片的 Skill 之前使用目录 .

### 存货损坏

```bash
# Rebuild inventory
skillhub doctor
```

## 页:1

-   [SkillHub 主页](https://skill.xfyun.cn/)
-   [GitHub 仓库](https://github.com/iflytek/skillhub)
-   [CLI 文档](https://github.com/iflytek/skillhub/blob/main/docs/skillhub/en/guide/cli.md)
-   [问题跟踪器](https://github.com/iflytek/skillhub/issues)

## 许可证

阿帕奇 - 2.0

版权:2026 iFlytek Co., Ltd.

## 包装任务示例

作者可以包括: `.skillhub/examples.json` 在一个技能包。 文件保持不变 路径。 它是版本技能内容,包括当其 JSON 不符合示例协议; 本地编辑由已有的 升级/同步完整性检查。 不需要单独的 Web 配置 .

```json
{
  "schemaVersion": 1,
  "defaultLocale": "zh-CN",
  "examples": {
    "zh-CN": [{ "id": "summary", "title": "整理纪要", "prompt": "请用 {{skill}} 整理会议记录。" }],
    "en": [{ "id": "summary", "title": "Summarize notes", "prompt": "Use {{skill}} to summarize meeting notes." }]
  }
}
```

本地的 DSH 插件确认此已设定的 UTF-8 声明并提供可编辑的任务 电源 不支持的声明仍然是普通的软件包文件. 见 [协议和限制](https://npmcn.com/package/%40astron-team/openspec/changes/add-dsh-native-plugin/skill-examples-design.md)。 。 。 . 仅 `.skillhub/metadata.json` 是安装者拥有的记录: 目录发布和同步 推出省略,安装则拒绝一个提供它的包(包括路径别名). 其他作者 `.skillhub` 文档被保留和指纹.

忽视整体的老消费者 `.skillhub` 目录不支持软件包 这些文件。 仅用寿命周期可使用的CLI/插件建件出版/安装;旧软件包 字节和已公布的指纹必须保持不变。 这不是透明的后退 现有的二进制兼容性 .

目录和 ZIP 出版(`publish`,包括: `--dry-run`,以及 `sync push`检查 用于任务实例的已发送归档。 人类产出报告确认摘要; `--json` 留着吧 `examplesStatus`, (中文(简体) ), `examplesCount` 财务报告和审定财务报表 `warnings` 字段。 计数包括 所有申报的语言。 不支持的宣告产生非屏蔽警告,并且是 未上载; 无法读取的归档生成检查警告并保留 以服务器的软件包验证为条件.

### 安装库存兼容性

版本 `0.3.0` 保留安装存货计划 第2版. 每个安装目录都拥有 版本、指纹、时间戳和所有权,因此用户安装和项目安装 同样的技能可以留在不同的版本. `list --json` 报告实际版本 每个目标. `upgrade --check --json` 升级结果包含每个选定安装一行 位置;因此,同一坐标可以不止一次地出现不同的版本和 `targets`。 。 。 . `--dir` 或者说 `--agent` 选择职位时不更新未选中的兄弟姐妹. 直接安装/升级/重新升级和同步运行 与 `--force`通过成套命令管理这些职位;不相关的直接设施 仍可独立管理.

共用库存仍然严格v2,没有长期存在 `installationState`; 激活来源于信任 `SKILL.md` 编号 : `SKILL.md.disabled` 条目。 不需要协调的CLI升级。 已公布的CLI `0.2.0` 必须保留正常的查询和普通目标管理;默认的更新、同步和套接字路径不得无意中使被禁用的目标得以实现。 历史显性力的安装,升级和同步保留了它们的覆盖语义并可能恢复标准条目;显性去除保留了删除语义. 新阅读器必须反映这些实际文件变化.

读取 v1/v2 是非调取. 未公布的v3存货需要经过验证,锁定的转换为v2,并有原字节备份;从未在较新的记录上恢复已过时的存货. 普通的DSH日记保持相容性;切换日记不得阻挡无关的历史操作. 兼容性修补和真实的历史包装验收正在进行中;放行时一直被屏蔽到通过.

此 CLI 不添加启用/ 失效命令 。 使用 DSH 进行明确的切换并禁用更新; CLI 升级甚至拒绝使用 `--force`名称空间同步 没有更新/更新的设施,套件无法采用,医生保留了信任 记录不声称松散 `.disabled` 文档。 标准出版要求 `SKILL.md`· ; 在发布禁用安装之前,通过兼容管理器恢复条目.

## 常见问题

### @astron-team/skillhub 是什么？

为 AI 编码代理管理和安装技能

### 如何安装 @astron-team/skillhub？

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

### @astron-team/skillhub 支持 TypeScript 吗？

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

### @astron-team/skillhub 支持 ESM 还是 CommonJS？

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

### @astron-team/skillhub 需要什么版本的 Node\.js？

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

### @astron-team/skillhub 可以商用吗？

@astron-team/skillhub 使用 Apache-2\.0 许可。宽松许可：允许商业使用、修改和再分发，并附带明确的专利授权；分发时需保留许可与 NOTICE 文件，修改过的文件要注明改动。以上为概括，不构成法律意见，请以许可原文为准。

### @astron-team/skillhub 的下载量有多少？

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

### @astron-team/skillhub 还在维护吗？

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

