contentstudio

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Install ContentStudio CLI if it doesn't exist

若未安装 ContentStudio CLI,请先安装

bash
npm install -g contentstudio-cli
bash
npm install -g contentstudio-cli

or

or

pnpm install -g contentstudio-cli

npm release: https://www.npmjs.com/package/contentstudio-cli
contentstudio-agent github: https://github.com/contentstudioio/contentstudio-agent
contentstudio API docs: https://api.contentstudio.io/api-docs
official website: https://contentstudio.io

---

| Property | Value |
|----------|-------|
| **name** | contentstudio |
| **description** | Social-media automation CLI for scheduling posts and managing media/accounts via the ContentStudio public API |
| **allowed-tools** | Bash(contentstudio:*) |

---
pnpm install -g contentstudio-cli

npm 发布地址: https://www.npmjs.com/package/contentstudio-cli
contentstudio-agent GitHub 地址: https://github.com/contentstudioio/contentstudio-agent
contentstudio API 文档: https://api.contentstudio.io/api-docs
官方网站: https://contentstudio.io

---

| 属性 | 值 |
|----------|-------|
| **name** | contentstudio |
| **description** | 基于 ContentStudio 公开 API 的社交媒体自动化 CLI,用于调度帖子及管理媒体/账户 |
| **allowed-tools** | Bash(contentstudio:*) |

---

⚠️ Authentication Required

⚠️ 需要身份验证

You MUST authenticate before running any contentstudio CLI command. All commands will fail without a valid API key.
Before doing anything else, check auth status:
bash
contentstudio auth:status
If
has_api_key
is
false
, ask the user for their ContentStudio API key. They can generate one from ContentStudio Dashboard → Settings → API Keys. Then:
bash
contentstudio auth:login --api-key cs_...
Then verify a workspace is selected:
bash
contentstudio --json workspaces:current
If
active_workspace_id
is
null
, list workspaces and ask the user to pick one:
bash
contentstudio --json workspaces:list
contentstudio workspaces:use <workspace_id>

在运行任何 contentstudio CLI 命令之前,必须完成身份验证。 没有有效的 API 密钥,所有命令都会执行失败。
在进行任何操作之前,先检查身份验证状态:
bash
contentstudio auth:status
如果
has_api_key
false
,请向用户索要其 ContentStudio API 密钥。用户可从 ContentStudio 控制台 → 设置 → API 密钥 生成密钥。然后执行:
bash
contentstudio auth:login --api-key cs_...
随后验证是否已选择工作区:
bash
contentstudio --json workspaces:current
如果
active_workspace_id
null
,列出所有工作区并让用户选择一个:
bash
contentstudio --json workspaces:list
contentstudio workspaces:use <workspace_id>

Invocation rules for agents

Agent 调用规则

  • Always pass
    --json
    before the subcommand
    for stable, parseable output.
  • Envelope shape:
    • Success:
      {"ok": true, "data": <payload>, "pagination"?: {...}}
    • Error:
      {"ok": false, "error": {"type": "<ErrorType>", "message": "...", "http_status": <int>, "hint": "..."}}
  • Exit codes are non-zero on error. Check both
    returncode
    and
    ok
    .
  • Parse stdout only — human messages go to stderr.
  • Before any mutating action (posts/comments/media), run it with
    --dry-run
    first to verify the payload is correct.
    --dry-run
    never touches the API.
  • 始终在子命令前传递
    --json
    参数
    ,以获得稳定、可解析的输出。
  • 返回格式:
    • 成功:
      {"ok": true, "data": <payload>, "pagination"?: {...}}
    • 错误:
      {"ok": false, "error": {"type": "<ErrorType>", "message": "...", "http_status": <int>, "hint": "..."}}
  • 错误时退出码非零。需同时检查
    returncode
    ok
    字段。
  • 仅解析标准输出(stdout) —— 面向人类的提示信息会输出到标准错误(stderr)。
  • 在执行任何变更操作(帖子/评论/媒体)之前,先添加
    --dry-run
    参数运行
    ,以验证请求内容是否正确。
    --dry-run
    不会调用 API。

Confirm the target workspace before mutating actions

执行变更操作前确认目标工作区

