---
title: "发布到商店：上架数字人和技能"
description: "在 Halo 中把数字人或技能发布到商店：填写发布信息、通过发布预检、管理版本和我的发布，以及导出 .dhpkg 或 .zip 包手动分享。"
type: "how-to"
audience: ["developer"]
lang: "zh-CN"
canonical: "https://hello-halo.cc/docs/developers/store-publishing.html"
last_updated: "2026-10-19T00:11:17+08:00"
source: "Halo 3.0.4 docs"
---
# 发布到商店

在 Halo 中把数字人或技能发布到商店：填写发布信息、通过发布预检、管理版本和我的发布，以及导出 .dhpkg 或 .zip 包手动分享。

把你做好的数字人或技能发布到商店，让别人一键安装。发布需要你在 Halo 里亲自操作，Halo 助手不能替你发布：发布是公开的，提交后无法撤回。

## 开始之前 {#before-you-start}

- 一个已经安装并调试好的数字人或技能。也可以直接发布文件：数字人支持 `.zip`、`.dhpkg`、`.yaml` 或文件夹，技能支持 `.md`、`.zip` 或文件夹。
- 数字人的系统提示词和技能文件里不能有 API Key、令牌等密钥，发布预检会拦截它们。

::: info 不同版本的 Halo 可能不同
只有当前 Halo 配置了发布目标时，商店里才会显示 **发布应用** 按钮。发布到哪里也由版本决定，见[发布去了哪里](#targets)。公司提供的 Halo 可能显示不同的选项。
:::

## 操作步骤 {#steps}

1. 打开 **商店**，点 **发布应用**。也可以在数字人页面点右上角的 **⋮ › 分享**，或在技能卡片上点分享图标，再点 **分享到商店**。
2. 在 **您想发布什么？** 中选 **数字人** 或 **技能**。
3. 在 **发布来源** 中选 **本地已装** 并挑出要发布的项目；或选 **导入**，把文件或文件夹拖进来。
4. 填写发布信息：
   - **作者**：会成为你在商店里的命名空间，条目地址形如 `author/app-name`。需要包含字母或数字。
   - **应用名称**、**场景分类**：必填。
   - **应用简介**、**标签**：选填，标签最多 8 个。
   - **发布信息** 中的 **版本**（必填）和 **更新说明**。
5. 发布数字人时，检查 **关联技能**：显示 **来自商店** 的技能不会被打包；商店里没有的技能会被打进包里，打开 **单独上架** 可以同时把它作为独立的技能条目发布；显示 **缺失** 的技能会阻止发布，需要先导入。
6. 解决发布预检提示的问题，点 **发布到商店**。

::: done
看到 **提交成功**，就说明已经提交。点 **查看** 可以打开 **我的发布**（仅在支持它的商店中）。
:::

这里填写的内容只影响发布出去的版本，不会修改你本地安装的数字人或技能。填写到一半关掉对话框，下次打开时会恢复草稿。

## 发布去了哪里 {#targets}

发布目标由 Halo 的版本决定，你不需要也无法选择：

| 版本 | 点“发布到商店”之后 |
|---|---|
| 社区版 | Halo 把条目打成 `.dhpkg` 包，在运行 Halo 的电脑上用浏览器打开 GitHub 的新建 issue 页面。你登录 GitHub、把包文件附到 issue 上并提交，维护者审核后才会上架，不会自动出现在商店里。 |
| 公司或自建的商店 | 提交给商店服务审核，结果可能是通过、审核中或未通过。商店绑定了账号时，需要先 **登录后发布**。 |
| 只保存文件的版本 | 弹出保存对话框，把 `<slug>-<version>.dhpkg` 存到本地，不联网。 |

## 版本规则 {#versions}

- **版本** 会自动预填：本地版本已高于已发布版本时直接使用，否则在已发布版本的最后一位加一。
- 新版本必须高于已发布的版本，否则不能提交。
- 给数字人改名会得到新的条目地址，相当于第一次发布。
- 中文名称会转成拼音作为条目地址。

## 发布预检 {#preflight}

提交前 Halo 会逐项检查。下面这些问题会阻止发布：

- 检测到疑似密钥：数字人的系统提示词或技能文件里出现 Anthropic、OpenAI、AWS、Google 的 API Key，GitHub 或 Slack 令牌，或私钥。删除后再发布。
- 没有填写名称。
- 版本没有提高。
- 关联技能缺失。

应用简介为空只会提示，不会阻止发布。

## 我的发布 {#my-publications}

支持账号的商店里，打开 **商店 › 我的** 可以看到你发布过的条目，状态有 **已上架**、**已下架**、**由运维移除** 和 **未通过**（附原因）。可以对条目 **发布新版本**、**重新提交**（未通过时）、**下架** 或 **重新上架**（你自己下架的条目）。由运维移除的条目无法自己恢复。

## 导出包手动分享 {#export}

不经过商店，也可以把包文件直接发给别人：

- **数字人**：在数字人页面点 **⋮ › 分享 › 导出**，得到 `<slug>-<version>.dhpkg`。
- **技能**：在技能卡片的分享对话框里点 **导出**，得到 `<slug>-<version>.zip`，压缩包根目录是 `SKILL.md`。

导出只在桌面版提供。对方在 **数字人 › 创建数字人 › 导入** 中导入数字人包。

## 下一步 {#next-steps}

- [商店](https://hello-halo.cc/docs/digital-humans/store.html)：浏览和安装商店里的数字人与技能
- [API：商店](https://hello-halo.cc/docs/developers/api/store.html)：用 API 浏览、安装和更新商店条目
