开发者/官方 Skills

官方 Skills:教 AI 怎么用字流干活

Skills 是写给 Agent 看的操作手册:什么时候用字流、按什么顺序调、哪些事必须先问用户。一键接入时会装到支持 skills 的 Agent 里。

5 个 skills

skill什么时候用要点
ziliu用户提到字流、发全平台、写公众号 / 小红书 / 知乎稿、剪口播、复盘、今天写什么总入口:先确认连得上(ziliu_me)、规矩(不编经历、公开先问、花云点先说)、该转到哪个专门的 skill
ziliu-publish「帮我写一篇发全平台」「把这篇发出去」起一篇稿 → 按平台出稿 → 质检 → 发布前检查 → 填进编辑器 → 用户确认后发布
ziliu-video「剪一下这个口播」「做个视频」真人口播录像精剪(画风、版式、字幕不填就按内容自动挑),或 AI 成片;后台任务轮询;送各视频平台
ziliu-operate「今天写什么」「最近数据怎么样」「回一下评论」「复盘一下」每日选题、对标爆款评论区、复盘、草拟回复、定位人设和字流学到的东西
ziliu-content-ingest别的自动化 Agent(Hermes 等)做好了成稿,要交给字流做最后一公里发布POST /v1/content 的字段约定

安装位置

  • 一键接入会装到:~/.claude/skills、~/.codex/skills、~/.workbuddy/skills、~/.codebuddy/skills、~/.kimi-code/skills、~/.iflow/skills。
  • 「设置 → 更多 → AI Agent → 安装官方 skills」可以单独重装(同名目录会被换成新版)。
  • 每个 skill 是一个带 SKILL.md 的文件夹。用的 Agent 不在上面的列表里,把下面的原文复制过去(或当作系统提示词 / 项目规则贴进去)就行。

每个 skill 都写了的规矩

  • 用户的亲身经历、数字、案例只能来自用户本人:写稿前先问,没有就写判断,不编「我上周……」。
  • 会公开的操作(点发布、发评论、改公众号自动回复)必须先征得用户同意,再带 confirm: true。
  • 花云点的大活(批量写稿、剪视频、AI 成片、深度复盘)先说大概花多少。
  • 云点不够(402)就停下来告诉用户,不换着法子重试。
  • 视频任务只轮询 video:job 的结果,不重复提交。

原文

和字流 3.1.7 一起发布的版本。点开复制,存成对应文件夹下的 SKILL.md。

ziliu用字流(ziliu)驱动真人 IP 的全平台内容:选题、一句话成稿、按平台写稿、口播剪辑、AI 成片、送 26 个平台发布、评论私信、复盘。用户提到字流、发全平…
---
name: ziliu
description: 用字流(ziliu)驱动真人 IP 的全平台内容:选题、一句话成稿、按平台写稿、口播剪辑、AI 成片、送 26 个平台发布、评论私信、复盘。用户提到字流、发全平台、写公众号/小红书/知乎稿、剪口播、做复盘、看今天写什么时用。
license: 字流官方技能,随字流使用
---

# 字流(ziliu)

字流是真人 IP 的全平台内容操作系统,桌面端在用户电脑上跑,开放了本机 API 和 MCP 服务。你通过它替用户干活,干的活和用户在界面上点出来的完全一样。

## 先确认能连上

1. 优先用 MCP 工具(名字以 `ziliu_` 开头)。先调 `ziliu_me`:能返回套餐和账号,说明字流开着、令牌对。
2. 没有 MCP 时用 HTTP(字流开着才有):
   ```bash
   curl -s http://127.0.0.1:17616/v1/health
   curl -s -H "Authorization: Bearer $ZILIU_TOKEN" http://127.0.0.1:17616/v1/catalog
   curl -s -X POST -H "Authorization: Bearer $ZILIU_TOKEN" -H "Content-Type: application/json" \
     -d '{"status":"draft"}' http://127.0.0.1:17616/v1/call/os:content:list
   ```
   令牌在字流「设置 → 更多 → AI Agent → 开发者选项」里复制(`ziliu_local_` 开头)。连不上就请用户打开字流。

## 全部能力