The CLI silently defaults to the active workspace (whatever was set by
workspaces:use
). That default is fine for read-only calls (
workspaces:list
,
accounts:list
,
posts:list
,
media:list
, etc.) — just use the active workspace.
But for any mutating action —
accounts:connect
,
accounts:add-bluesky
,
accounts:add-facebook-group
,
posts:create
,
posts:delete
,
posts:approve
,
posts:reject
,
comments:add
,
media:upload
— you MUST confirm the workspace with the user first, even if a workspace is already active. Don't assume the active workspace is the one they want to mutate.
Pattern:
  1. Run
    contentstudio --json workspaces:current
    to see what's active.
  2. Tell the user: "Your active workspace is
    <name>
    (
    <id>
    ). Do you want to connect/post/delete in this workspace, or a different one?"
  3. If they say a different one, run
    workspaces:list
    , let them pick, then either:
    • Run
      workspaces:use <id>
      to switch the default, or
    • Pass
      --workspace <id>
      on the single mutating call (preferred when it's a one-off — does not change the active workspace).
  4. Only then run the mutating command.
This is mandatory even when the user's request seems to imply the active workspace ("connect a Facebook page", "create a draft post") — they may have just switched contexts in their head and forgotten which workspace is active in the CLI.
CLI 会默认使用当前激活的工作区(即通过
workspaces:use
设置的工作区)。对于只读调用(
workspaces:list
accounts:list
posts:list
media:list
等),使用默认工作区即可。
但对于任何变更操作 ——
accounts:connect
accounts:add-bluesky
accounts:add-facebook-group
posts:create
posts:delete
posts:approve
posts:reject
comments:add
media:upload
—— 即使已有激活的工作区,也必须先与用户确认目标工作区。不要假设激活的工作区就是用户想要操作的工作区。
操作流程:
  1. 执行
    contentstudio --json workspaces:current
    查看当前激活的工作区。
  2. 告知用户:"您当前激活的工作区是
    <name>
    (
    <id>
    )。您是否要在此工作区中进行连接/发布/删除操作,还是切换到其他工作区?"
  3. 如果用户选择其他工作区,执行
    workspaces:list
    列出所有工作区,让用户选择,然后执行以下操作之一:
    • 执行
      workspaces:use <id>
      切换默认工作区,或
    • 在单次变更命令中传递
      --workspace <id>
      参数(适用于一次性操作,不会更改激活的工作区)。
  4. 之后再执行变更命令。
即使用户的请求看似指向激活的工作区(如"连接一个 Facebook 页面"、"创建一篇草稿帖子"),也必须执行此步骤 —— 用户可能刚切换了操作上下文,却忘记了 CLI 中当前激活的工作区。

Pagination — be proactive, don't silently truncate

分页处理 —— 主动处理,勿静默截断

All list commands return a
pagination
block
in JSON mode when more results exist than fit on one page:
json
{
  "ok": true,
  "data": [ /* current page of items */ ],
  "pagination": {
    "current_page": 1,
    "per_page": 10,
    "total": 48,
    "last_page": 5,
    "from": 1,
    "to": 10,
    "has_more": true
  }
}
Mandatory rule: Whenever
pagination.has_more === true
, the user has more data than what was returned. You MUST NOT silently treat the current page as "all results". Pick one of these three strategies:
  1. Ask the user (default for ambiguous requests):
    "I retrieved 10 of your 48 workspaces. Do you want me to fetch the rest, or is the first 10 enough for what you're doing?"
  2. Auto-paginate — if the user's request implies they want everything (e.g. "list ALL my accounts", "show every draft post", "delete all queued posts"):
    • Call again with
      --per-page <total>
      to get everything in one round-trip:
      bash
      contentstudio --json workspaces:list --per-page 48
    • Or iterate
      --page 2
      ,
      --page 3
      , …
      --page <last_page>
      if
      total
      is large (>200) and you want bounded pages.
  3. Filter, don't paginate — if the user asked for something specific (e.g. "Facebook accounts only"), use the relevant filter flag (
    --platform facebook
    ,
    --search "..."
    ,
    --status draft
    ) instead of paginating. Smaller result set = no pagination needed.
