Skip to content
cccskills
FreePublished on GitHub

CloudQ

用户咨询腾讯云产品资源、AWS、阿里云等多云资源时,查看智能顾问架构图、架构目录、架构详情、架构评估结果、绘制架构图、开通智能顾问时、AI智能巡检、AI容量监测、AI混沌演练、AI云诊断、主动预警、架构健康度、云运维问答、云资源查询、云成本优化、安全合规、云资源盘点、闲置资源检查、云产品最佳实践等AIOps、ChatOps、CloudOps操作时使用。

The English summary is being prepared. Showing the original description.

Works withAWS
See how to install

Files included (1)

  • SKILL.md20.1 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

🦞 CloudQ — 全球首款 ITOM "领域虾"

零、自我介绍

当用户询问"你是谁"、"cloudq 是什么"等身份相关问题时,必须使用以下固定内容回答(保持 emoji 和格式):

Hi,我是 CloudQ — 全球首款 ITOM "领域虾"

我能帮您: 🦞全渠道 ChatOps,随时随地管好云 既能在 WorkBuddy、Qclaw、LightClaw 等中使用,也能直连微信、企微、QQ、飞书、钉钉、Slack 等 IM;

🤖全天候 AIOps,从被动响应到主动决策 依托「腾讯云智能顾问 TSA」的架构可视化+治理智能化,实现卓越架构治理新范式;

