Communitygithub.com

thisuxhq/dunsocial-skills

编程代理的 DunSocial CLI 技能——用于安排和发布社交媒体帖子。

dunsocial-skills 是什么?

该技能为 AI 编程代理(如 Claude Code、Cursor、Codex 等)提供了与 DunSocial CLI 交互的能力,允许代理通过命令行安排和发布社交媒体帖子。它支持与本地终端、CI 环境以及远程主机(如 ChatGPT Web、Claude Web)配合使用,对于远程主机需通过 MCP 集成。技能涵盖了完整的设置流程(认证、选工作区、验证、列账户、执行操作),并详细说明了 PAT 令牌、交互式认证与无头认证两种方式。核心操作包括帖子排期、即时发布、媒体上传、草稿管理、记忆存储与搜索、以及线程型帖子的创建。该技能还强调错误处理(提供清晰的退出码和 JSON 错误输出)和常见陷阱(如必须指定工作区、使用 DunSocial 内部账户 ID 而非社交媒体用户名等),确保代理能够可靠地自动化社交媒体发布任务。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add thisuxhq/dunsocial-skills

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

DunSocial CLI

使用 npm 包 dunsocial 中的 dun 二进制文件。

npm install -g dunsocial
npx dunsocial …

建议在每个命令上使用 --json 以便输出为机器可解析格式。

远程主机(ChatGPT 网页版、Claude 网页版)仍使用 DunSocial MCP。此 CLI 适用于本地代理、终端和 CI。

环境变量可覆盖 ~/.config/dunsocial/config.json。

设置

始终:认证 → 选择工作区 → 验证 → 列出账户 → 执行操作。

不要自行发明社交账户 ID。不要将 drafts create 视为成功发布。

交互式认证

在浏览器中批准 app.dunsocial.com/cli/authorize:

dun auth login

无头认证(CI)

在应用中的 设置 → CLI 创建一个 PAT(dun_pat_…),然后:

export DUN_TOKEN="dun_pat_…"
export DUN_API_URL=https://api.dunsocial.com

DUN_API_URL 可选(默认为生产环境)。

PAT 规则:

  • 绑定到单个工作区;缺少作用域 → 退出代码 3 / 禁止访问
  • 不能管理其他令牌、计费或团队
  • 在 CI 中优先使用 PAT 而非浏览器会话令牌

工作区

交互式:

dun workspace list --json
dun workspace use <id-or-slug> --json

无头(使用 PAT 时必须):

export DUN_WORKSPACE_ID="…"

验证

dun auth status --json
dun workspace current --json

发现顺序

  1. dun auth status --json
  2. dun workspace current --json(或 list + use)
  3. dun accounts list --json — 捕获社交账户 id
  4. 执行操作(排期/发布/草稿/媒体/记忆)

排期帖子

dun posts schedule \
  --text "从 DunSocial CLI 发布。" \
  --accounts acc_x,acc_li \
  --in 1h \
  --json

绝对时间:--at 2026-06-01T09:00:00Z。

立即发布

dun posts publish --text "来自 dun 的问候" --accounts acc_x --json

媒体

先上传,然后附加返回的资源 ID:

dun media upload ./shot.png --alt "产品截图" --json
dun posts schedule --text "…" --accounts acc_x --media <assetId> --in 30m --json

草稿、记忆、线程

dun drafts create --text "进行中" --platforms x,linkedin --json
dun memory collections list --json
dun memory save --collection <id> --text "…" --json
dun memory search --prompt "…" --collections <id> --json

线程文件格式:[{"content":"1"},{"content":"2"}]

dun posts schedule-thread --account acc_x --file ./thread.json --in 2h --json

破坏性操作

删除操作需要 --yes(或 CI=1)。

退出码

代码含义
0成功
1用法错误
2认证错误
3禁止访问/缺少作用域
4校验错误
5未找到
6速率限制
7网络错误

失败 JSON:

{
  "ok": false,
  "error": {
    "code": "validation",
    "message": "…",
    "details": null
  }
}

常见陷阱

  • 需要指定工作区:workspace use、--workspace 或 DUN_WORKSPACE_ID
  • --accounts 参数需要 DunSocial 社交账户 id,而非用户名
  • 上传本地文件前先用 media upload 上传
  • 平台特定选项:必要时使用 --meta '{"reddit":{…}}'
  • MCP OAuth 和 CLI 令牌是不同的系统

帮助

dun --help
dun posts --help

相关技能