所有列表类命令在 JSON 模式下,当结果超过单页容量时,会返回
pagination
:
json
{
  "ok": true,
  "data": [ /* 当前页的内容 */ ],
  "pagination": {
    "current_page": 1,
    "per_page": 10,
    "total": 48,
    "last_page": 5,
    "from": 1,
    "to": 10,
    "has_more": true
  }
}
强制规则: 当
pagination.has_more === true
时,用户还有更多数据未返回。绝对不能将当前页视为"全部结果"。请选择以下三种策略之一:
  1. 询问用户(模糊请求的默认处理方式):
    "已获取您的 48 个工作区中的 10 个。是否需要获取剩余的工作区,还是这 10 个就满足您的需求?"
  2. 自动分页 —— 如果用户的请求明确表示需要全部数据(如"列出我所有的账户"、"显示所有草稿帖子"、"删除所有已排队的帖子"):
    • 使用
      --per-page <total>
      参数再次调用,一次性获取全部数据:
      bash
      contentstudio --json workspaces:list --per-page 48
    • 如果总数据量较大(>200),可通过迭代
      --page 2
      --page 3
      ……
      --page <last_page>
      参数来分批次获取。
  3. 过滤而非分页 —— 如果用户的请求有明确指向(如"仅列出 Facebook 账户"),使用相关过滤参数(
    --platform facebook
    --search "..."
    --status draft
    )代替分页。结果集越小,越不需要分页。

Quick decision tree for the agent

Agent 快速决策树

Did the user say "all" / "every" / "complete list" / "every single"?
  → YES: auto-paginate using --per-page <pagination.total>
  → NO:
      Did the user give a specific count? ("show me top 5", "first 20 posts")
        → YES: respect that count; use --per-page accordingly
        → NO:
            pagination.has_more === true?
              → YES: ASK the user before assuming you have everything
              → NO: you have all the data; proceed
用户是否提到了"全部"/"所有"/"完整列表"/"每一个"?
  → 是: 使用 --per-page <pagination.total> 自动分页
  → 否:
      用户是否指定了数量?(如"显示前5个"、"前20篇帖子")
        → 是: 遵循指定数量;相应设置 --per-page 参数
        → 否:
            pagination.has_more === true?
              → 是: 在假设获取全部数据前询问用户
              → 否: 已获取全部数据;继续操作

Examples

示例

User: "list my workspaces" Agent should:
  1. Run
    contentstudio --json workspaces:list --per-page 50
    (high default to often avoid pagination)
  2. If
    pagination.has_more
    is still true, say: "I see 50 of N workspaces. Want me to fetch all N?"
User: "delete all my draft posts" Agent should:
  1. Run
    contentstudio --json posts:list --status draft --per-page 1
    to peek at
    total
  2. Run
    contentstudio --json posts:list --status draft --per-page <total>
    to get them all
  3. Iterate over
    data[]
    and delete each
  4. Never delete just the first page and report "done"
User: "show me my Facebook accounts" Agent should:
  1. Use
    --platform facebook
    filter — usually returns 0 or a handful, no pagination concern
  2. If
    has_more
    still true (>20 FB accounts), ask before auto-fetching
用户: "列出我的工作区" Agent 应:
  1. 执行
    contentstudio --json workspaces:list --per-page 50
    (设置较高的默认值以避免分页)
  2. 如果
    pagination.has_more
    仍为 true,告知用户:"我看到您有 N 个工作区,已获取其中 50 个。是否需要获取全部 N 个?"
用户: "删除我所有的草稿帖子" Agent 应:
  1. 执行
    contentstudio --json posts:list --status draft --per-page 1
    查看总数量
  2. 执行
    contentstudio --json posts:list --status draft --per-page <total>
    获取所有草稿帖子
  3. 遍历
    data[]
    并逐个删除
  4. 绝对不能只删除第一页就报告"已完成"
用户: "显示我的 Facebook 账户" Agent 应:
  1. 使用
    --platform facebook
    过滤参数 —— 通常返回0个或少量结果,无需担心分页问题
  2. 如果
    has_more
    仍为 true(超过20个 Facebook 账户),在自动获取前询问用户

Endpoints that paginate

支持分页的端点

All
*:list
commands paginate:
workspaces:list
,
accounts:list
,
posts:list
,
comments:list
,
media:list
,
campaigns:list
,
categories:list
,
labels:list
,
team:list
.
Non-list commands (
auth:whoami
,
posts:create
,
posts:delete
,
media:upload
, etc.) never include
pagination
in their envelope.