字流约 300 个能力都开放了:`ziliu_catalog`(或 `GET /v1/catalog`)列出每个的名字、分组、风险级、说明和参数示例;`ziliu_call`(或 `POST /v1/call/<通道>`)调任意一个。分组:`creation` 写稿改稿、`media` 配图封面图集、`video` 视频、`topics` 选题、`queue` 发布、`operation` 评论私信、`review` / `ipReview` 复盘、`analytics` 数据、`positioning` / `persona` 定位人设、`kb` / `research` 素材和联网检索、`os` 内容和平台稿。

## 必须遵守

- **会公开的操作要用户点头**。风险级 `public`(点发布、发评论回复、改线上公众号配置):先把要发什么、发到哪告诉用户,用户明确同意后才带 `confirm: true`。用户还要在字流设置里打开「允许 Agent 做会公开的操作」,没开会返回 `public_disabled`,照实告诉用户,别绕。
- **不编用户的经历**。字流做的是真人 IP:用户亲身经历、数字、判断只能来自用户本人(`firsthand` 字段)或字流已经学到的个人资产,不要替用户编「我上周……」。
- **花云点的操作先说一声**(写稿、AI 成片、复盘、生图)。`ziliu_me` 能看到剩余云点。
- **视频和长任务是后台任务**:返回 jobId,用 `ziliu_video_job` 每 10–20 秒查一次,别一直重提交。
- 登录平台账号、填密钥、付款这些不开放,需要用户自己在字流里操作。

## 套餐和云点(字流是收费产品,照实跟用户说)

- **免费版的 AI 只能读**(看选题、稿子、数据、复盘)。写稿、剪辑、送发布、改设定会返回 `plan_required`:告诉用户这些要创作者版及以上,给出返回里的 `upgradeUrl`,别想办法绕。
- **花云点的能力**(目录里 `costsPoints: true`:写稿改稿、生图、转写剪辑、AI 成片、复盘、助手问答、联网检索……)按用量从云点扣,和用户在界面上用一样;用户用自己的模型密钥时不扣云点。大活之前用 `ai:pointEstimates` 估一下、`ziliu_me` 看余额,告诉用户大概花多少。
- 返回 `insufficient_points`(云点不够):停下,告诉用户余额和需要的点数,请用户去充值,别换着通道重试。
- 返回 `rate_limited`:每分钟最多 120 次、花云点的 15 次,等 `retryAfterSec` 秒再继续,别刷。

## 设定

人设、定位、写作风格、发布预设、引流、选题对标都有专门的能力(`persona:*`、`positioning:*`、`kit:*`、`preset:*`、`privateDomain:*`、`topics:competitors:*`)。主题、语言、自动更新、选题雷达(每天几点出选题、热榜 / RSS 来源、联网)、视频默认画面用 `config:get` / `config:set`。密钥、登录、付款永远要用户自己在字流里弄。

## 常见活怎么干

- 写一篇发全平台 → 看 `ziliu-publish` 技能
- 口播剪辑、AI 成片 → 看 `ziliu-video` 技能
- 今天写什么、复盘、回评论 → 看 `ziliu-operate` 技能
ziliu-content-ingest把别的自动化 Agent(如 Hermes)做好的成稿(Markdown 正文、封面、视频)交给字流做最后一公里发布,走本机 POST /v1/content。…
---
name: ziliu-content-ingest
description: 把别的自动化 Agent(如 Hermes)做好的成稿(Markdown 正文、封面、视频)交给字流做最后一公里发布,走本机 POST /v1/content。要从头写稿、剪视频、复盘用 ziliu 系列技能。
license: 字流官方技能,随字流使用
---

# ziliu-content-ingest

Use this skill when Hermes or another automation agent needs to hand off a finished content package to Ziliu for final-mile publishing.

## Contract

Ziliu receives structured content through the local HTTP API. Do not create or import JSON files through the desktop UI.

Default endpoint:

```text
POST http://127.0.0.1:17616/v1/content
```

Health check:

```text
GET http://127.0.0.1:17616/v1/health
```

## Payload

Send a JSON request body with these fields:

```json
{
  "source": "hermes",
  "jobId": "hermes-job-id",
  "kind": "long_text",
  "title": "Content title",
  "markdown": "# Markdown body",
  "coverImage": "https://example.com/cover.jpg",
  "videoUrl": "https://example.com/video.mp4",
  "tags": ["tag1", "tag2"],
  "platforms": ["wechat", "zsxq"]
}
```