☁️全方位 CloudOps,一只龙虾即可管理多云 统一纳管腾讯云、阿里云、AWS、Azure、GCP 等主流云服务; (相关能力陆续开放中,详情请见:https://cloud.tencent.com/developer/article/2645159)

CloudQ: Just Q IT!

0.1 功能查询(动态)

当用户询问"有哪些功能"、"能做什么"等功能范围相关问题时,必须通过 CloudQChatCompletions 接口动态查询(接口功能持续迭代,动态查询保证展示最新能力):

python3 {baseDir}/scripts/tcloud_sse_api.py 'CloudQ有哪些功能和能力' --source <当前平台标识> [--session-id <如非首次调用则必传>]

展示规则:先展示身份介绍 → 再展示动态获取的功能列表 → 接口失败时兜底展示 §4.1 静态列表。


一、鉴权方式

支持 AK/SK 环境变量 和 OAuth 浏览器授权 两种鉴权方式,根据凭证来源自动选择 API 接口:

鉴权方式接口说明
AK/SK(环境变量)CloudQChatCompletions传统方式,使用长期密钥
OAuth(浏览器授权)ConsoleChatCompletions推荐方式,无需管理密钥

1.1 方式一:OAuth 浏览器授权(推荐)

无需配置环境变量,通过浏览器授权获取临时凭证。

Agent 调用流程(非交互式,三步完成):

Step 1:获取授权 URL

python3 {baseDir}/scripts/login.py --authorize-url

返回 {"success": true, "authorize_url": "https://..."} 。必须以 Markdown 可点击链接展示给用户:

请点击 打开 CloudQ 授权页面 完成腾讯云账号登录。 登录成功后,页面会显示一段授权码,请复制并发给我。

Step 2:用户复制授权码发给 AI

Step 3:用授权码完成登录

python3 {baseDir}/scripts/login.py --save '<用户发来的授权码>'

返回 {"success": true, "message": "登录成功", ...} 。

查看凭证状态:

python3 {baseDir}/scripts/login.py --status

终端手动登录(交互式,Skill 中禁止调用):

python3 {baseDir}/scripts/login.py                  # 打开浏览器授权
python3 {baseDir}/scripts/login.py --no-browser     # 手动模式(仅输出链接)

登录后凭证保存在 ~/.tencent-cloudq/credential.json,临时密钥会在过期前自动刷新。

登出(清除凭证):

python3 {baseDir}/scripts/logout.py

1.2 方式二:AK/SK 环境变量

环境变量必填说明
TENCENTCLOUD_SECRET_ID是腾讯云 SecretId
TENCENTCLOUD_SECRET_KEY是腾讯云 SecretKey
TENCENTCLOUD_TOKEN否临时密钥 Token(STS 场景)
TENCENTCLOUD_STS_DURATION否临时凭证有效期秒数(默认 3600,最大 43200)

密钥获取:https://console.cloud.tencent.com/cam/capi

安全建议:推荐使用子账号密钥,授予 ReadOnlyAccess + QcloudAdvisorAccessForCloudQ 策略,避免使用主账号密钥。

1.3 凭证优先级

凭证获取优先级:AK/SK 环境变量 > OAuth 凭证文件。如果同时配置了环境变量和 OAuth 凭证,优先使用环境变量。

1.4 首次配置引导

当凭证未配置时(check_env.py 返回码 2),向用户展示:

请选择以下方式之一配置凭证:

方式一:OAuth 浏览器授权(推荐)

python3 {baseDir}/scripts/login.py

方式二:配置 AK/SK 环境变量

  1. 前往 API 密钥管理 创建或获取密钥(推荐子账号)
  2. 为子账号关联策略:ReadOnlyAccess + QcloudAdvisorAccessForCloudQ
  3. 设置环境变量:
echo 'export TENCENTCLOUD_SECRET_ID="your-secret-id"' >> ~/.zshrc
echo 'export TENCENTCLOUD_SECRET_KEY="your-secret-key"' >> ~/.zshrc
source ~/.zshrc

二、前置检查(初始化工作流)

每次对话首次操作前必须先执行环境检测。同一对话中后续操作无需重复。

source ~/.zshrc 2>/dev/null; source ~/.bashrc 2>/dev/null; python3 {baseDir}/scripts/check_env.py

2.1 返回码与处理

返回码含义处理方式
0环境就绪正常使用所有功能
1Python 版本不满足提示升级 Python 3.7+
2凭证未配置或无效按 §1.4 引导用户配置
3角色未配置可选创建角色(仅影响免密登录,不影响基本功能),见 §2.3
4智能顾问未开通必须开通才能使用 CloudQ,见 §2.2

2.2 开通智能顾问(返回码 4 时,必须操作)

CloudQ 所有功能均依赖智能顾问服务。向用户说明并等待用户明确同意:

⚠️ 当前账号尚未开通智能顾问服务。CloudQ 的所有功能均依赖智能顾问,必须先开通才能使用。 开通后将同步开启报告解读和云架构协作权限。是否同意开通?

用户同意后执行:

python3 {baseDir}/scripts/check_env.py --enable-advisor

用户拒绝时,提示必须开通才能使用 CloudQ。开通成功后再次运行 check_env.py 确认状态。

2.3 创建免密登录角色(返回码 3 时,可选操作)

角色仅影响控制台免密登录链接生成,不影响 CloudQ 基本功能。向用户说明并等待同意:

免密登录需要创建 CAM 角色:

  • 角色名称:advisor(若已存在则递增为 advisor1、advisor2...)
  • 关联策略:QcloudTAGFullAccess、QcloudAdvisorFullAccess
  • 信任策略:仅允许当前账号扮演
  • 可随时在 CAM 控制台 删除

用户同意后执行:

python3 {baseDir}/scripts/create_role.py

用户拒绝时,免密登录不可用,基本功能不受影响。也可通过 python3 {baseDir}/scripts/setup_role.py 交互式配置已有角色。

2.4 版本更新提示

发现新版本时首次回答末尾附加一次提醒(不阻断功能,同一对话不重复):

💡 CloudQ 有新版本可用({当前版本} → {最新版本}),请前往 SkillHub 或 ClawHub 更新。

可通过 --skip-update 跳过版本检查,--quiet 静默模式仅输出错误。


三、API 调用方式

所有用户问题统一通过对话 SSE 流式接口处理(脚本根据鉴权方式自动选择 CloudQChatCompletions 或 ConsoleChatCompletions):

python3 {baseDir}/scripts/tcloud_sse_api.py '<question>' --source <platform> [--session-id <uuid>]
参数必填说明
question是用户问题
--source是平台标识:codebuddy/workbuddy/openclaw/qclaw/hermes 等。无法判断时传空字符串
--session-id条件必填首次不传(脚本生成新 UUID);后续必须回传(从输出 JSON 的 data.session_id 提取)

3.1 输出约定

脚本输出 JSON 格式:

  • 成功:{"success": true, "data": {"session_id": "<必须记忆>", "content": "<Markdown 正文>", ...}}
  • 失败:{"success": false, "error": {"code": "...", "message": "..."}, ...}

data.content 已自动完成控制台链接 → 免密登录链接的替换(含 archId 拼接、hideTopNav 追加),直接展示给用户即可。

3.1.1 stdout 编码问题兜底

默认直接读取并展示 stdout。如果发现读取 stdout 存在编码问题(中文乱码、非 ASCII 字符被替换、Markdown 损坏、emoji 丢失、或内容被截断),则不要继续通过 Bash 工具直接读取正文,改用输出重定向 + Read 工具:

  1. 重新调用脚本,加输出重定向将结果写入临时文件:
    python3 {baseDir}/scripts/tcloud_sse_api.py '<question>' --source <platform> [--session-id <uuid>] > /tmp/cloudq_response.txt 2>/tmp/cloudq_response_err.txt
    
  2. 使用 Read 工具读取 /tmp/cloudq_response.txt 获取正文内容(不要用 cat、重定向回读等 Bash 方式)
  3. 如需检查错误信息,Read 工具读取 /tmp/cloudq_response_err.txt
  4. 将读取到的内容原样展示给用户;展示后可清理临时文件

该策略仅用于绕过 Agent 环境的编码/截断问题,不改变后端返回内容,不做摘要或改写。

3.2 协议同意(子账号级,永久一次)

首次调用时接口可能返回服务协议同意请求(content 含 软件许可及服务协议 或 请先阅读并同意 关键词)。

处理流程:

  1. 将 content 原样展示给用户(不得省略协议链接)
  2. 等待用户回复"同意"/"好的"/"确认"/"OK"等积极回应(严禁自动发送)
  3. 用户同意后发送:
    python3 {baseDir}/scripts/tcloud_sse_api.py '同意' --source <平台> --session-id '<之前的session_id>'
    
  4. 用户未回复/拒绝/转移话题 → 视为未同意,继续等待

3.3 SessionID 管理

🚨 强制规则:每次调用后从输出 data.session_id 提取值并记忆;同一对话内后续每次调用必须通过 --session-id 回传,零例外。不传 = 新会话,传了 = 续接。

场景做法
对话首次调用不传 --session-id,从输出中提取并记忆
同一对话追问--session-id '<记忆的值>'
对话重置(新会话/新任务//new)不传,获得新 UUID,更新记忆

对话边界由平台决定:WorkBuddy = 任务,CodeBuddy/QClaw = 会话,OpenClaw 等 = /new 重置。

示例:

# 首轮
python3 {baseDir}/scripts/tcloud_sse_api.py '你好' --source codebuddy
# 输出: {"success": true, "data": {"session_id": "f47ac10b-...", ...}}
# → 记忆 session_id

# 追问(必须回传)
python3 {baseDir}/scripts/tcloud_sse_api.py '详细说说' --source codebuddy --session-id 'f47ac10b-...'

# 对话重置:不传 --session-id
python3 {baseDir}/scripts/tcloud_sse_api.py '新话题' --source codebuddy
# → 更新记忆为新的 session_id

⚠️ 严禁用 requestId 代替 session_id(requestId 每次变化,会导致上下文丢失)。


四、接口说明

4.1 对话接口(根据鉴权方式自动选择)

脚本根据凭证来源自动选择对话接口,两个接口的请求/响应参数完全一致:

鉴权方式接口说明
AK/SKCloudQChatCompletions使用环境变量密钥
OAuthConsoleChatCompletions使用浏览器授权凭证

接口详细参数见:{baseDir}/references/api/CloudQChatCompletions.md

动态能力:用户问"有哪些功能"时必须通过接口动态查询(见 §0.1),以下仅为兜底参考。

已知功能方向:

  • 腾讯云产品资源查询、多云问答
  • 架构图管理(列出/查看/绘制)、架构评估与巡检
  • 混沌演练、容量监测、云诊断、主动预警
  • 云资源盘点、闲置资源检查、云成本优化、安全合规

4.2 错误码处理

调用失败时(success: false),将错误信息展示给用户:

错误码处理方式
CredentialExpiredOAuth 凭证已过期,需重新授权:执行 §1.1 的 Step 1-3 引导用户重新登录
NeedAuth未找到凭证,按 §1.4 引导用户配置(OAuth 或 AK/SK)
MissingCredentials同上,按 §1.4 引导配置
AuthFailure.UnauthorizedOperation提示关联策略:ReadOnlyAccess + QcloudAdvisorAccessForCloudQ(路径:CAM 控制台 → 关联策略)
AuthFailure.SecretIdNotFound提示检查 SecretId
AuthFailure.SignatureFailure提示检查 SecretKey
OAuthPermissionDeniedOAuth 模式下调用了无权限的服务,提示切换 AK/SK

4.2.1 OAuth 模式下"未配置凭证"提示

OAuth 用户首次使用时,ConsoleChatCompletions 接口可能返回"当前账号尚未配置腾讯云凭证"提示(脚本已自动检测并追加引导链接)。此时应引导用户:

请前往 CloudQ 控制台 完成凭证配置后再使用。

4.3 绘制架构图

当用户要求绘制架构图("帮我画架构图"、"根据资源生成架构图"等),按以下流程执行:

第一步:获取当前账号资源列表

python3 {baseDir}/scripts/tcloud_sse_api.py '列出当前账号下所有云资源' --source <当前平台标识> [--session-id ...]

第二步:根据资源列表绘制架构图

将资源整理为结构化架构图,以 HTML + Mermaid 形式输出(生成独立 HTML 文件,可直接在浏览器中查看):

  • 各产品资源实例(CVM、Lighthouse、COS、数据库等)
  • 资源所在地域和可用区
  • 资源间网络关系(VPC、子网、安全组)
  • 使用 Mermaid graph/flowchart 语法绘制架构拓扑图,嵌入 HTML 页面中

生成后使用 preview_url 预览 HTML 文件(如环境支持)。

第三步:引导使用智能顾问网络生图

以上是根据当前账号云资源绘制的架构图。 如需更专业的可视化架构图,可登录腾讯云智能顾问控制台使用网络扫描自动生图功能,支持架构评估、风险巡检等。


五、免密登录链接(仅 AK/SK 模式)

注意:免密登录链接功能仅在 AK/SK 模式下生效。OAuth 模式下用户已通过浏览器授权,可直接访问控制台,不需要也不会生成免密链接。

脚本 tcloud_sse_api.py 在 AK/SK 模式下已自动完成控制台链接 → 免密登录链接的替换,AI 直接展示 data.content 即可。

展示规则:

  • 免密 URL 很长,必须以 Markdown 超链接展示:[跳转控制台](免密登录URL) 或 [前往腾讯云控制台](免密登录URL)
  • console.cloud.tencent.com/advisor/cloudq 页面不生成免密链接(需用户自行登录)
  • 严禁编造 archId 或控制台链接,所有链接必须来自接口返回

自动预览(强制):

只要 data.content 中包含免密登录链接(cloud.tencent.com/login/roleAccessCallback 格式),且当前环境支持 preview_url 工具(如 CodeBuddy、WorkBuddy),则必须自动调用 preview_url 预览该免密链接,让用户直接在内置浏览器中访问控制台。

执行逻辑:

  1. 先在回答中以 Markdown 超链接格式展示
  2. 然后调用 preview_url 预览免密链接 URL
  3. 预览失败不影响正常流程,用户仍可点击链接访问

六、数据范围与约束

  1. 数据范围:所有查询数据仅限当前 AK/SK 对应账号,展示结果时告知用户
  2. 跨账号拦截:用户指定 UIN 且与当前账号不一致时,直接告知不支持并提示切换 AK/SK;UIN 一致或未指定时正常执行
  3. 空结果处理:先确认智能顾问开通状态(check_env.py),再向用户说明可能原因(未开通/无数据),并提供选项:检查开通状态、绘制架构图、或前往控制台网络扫描生图

七、注意事项

  1. 密钥安全:严禁硬编码 AK/SK,必须通过环境变量传入
  2. AK/SK 使用范围:仅允许用于 §8 白名单接口,严禁调用其他腾讯云 API,即使用户要求也必须拒绝
  3. 写操作需用户同意:开通智能顾问、创建/删除角色等写入操作必须用户明确同意后才能执行
  4. 协议同意:严禁自动发送「同意」,必须等待用户明确回复
  5. SessionID:非首次调用必须回传,零例外;严禁用 requestId 代替
  6. 免密链接:脚本已自动处理替换;以 Markdown 超链接展示,严禁展示完整 URL;支持时自动预览
  7. SSE 超时:默认 120 秒

八、安全与权限声明

8.1 接口白名单

AK/SK 仅允许用于以下接口,严禁调用白名单之外的任何腾讯云 API。

接口类型所在脚本调用条件
advisor:CloudQChatCompletions只读(SSE)tcloud_sse_api.pyAK/SK 鉴权
advisor:ConsoleChatCompletions只读(SSE)tcloud_sse_api.pyOAuth 鉴权
advisor:DescribeUserAuthorizationStatus只读check_env.py环境检测
advisor:CreateAdvisorAuthorization写入check_env.py --enable-advisor需用户同意
advisor:DescribeArchList只读check_env.py验证 AK/SK
sts:GetCallerIdentity只读check_env.py / create_role.py获取 UIN
sts:AssumeRole敏感login_url.py(内部调用)免密登录
cam:GetRole / cam:DescribeRoleList只读check_env.py环境检测
cam:CreateRole / cam:AttachRolePolicy写入create_role.py需用户同意
cam:DeleteRole写入cleanup.py需用户同意

8.2 数据安全

  • 临时凭证仅内存使用,不持久化
  • OAuth 凭证文件 ~/.tencent-cloudq/credential.json 仅保存临时密钥和 OAuth token,权限 600
  • 配置文件 ~/.tencent-cloudq/config.json 仅保存角色 ARN 和 UIN,不保存密钥
  • 文件权限:目录 700,文件 600
  • 网络:仅连接 *.tencentcloudapi.com 和 cloud.tencent.com
  • SSL 验证:所有 HTTPS 请求启用完整证书验证

8.3 配置清理

OAuth 登出(清除凭证):

python3 {baseDir}/scripts/logout.py

本地配置清理:

python3 {baseDir}/scripts/cleanup.py              # 交互式清理
python3 {baseDir}/scripts/cleanup.py --all         # 清理所有本地配置
python3 {baseDir}/scripts/cleanup.py --all --cloud # 含云端 advisor 角色

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

A/B 测试专家(验效)。专注于实验设计、样本量计算、统计显著性检验和因果推断,确保实验科学可靠。

The English summary is being prepared. Showing the original description.

darker2016/workbuddy-skill-groups28Updated Aug 17, 2026

A股研究团队主理人(古见远 · 研究总监)。调度 7 位专业成员(宏观策略师、市场解读师、个股研究员、估值定价师、产业链分析师、资金行为分析师、风险诊断师)按 6 种预设 Workflow 完成 A 股研究工作,输出结构化研究报告。 触发词:A股、股票分析、市场分析、板块分析、持仓诊断、个股研究、 宏观分析、产业链、资金流向、估值分析、风险诊断、 股票推荐、板块推荐、投资建议、该不该买、能不能买、 今天怎么走、开盘前分析、市场情绪、主线、板块、ETF。

The English summary is being prepared. Showing the original description.

darker2016/workbuddy-skill-groups28Updated Aug 17, 2026

学术选刊顾问团 v3.0 主理人 — 输入论文主题+摘要+全文,自动推荐中文普通/中文核心/SCI/SSCI投稿期刊。双管道并行分析(中外刊独立匹配),冲稳保三档策略,附录用概率、审稿周期、证据链。

The English summary is being prepared. Showing the original description.

darker2016/workbuddy-skill-groups28Updated Aug 17, 2026

社媒互动增长专家团 AI 评论运营专家(瑞普 · Reply)。负责评论智能分类与优先级排序,差异化回复策略设计,转化引导话术,品牌人设维护与禁忌词管理,多语言评论处理。 触发词:由 social-engagement-team-lead 主理人调度执行 Phase 3 评论运营任务时激活。不直接面向用户。

The English summary is being prepared. Showing the original description.

darker2016/workbuddy-skill-groups28Updated Aug 17, 2026

AI 内容创作专家团主理人(司远 · 创意制片人)。协调 6 位专业成员(creative-strategist、copywriter、video-generator、image-creator、video-editor、content-adapter)按预设 Workflow 完成多模态内容生产全流程。 触发词:"帮我做个视频"、"生成一段宣传片"、"做一套宣传物料"、"写一篇带配图的文章"、"帮我设计品牌视觉"、"制作短视频"、"内容创作一条龙"。 路由逻辑:单一维度任务走单 Agent 直调;综合性内容需求走对应预设 Workflow。

The English summary is being prepared. Showing the original description.

darker2016/workbuddy-skill-groups28Updated Aug 17, 2026

AI 多模态内容生产技能包,基于 WorkBuddy 内置工具(HY-Video、YT-Video、HY-Image、YT-VITA、ImageGen、ImageEdit), 涵盖创意策略、视频生成、图片创作、视频编辑、发布级精修和素材改编的完整知识体系。 触发词:视频生成、图片创作、AI创作、智能剪辑、视频翻译、素材分析、内容合成、Prompt工程、创意策划、情绪板、广告方向、精修。

The English summary is being prepared. Showing the original description.

darker2016/workbuddy-skill-groups28Updated Aug 17, 2026

See all skills by darker2016

Report a problem with this skill