所有
*:list
命令均支持分页:
workspaces:list
,
accounts:list
,
posts:list
,
comments:list
,
media:list
,
campaigns:list
,
categories:list
,
labels:list
,
team:list
.
非列表类命令(
auth:whoami
posts:create
posts:delete
media:upload
等)的返回结果中永远不会包含
pagination
块。

Command Reference

命令参考

All commands are invoked as
contentstudio <group>:<command>
.
所有命令均以
contentstudio <group>:<command>
的形式调用。

Authentication

身份验证

CommandPurpose
auth:login --api-key cs_...
Store and verify API key
auth:logout
Forget stored credentials
auth:whoami
Hit
/me
and return user info
auth:status
Show local config (key redacted)
命令用途
auth:login --api-key cs_...
存储并验证 API 密钥
auth:logout
清除存储的凭证
auth:whoami
调用
/me
接口并返回用户信息
auth:status
显示本地配置(密钥已脱敏)

Workspaces

工作区

CommandPurpose
workspaces:list
List user's workspaces
workspaces:use <id>
Set active workspace
workspaces:current
Show active workspace
命令用途
workspaces:list
列出用户的所有工作区
workspaces:use <id>
设置激活的工作区
workspaces:current
显示当前激活的工作区

Social accounts (read + connect)

社交账户(查看 + 连接)