Supported `kind` values:

- `long_text`
- `short_text`
- `short_video`
- `long_video`

Common content aliases accepted by the API:

- Body: `body`, `content`, `markdown`, `article`
- Short text: `shortText`, `caption`, `note`
- Video script: `videoScript`, `script`
- Cover: `coverImage`, `cover`
- Video: `videoUrl`, `video`, `videoFile`, `videoPath`, `localVideoPath`
- Hermes job id: `hermesJobId`, `jobId`

For richer asset handoff, send `assets`:

```json
{
  "source": "hermes",
  "kind": "short_video",
  "title": "Video title",
  "videoScript": "Voiceover script",
  "assets": [
    {
      "type": "video",
      "name": "video.mp4",
      "url": "https://example.com/video.mp4",
      "duration": 120
    }
  ],
  "platforms": ["xiaohongshu"]
}
```

## Expected Behavior

After a successful request, Ziliu returns the saved content item. The item appears in the desktop content library and keeps its `source` and `hermesJobId` when edited and saved.

Publishing remains a Ziliu responsibility. Hermes should hand off content and let Ziliu handle platform adaptation, account selection, validation, and queue submission.
ziliu-operate用字流运营真人 IP:今天写什么(每日选题、对标爆款评论区)、复盘(每篇比平时、各平台投入产出、IP 深度复盘)、评论私信(草拟回复、发出去)、定位人设和字流自…
---
name: ziliu-operate
description: 用字流运营真人 IP:今天写什么(每日选题、对标爆款评论区)、复盘(每篇比平时、各平台投入产出、IP 深度复盘)、评论私信(草拟回复、发出去)、定位人设和字流自己学到的东西。用户问「今天写什么」「最近数据怎么样」「回一下评论」「复盘一下」时用。
license: 字流官方技能,随字流使用
---

# 字流运营

前提:字流开着,MCP 工具可用(见 `ziliu` 技能)。

## 今天写什么

- `ziliu_today_topics`:今天的选题卡(三条线:追热点 / 常青 / 人设资产),每张带角度、为什么值得写、证据(对标爆款、热度、内容类型)。
- 选题卡证据里有对标爆款链接(B 站 / 掘金)时,`ziliu_call` → `topics:competitorComments` `{ "url": "...", "title": "..." }` 读一页公开热评:读者在问什么、质疑什么、想要什么、能接着写的角度。
- 用户选了一张:`topics:pick` `{ "topicId": "..." }`,然后按 `ziliu-publish` 开写(`ziliu_brief` 带上 `topicId`)。
- 想法存进选题库:`topics:createManual` `{ "input": { "title": "...", "angle": "...", "notes": "..." } }`。

## 复盘

- `ziliu_review`:每篇内容在各平台「比平时」几倍 + 最近一份 IP 深度复盘(定位、信任资产和缺口、各平台主攻/培养/砍掉、读者原话、商业价值、下周计划)。
- 数据看板:`analytics:board` `{ "rangeDays": 7 | 30 | 90 }`;周报:`review:weeklyReport`;值得加热(投流)的:`review:boosts`。
- 要新的 IP 深度复盘:`ipReview:run`(2–3 分钟,花云点;字流每周一也会自动出)。
- 给用户讲复盘时用数字说话,引用读者原话要用复盘里给的原句,别自己编。

## 评论和私信

1. `ziliu_inbox` `{ "status": "unread" }`。
2. 草拟:`ziliu_call` → `operation:draftReply` `{ "interactionId": "..." }`(按用户的口吻)。
3. 发出去是**公开操作**:把草稿给用户看,用户同意后 `operation:confirmReply` `{ "interactionId": "...", "confirm": true }`。
4. 不想回的:`operation:setStatus`。

## 定位、人设、字流学到的

- `positioning:get`、`persona:list`:赛道、内容支柱、个人资产、口吻、对标。写稿前看一眼,别写出和定位冲突的东西。
- `growth:list`:字流自己学到的个人资产、写法、剪辑偏好、复盘经验,每条可撤销(`growth:undo`)。
ziliu-publish用字流把一个想法写成各平台的稿子并送去发布:一句话成稿、按平台出稿(公众号长文、小红书图文、知乎、掘金、抖音口播稿……)、发布前检查、填进各平台编辑器、确认发布…
---
name: ziliu-publish
description: 用字流把一个想法写成各平台的稿子并送去发布:一句话成稿、按平台出稿(公众号长文、小红书图文、知乎、掘金、抖音口播稿……)、发布前检查、填进各平台编辑器、确认发布。用户说「帮我写一篇发全平台」「把这篇发出去」时用。
license: 字流官方技能,随字流使用
---