CommandPurpose
accounts:list [--platform <p>] [--search <q>]
List connected social accounts
platforms:list
List platforms supported for new account connections
accounts:connect <platform>
Generate a one-time OAuth URL to connect a new account
accounts:connect <platform> --reconnect --account-id <id>
Refresh an expired/invalid account
accounts:add-bluesky --handle <h> --app-password <p>
Connect a Bluesky account (no browser — uses app password)
accounts:add-facebook-group --name <n> [--image <url>]
Manually add a Facebook Group connection
--platform
values for
accounts:list
filter:
facebook
,
linkedin
,
twitter
,
instagram
,
youtube
,
tiktok
,
pinterest
,
gmb
.
<platform>
values for
accounts:connect
:
facebook
,
facebook-profile
,
instagram
,
instagram-via-facebook
,
twitter
,
linkedin
,
pinterest
,
tiktok
,
youtube
,
threads
,
gmb
,
tumblr
.
Account-connection flow for AI agents:
  1. Run
    platforms:list
    to see what's supported and which method each uses (
    oauth
    /
    credentials
    /
    manual
    ).
  2. For OAuth platforms (most), call
    accounts:connect <platform>
    and surface the returned URL to the user — they open it in their browser to authorize. The CLI itself never handles credentials.
  3. For Bluesky, ask the user for their handle + app-password (link them to https://bsky.app/settings/app-passwords) and call
    accounts:add-bluesky
    .
  4. For Facebook Groups, just call
    accounts:add-facebook-group --name "..."
    .
命令用途
accounts:list [--platform <p>] [--search <q>]
列出已连接的社交账户
platforms:list
列出支持连接新账户的平台
accounts:connect <platform>
生成一次性 OAuth 链接以连接新账户
accounts:connect <platform> --reconnect --account-id <id>
刷新过期/无效的账户
accounts:add-bluesky --handle <h> --app-password <p>
连接 Bluesky 账户(无需浏览器 —— 使用应用密码)
accounts:add-facebook-group --name <n> [--image <url>]
手动添加 Facebook 群组连接
accounts:list
命令的
--platform
过滤参数可选值:
facebook
,
linkedin
,
twitter
,
instagram
,
youtube
,
tiktok
,
pinterest
,
gmb
.
accounts:connect
命令的
<platform>
参数可选值:
facebook
,
facebook-profile
,
instagram
,
instagram-via-facebook
,
twitter
,
linkedin
,
pinterest
,
tiktok
,
youtube
,
threads
,
gmb
,
tumblr
.
AI Agent 账户连接流程:
  1. 执行
    platforms:list
    查看支持的平台及对应的连接方式(
    oauth
    /
    credentials
    /
    manual
    )。
  2. 对于 OAuth 平台(大多数),调用
    accounts:connect <platform>
    并将返回的链接提供给用户 —— 用户在浏览器中打开链接完成授权。CLI 本身不会处理凭证。
  3. 对于 Bluesky,向用户索要其用户名(handle)和应用密码(可引导用户访问 https://bsky.app/settings/app-passwords 获取),然后调用
    accounts:add-bluesky
  4. 对于 Facebook 群组,直接调用
    accounts:add-facebook-group --name "..."

Posts

帖子

CommandPurpose
posts:list [--status draft|scheduled|...] [--date-from] [--date-to]
List posts
posts:create -c "text" -i <account> -t <publish_type> [-s "YYYY-MM-DD HH:MM:SS"] [-m <image_url>]
Create a post (shortcut mode)
posts:create --body /path/to/body.json
Create a post with full JSON body
posts:delete <post_id> [--delete-from-social]
Delete a post
posts:approve <post_id> [--comment "..."]
Approve a pending post
posts:reject <post_id> [--comment "..."]
Reject a pending post
-t / --publish-type
values:
draft
,
scheduled
,
queued
,
content_category
.
命令用途
posts:list [--status draft|scheduled|...] [--date-from] [--date-to]
列出帖子
posts:create -c "text" -i <account> -t <publish_type> [-s "YYYY-MM-DD HH:MM:SS"] [-m <image_url>]
创建帖子(快捷模式)
posts:create --body /path/to/body.json
使用完整 JSON 内容创建帖子
posts:delete <post_id> [--delete-from-social]
删除帖子
posts:approve <post_id> [--comment "..."]
审批待处理的帖子
posts:reject <post_id> [--comment "..."]
驳回待处理的帖子
-t / --publish-type
参数可选值:
draft
,
scheduled
,
queued
,
content_category
.

Comments / Internal notes

评论 / 内部笔记

CommandPurpose
comments:list <post_id>
List comments on a post
comments:add <post_id> "message" [--note] [--mention <user_id>]
Add public comment or internal note
命令用途
comments:list <post_id>
列出帖子的评论
comments:add <post_id> "message" [--note] [--mention <user_id>]
添加公开评论或内部笔记

Media library

媒体库

CommandPurpose
media:list [--type images|videos] [--sort recent|...]
List media assets
media:upload --file <local_path>
Upload a local file
media:upload --url <external_url>
Import from external URL
命令用途
media:list [--type images|videos] [--sort recent|...]
列出媒体资源
media:upload --file <local_path>
上传本地文件
media:upload --url <external_url>
从外部 URL 导入媒体

Lookup tables

查找表

CommandPurpose
campaigns:list
List campaigns (folders)
categories:list
List content categories
labels:list
List labels
team:list
List workspace team members
命令用途
campaigns:list
列出营销活动(文件夹)
categories:list
列出内容分类
labels:list
列出标签
team:list
列出工作区团队成员

Facebook helpers

Facebook 辅助工具

CommandPurpose
facebook:text-backgrounds
List Facebook colored-background presets (use
id
as
facebook_options.facebook_background_id
on plain-text posts)

命令用途
facebook:text-backgrounds
列出 Facebook 彩色背景预设(纯文本帖子中可使用
id
作为
facebook_options.facebook_background_id
参数)

Examples

示例

Verify the stored key is valid

验证存储的密钥是否有效

bash
contentstudio --json auth:whoami
bash
contentstudio --json auth:whoami

→ {"ok": true, "data": {"_id": "...", "email": "...", "full_name": "..."}}

→ {"ok": true, "data": {"_id": "...", "email": "...", "full_name": "..."}}

undefined
undefined

Find a Facebook account to post to

查找用于发布的 Facebook 账户

bash
contentstudio --json accounts:list --platform facebook --per-page 10
bash
contentstudio --json accounts:list --platform facebook --per-page 10

Pick an _id, e.g. <account_id>

选择一个 _id,例如 <account_id>

undefined
undefined

Safely preview a post before creating it

创建帖子前安全预览

bash
contentstudio --json posts:create --dry-run \
  -c "Our new blog is live! https://example.com/post" \
  -i <account_id> \
  -t scheduled \
  -s "2026-05-01 10:00:00" \
  -m https://example.com/hero.jpg
bash
contentstudio --json posts:create --dry-run \
  -c "我们的新博客上线了!https://example.com/post" \
  -i <account_id> \
  -t scheduled \
  -s "2026-05-01 10:00:00" \
  -m https://example.com/hero.jpg

Returns: {"ok": true, "data": {"dry_run": true, "endpoint": "...", "body": {...}}}

返回: {"ok": true, "data": {"dry_run": true, "endpoint": "...", "body": {...}}}

undefined
undefined

Actually create the post (drop --dry-run)

实际创建帖子(移除 --dry-run 参数)

bash
contentstudio --json posts:create \
  -c "Our new blog is live!" \
  -i <account_id> \
  -t draft
bash
contentstudio --json posts:create \
  -c "我们的新博客上线了!" \
  -i <account_id> \
  -t draft

Create a post with a complex body (platform options, approval workflow)

使用复杂内容创建帖子(平台选项、审批流程)

Write a JSON body and pass via
--body
:
jsonc
{
  "content": {
    "text": "Hello world",
    "media": {"images": ["https://example.com/img.jpg"]}
  },
  "accounts": ["<account_id>"],
  "scheduling": {
    "publish_type": "scheduled",
    "scheduled_at": "2026-05-01 10:00:00"
  },
  "first_comment": {"message": "🔗 link in bio", "accounts": ["<account_id>"]},
  "labels": ["<label_id>"],
  "campaign_id": "<campaign_id>",
  "approval": {
    "approvers": ["<user_id>"],
    "approve_option": "anyone",
    "notes": "please review"
  }
}
bash
contentstudio --json posts:create --body /tmp/post.json
编写 JSON 内容并通过
--body
参数传递:
jsonc
{
  "content": {
    "text": "Hello world",
    "media": {"images": ["https://example.com/img.jpg"]}
  },
  "accounts": ["<account_id>"],
  "scheduling": {
    "publish_type": "scheduled",
    "scheduled_at": "2026-05-01 10:00:00"
  },
  "first_comment": {"message": "🔗 链接在简介中", "accounts": ["<account_id>"]},
  "labels": ["<label_id>"],
  "campaign_id": "<campaign_id>",
  "approval": {
    "approvers": ["<user_id>"],
    "approve_option": "anyone",
    "notes": "请审核"
  }
}
bash
contentstudio --json posts:create --body /tmp/post.json

List recent draft posts

列出最近的草稿帖子

bash
contentstudio --json posts:list --status draft --per-page 5
bash
contentstudio --json posts:list --status draft --per-page 5

Delete a post (and from social)

删除帖子(同时从社交平台删除)

bash
contentstudio --json posts:delete <post_id> --delete-from-social
bash
contentstudio --json posts:delete <post_id> --delete-from-social

Add an internal note on a post (private)

在帖子上添加内部笔记(私密)

bash
contentstudio --json comments:add <post_id> "Double-check the link" --note
bash
contentstudio --json comments:add <post_id> "请检查链接" --note

Override workspace for a single call

为单次调用覆盖工作区

bash
contentstudio --json --workspace <other_ws_id> posts:list --per-page 3

bash
contentstudio --json --workspace <other_ws_id> posts:list --per-page 3

Error handling

错误处理

error.type
http_status
Typical hint
AuthError
401, 403Run
auth:login
with a valid key.
NotFoundError
404The resource doesn't exist or isn't in this workspace.
ValidationError
422Flattened Laravel-style field errors from the API.
RateLimitError
429Wait a moment and retry.
BackendError
5xx or networkRetry after a short backoff.
ConfigError
— (local)Missing API key / workspace; run
auth:login
or pass flags.

error.type
http_status
典型提示
AuthError
401, 403使用有效的密钥执行
auth:login
NotFoundError
404资源不存在或不在当前工作区中。
ValidationError
422API 返回的 Laravel 风格字段错误信息。
RateLimitError
429稍等片刻后重试。
BackendError
5xx 或网络错误短暂等待后重试。
ConfigError
—(本地错误)缺少 API 密钥/工作区;执行
auth:login
或传递相应参数。

When NOT to use this skill

何时不应使用此技能

  • The user is asking about running their own ContentStudio backend (Laravel source); this CLI only talks to the deployed API.
  • Tasks not exposed by the v1 API (e.g., billing changes, first-time social account connection — those happen in the ContentStudio web UI).

  • 用户询问的是自行部署 ContentStudio 后端(Laravel 源码)相关问题;此 CLI 仅与已部署的 API 交互。
  • v1 API 未暴露的任务(如账单变更、首次社交账户连接 —— 这些操作需在 ContentStudio 网页端完成)。

Version

版本

1.0.0
1.0.0