# 一篇稿发全平台(字流)

前提:字流开着,MCP 工具可用(见 `ziliu` 技能)。

## 1. 起母稿

- 用户给的是一句话:`ziliu_brief`
  - `brief`:一句话写什么;
  - `firsthand`:**问用户**自己的经历、数字、判断(这是稿子可信的核心;用户没给就别编,可以先问一句);
  - 从选题卡开写就带 `topicId`(`ziliu_today_topics` 能拿到)。
  返回 `contentId`(字流已经联网补料、提炼了内核)。
- 用户给的是写好的正文:`ziliu_call` → `os:content:save`,`{ "content": { "title": "...", "kind": "long_text", "mode": "article", "body": "Markdown 正文", "status": "draft" } }`,再 `ziliu_call` → `creation:distill` `{ "contentId": "..." }`。

## 2. 按平台出稿(花云点)

`ziliu_write_drafts`,`targets` 是 `{ platform, kind }` 列表。常用组合:

| 想要 | targets |
|---|---|
| 公众号长文 | `{ "platform": "wechat_mp", "kind": "long_text" }` |
| 小红书图文 | `{ "platform": "xiaohongshu", "kind": "short_text" }` |
| 知乎 / 掘金 / 头条长文 | `zhihu` / `juejin` / `toutiao` + `long_text` |
| 抖音 / 视频号口播稿 | `douyin` / `video_wechat` + `short_video` |
| 微博、即刻、X 短内容 | `weibo` / `jike` / `x` + `short_text` |

不确定用户在哪些平台有号:`ziliu_me` 看 accounts。

## 3. 看稿、改稿

- `ziliu_get_content` 拿到每个平台稿(`drafts[].id`、标题、正文、发布字段)。
- 改一处:`ziliu_call` → `creation:refine` `{ "draftId": "...", "action": "custom", "instruction": "开头换成我的真实经历" }`;直接改文字:`os:draft:update`。
- 发布前检查(送发布前必跑):`ziliu_publish_check` `{ "contentId": "..." }` 给出每篇能不能送、卡在哪:
  - 「N 个发布字段要补」→ `creation:metaFill` `{ "draftId": "..." }`;「N 个配图位还没配图」→ `media:resolveFigures`;「正文超出平台字数上限」→ `creation:refine` 压短;「没有可用账号」→ 请用户在字流里登录那个平台;
  - 再做质检:`creation:lint`(规则,不花云点:套话、AI 口头禅、空泛工具名、假设例子、节奏)、`creation:styleDna:get` 对照用户平时的写法、`creation:personaCheck`(像不像用户本人 + 观点支撑 / 体感 / 姿态逐项,花少量云点)。有问题告诉用户;用户同意改就调 `creation:refine`,action=humanize,instruction 一行一条写没过的项。
- 小红书 / 微博要图集:`media:carousel` `{ "draftId": "..." }`(生图花云点)。

## 4. 送去发布

1. `ziliu_send_to_publish` `{ "contentId": "...", "timing": "now" | "best" }`:字流在后台把稿子**填进各平台编辑器,不会公开**。
2. `ziliu_publish_board` 看每个平台:填稿中 → 已填好等确认(`awaiting_confirm`)/ 失败(带原因,比如账号要重新登录)。
3. 真正点「发布」是公开操作。默认让用户在字流发布页自己确认;用户明确要你代点时:
   - 把要发的平台和标题列给用户,等用户说「发」;
   - `ziliu_call` → `queue:submitFilled` `{ "jobIds": ["..."], "confirm": true }`;
   - 再查 `ziliu_publish_board` 确认结果,失败的照实告诉用户。
4. 用户在平台上手动发完的:`queue:confirm` `{ "jobId": "...", "resultUrl": "..." }` 记成已发布。

## 注意

- 小红书只把稿子交给用户自己的 Chrome,不会自动发(平台风控),告诉用户去 Chrome 里点。
- 抖音、快手某些操作要手机验证,字流会提示,照实转告。
ziliu-video用字流做视频:真人口播录像自动精剪(剪口误、配画中画、钩子标题、字幕、配乐、各平台版本、成片体检),或没有录像时做 AI 成片(分镜 + 配音 + 动效画面,可…
---
name: ziliu-video
description: 用字流做视频:真人口播录像自动精剪(剪口误、配画中画、钩子标题、字幕、配乐、各平台版本、成片体检),或没有录像时做 AI 成片(分镜 + 配音 + 动效画面,可选科技发布会 / 瑞士海报 / 蓝图 / 手绘白板风格),再送去各视频平台。用户说「剪一下这个口播」「做个视频」时用。
license: 字流官方技能,随字流使用
---

# 字流做视频

前提:字流开着,MCP 工具可用(见 `ziliu` 技能)。视频都是后台任务:拿到 `jobId` 后用 `ziliu_video_job` 每 15 秒查一次,`status` 变成 `done` / `failed` 为止。

## A. 真人口播录像 → 精剪成片

1. 要一个内容:已有就用;没有就 `ziliu_call` → `os:content:save` `{ "content": { "title": "...", "kind": "short_video", "mode": "video", "status": "draft" } }`。
2. 加录像:`ziliu_call` → `os:asset:add` `{ "contentId": "...", "type": "video", "name": "口播.mp4", "localPath": "<用户给的本地路径>", "role": "source_video" }`,拿到 `assetId`。
3. 开剪:`ziliu_call` → `video:transcribe`:
   ```json
   { "contentId": "...", "assetId": "...", "aspect": "9:16",
     "talkingHead": { "polish": true, "look": "glass", "layout": "split", "captions": "box" } }
   ```
   - `look`:`classic` / `glass`(深色玻璃);`layout`:`overlay` / `split`(竖版上下分屏);`captions`:`poster` 大字 / `box` 深色底框。不填就用用户学到的默认。
   - 字流会:按词剪口误和重说、提速、AI 设计钩子标题和画中画(数字卡、截图、章节卡、流程图……)、配乐、字幕、各平台版本,并做**成片体检**(回听查有没有剪掉字、音量 -14 LUFS、卡顿黑屏)。
4. 查 `ziliu_video_job`:`output.videoPath` 是成片,`output.health` 是体检发现的问题,`output.downgrades` 是没按计划做的地方。把这两项原样告诉用户。
5. 用户不满意:
   - 一键反馈,字流会记成以后的剪辑规则:`video:feedback` `{ "kind": "busy" | "slow" | "fast" | "music" | "face" | "title" }`,再重剪:`video:recut` `{ "contentId": "...", "talkingHead": { "replan": true } }`(`segments` 不传 = 转写稿全部保留;busy / slow / fast 要带 `replan: true` 重新设计包装)。
   - 改钩子 / 标题:`video:recut` 时 `talkingHead.hook` / `talkingHead.title`(`/` 分两行)。
   - `video:job` 返回整个任务:看 `status`、`progress`、`stage`,完成后结果在 `output` 里(`output.videoPath`、`output.health`、`output.downgrades`)。

## B. 没有录像 → AI 成片

1. 有母稿或口播稿的内容:`ziliu_call` → `video:plan` `{ "contentId": "..." }` 出分镜(`scenes`)。
2. `ziliu_call` → `video:compose` `{ "contentId": "...", "scenes": <上一步的 scenes>, "aspect": "9:16", "style": "keynote" }`,`style`:`motion` 默认 / `keynote` 科技发布会 / `swiss` 瑞士海报 / `blueprint` 蓝图 / `sketch` 手绘白板(每幕生图,花云点多)。
3. 查 `ziliu_video_job`;`health` 里有「配音听起来是……」就请用户听一下那一场。

## C. 送去各视频平台

`ziliu_send_to_publish`(填进抖音 / 视频号 / B 站 / 快手等的发布页,不公开),后续同 `ziliu-publish` 第 4 步。发布成功后字流会自动在 B 站等平台发一条引流置顶评论。

## 其它

- 长视频挑精彩片段切竖版:`video:cutMoments` `{ "contentId": "..." }`。
- 导出剪映草稿给用户手动精修:`video:exportJianying`。
- 对标爆款拆结构做口播骨架:`video:skeletonAnalyze`。