
qwencloud-observe
Report the health, performance, resource status, and actual billed cost of an application deployed by qwencloud-deploy to Alibaba Cloud International (alibabacloud.com), in plain language and without opening the console. Reads the local .qwencloud-deploy state file to identify the app and its ECS (and optional RDS MySQL) resources, then queries read-only cloud APIs to summarize application availability, ECS/RDS performance, and USD cost. Use when: the user asks how their deployed app is doing, wants a health/performance/cost overview, asks about CPU/memory/connections/slow SQL risk, or asks the monthly cost of a qwencloud-deployed app. Do not use when: no .qwencloud-deploy state file exists, the target is Aliyun China (use qianwenai-observe), or the user wants to change/recover resources (use qwencloud-operate).
- Installs
- 191
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/qwencloud/qwencloud-deploy --skill qwencloud-observe- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads qwencloud-observe automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
Qwen Cloud Observe
Read-only observability for an application deployed by qwencloud-deploy. Answers "how is my
app doing and what will it cost" without the console. All prices are USD.
Quick Path
- Identify the app — read
.qwencloud-deployin the project directory (references/workflow.md). - Pick the window — default last 1h; user may pick 15m / 1h / 24h.
- Check each layer — Application, ECS, (optional) RDS, Cost. Each check returns one of the unified result states; a failed check never blocks the others.
- Report — one-line conclusion, then per-layer summary, risks, data timestamp, unknowns.
Scope
| In Scope | Out of Scope |
|---|---|
Apps deployed by qwencloud-deploy (state file present) | Apps without a .qwencloud-deploy state file |
| Single ECS, or ECS + RDS MySQL 8.0 | Other topologies / self-managed servers |
| Read-only availability, performance, cost overview | Any change to cloud resources → use qwencloud-operate |
| Report runtime status (availability, performance, cost) | Source-code review, finding bugs/vulns, judging which line is wrong, editing code |
| Alibaba Cloud International, USD | Aliyun China → use qianwenai-observe |
Code issues are out of scope
This skill is read-only observation, reporting runtime availability, performance, and cost. It does not review source code, locate defects, or edit code.
When code is involved, tell the user plainly: editing code is outside this skill's scope, the user must decide and make the change themselves, and any consequences are the user's own.
Prerequisites
Aliyun CLI: run
aliyun version(need 3.x). All queries use the PascalCase native form straight to OpenAPI — no plugin dependency. Credentials: check withaliyun configure listonly. Never read, echo, print, or ask for AK/SK/tokens. If no valid profile exists, stop and ask the user to configure credentials outside this session. Seereferences/cli_installation_guide.md.
States and scoring
Every layer returns one state — healthy · degraded · unavailable · unknown — carrying its
check time, target resource, key evidence, and data source. When a single query fails, keep
checking the other layers and mark the failed item unknown — never silently drop it, never
fabricate data.
Each layer also gets a score, and the layer scores sum to a 0-100 health score with an A/B/C/D
grade (>=90 A · >=75 B · >=60 C · <60 D). Four dimensions are scored:
| Dimension | Weight (with RDS) | Weight (no RDS) | Signals |
|---|---|---|---|
| Application | 35 | 45 | reachability, /healthz, response time, error rate, certificate validity (with domain) |
| ECS | 30 | 45 | CPU, memory, disk usage, disk IO, network |
| RDS | 25 | — | connections, slow SQL, space, row-lock waits |
| Availability | 10 | 10 | ECS/RDS run status, recent system events, EIP status and bandwidth, security-group exposure |
When the app has no RDS, its weight moves to Application and ECS. Cost is never scored — it is shown separately as the actual bill plus a utilization-based optimization note.
Missing backups/snapshots and security-group hardening are surfaced as risks and recommendations, not scored; availability-affecting signals — EIP unbound, bandwidth saturated, missing 80/443 ingress — count toward the Availability dimension.
How to check
Start by identifying the app, then look at each layer. Read the linked guide before running its
commands. A failed check never blocks the others — mark it unknown and move on.
The layer checks are independent and read-only — after identifying the app, fire each layer's
read-only APIs in parallel (background & + wait) rather than waiting serially; merge the Cloud
Assistant commands on one ECS into a single script fetched in one round trip.
- Identify the app — read
.qwencloud-deployfor the region and resource IDs. See workflow. - Is the app reachable? — probe the public address and
/healthz, check the app and Nginx services and their ports, and summarize recent errors. See observe-application. - How is the server doing? — ECS status plus CPU, network, disk, and memory over the window. See observe-ecs.
- How is the database doing? (only when the app has RDS) — status, connections, QPS/TPS, space, row-lock waits, and redacted slow SQL. See observe-rds.
- How are the public entry and exposure? — EIP status and bandwidth, security-group 80/443 and exposure risks. See observe-network.
- Any maintenance or backups? — ECS system events, system-disk snapshots, RDS backups. See observe-resilience.
- What is it costing? — the actual billed cost for the app, with an optional month-end projection. See observe-cost.
- Score and pull it together — score each layer, sum to the health score and grade, and write one plain-language conclusion. See workflow.
The default window is the last hour; honor an explicit 15 minutes / 1 hour / 24 hours request and state the window used.
What to tell the user
Lead with the health score and grade plus a one-line verdict, then a short line each for the
application, server, database (if any), and cost — each with the evidence behind it. Call out risks
and note anything you could not determine and why, plus the data timestamp. When operate_audit.jsonl
exists in the project directory, include the most recent operate action (time, action, result) so
the score lines up with the latest recovery. When you find a real fault, offer to move on to fault
diagnosis with qwencloud-operate: use AskUserQuestion to present Diagnose and fix now /
Just look, no changes; picking the former enters qwencloud-operate. Also write the evidence
already gathered to observe_handoff.json in the project directory (fault layer, key metrics, data
timestamp; never any password/signed URL) so operate can use it as a starting point and skip
repeating the read-only checks.
Health score: 87 / 100 (B, Good) — app healthy; watch the RDS connection trend.
Application: reachable, current response time 186 ms; app and Nginx services healthy.
Certificate: valid, 54 days remaining (app.example.com).
ECS: healthy, last 1h average CPU 31%, no sustained high load.
RDS: healthy, active connections rose from 12 to 38 — watch the connection-pool trend.
Cost: actual bill for 2026-08 so far $12.40 (ECS $7.80, RDS $4.60).
Data as of: 2026-08-03 16:20 UTC+8
After the summary, proactively ask whether to export a report file, e.g. "Want me to export a Markdown or HTML report?" — the user decides; do not force it.
Interaction form
- Read-only information (checkup verdict, status, cost): plain text, with one evidence line after each judgment (metric, status, timestamp).
- State-changing actions (entering operate, exporting a report): use AskUserQuestion whose prompt answers what it does · impact · how to verify; do nothing before the user confirms.
- Proactive discipline: stay quiet when healthy; speak up only on a risk or real fault, and offer at most one follow-up action (diagnose / export report) for the user to choose.
Render a report file (optional)
When the user wants a saved Markdown or HTML report, gather every layer's state, per-layer score,
key metrics, and evidence into one JSON object and let scripts/render_report.py render it — do
not hand-format the final file. The HTML output is a multi-card report (overview with the score
and anomalies, one card per layer with a metric table, a cost card, and recommendations); Markdown
is the lightweight equivalent.
- Print the schema and fill it in:
python3 scripts/render_report.py --schema. Each layer needs astate, ascore/max_score,metrics[], anddetail;assessment.health_scoremust equal the sum of the layer scores and match its grade; cost carries the actual billed amount only. - Validate before rendering:
python3 scripts/render_report.py --validate -i data.json. Fix any reported issue (bad state,unknownwithout a reason, grade/score mismatch, any estimate in cost). - Render in the format the user picks:
python3 scripts/render_report.py -i data.json -f md -o report.md(or-f html).
Handoff to operate (optional)
When you find a real fault and the user chooses to enter qwencloud-operate, write
observe_handoff.json to the project directory so operate can start from it and verify the named
layer first:
{
"from": "qwencloud-observe",
"generated_at": "2026-08-03T16:20:00+08:00",
"fault_layer": "rds",
"symptoms": ["RDS active connections rose from 12 to 190, near the cap"],
"metrics": {"rds_active_connections": 190, "app_http_code": 200}
}
fault_layer is one of app / nginx / ecs / rds / network / disk. Write only read-only
observed evidence; never a password, connection string, or signed URL. It is a hint only —
operate still verifies independently before proposing any recovery action.
Security
| Rule | Detail |
|---|---|
| Read-only only | Cloud Assistant commands must be read-only; never modify instance/app state. |
| No secrets | Never read/output passwords from .qwencloud-deploy.local. |
| Redaction | Mask AccessKey, tokens, passwords, connection-string passwords, and cookies in any log output. |
| Slow SQL | Output SQL templates / redacted SQL only, length-limited; never raw literal values. |
| Cost | Show actual billed cost only (USD) with the billing cycle; never show an estimate. When there is no bill yet, mark cost unknown. |
Required Permissions
See references/ram_policies.md. Read-only except cms:InstallMonitoringAgent (lazy agent install):
ecs:DescribeInstances,
ecs:RunCommand + ecs:DescribeInvocations (read-only commands), cms:DescribeMetricList,
cms:DescribeMonitoringAgentStatuses, cms:InstallMonitoringAgent, ecs:DescribeSecurityGroupAttribute,
ecs:DescribeInstanceHistoryEvents, ecs:DescribeSnapshots, vpc:DescribeEipAddresses,
bssopenapi:QueryInstanceBill, bssopenapi:QueryBill, and (with RDS)
rds:DescribeDBInstances, rds:DescribeDBInstanceAttribute, rds:DescribeDBInstancePerformance,
rds:DescribeSlowLogRecords, rds:DescribeBackups.
More detail
The per-layer guides are linked from "How to check" above. Two setup references:
- CLI setup — install and credential check.
- CLI gotchas — parameter shapes, time formats, response parsing.
- RAM policies — the read-only permissions this skill needs.
FAQ
What does the qwencloud-observe skill do?
Report the health, performance, resource status, and actual billed cost of an application deployed by qwencloud-deploy to Alibaba Cloud International (alibabacloud.com), in plain language and without opening the console. Reads the local .qwencloud-deploy state file to identify the app and its ECS (and optional RDS MySQL) resources, then queries read-only cloud APIs to summarize application availability, ECS/RDS performance, and USD cost. Use when: the user asks how their deployed app is doing, wants a health/performance/cost overview, asks about CPU/memory/connections/slow SQL risk, or asks the monthly cost of a qwencloud-deployed app. Do not use when: no .qwencloud-deploy state file exists, the target is Aliyun China (use qianwenai-observe), or the user wants to change/recover resources (use qwencloud-operate).
How do I install qwencloud-observe?
Run npx skills add https://github.com/qwencloud/qwencloud-deploy --skill qwencloud-observe in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/qwencloud-observe/ (personal) or .claude/skills/qwencloud-observe/ (project).
Which AI agents can use qwencloud-observe?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is qwencloud-observe safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains qwencloud-observe?
It is published by qwencloud in qwencloud/qwencloud-deploy. It has 191 recorded installs.
More from qwencloud/qwencloud-deploy
qwencloud-deploy
qwencloud/qwencloud-deploy
One-click deploy, publish, and update a local project or Git repository to Alibaba Cloud International (alibabacloud.com), producing an accessible online service with a public IP. Supports full-stack ROS orchestration, automatic cloud-resource provisioning, pre-deployment price confirmation, service health checks, deployment-state recording, hot updates, and optional domain + HTTPS setup. Use when: the user asks to deploy a project to the cloud, put an app online, publish a website, generate an access URL, deploy a Git repo, or update an online version and has NOT named a specific cloud platform; or the user mentions "Alibaba Cloud", "alibabacloud.com", or the international site. Do not use when: the user explicitly targets Aliyun China (aliyun.com), AWS, GCP, Azure, or another specific cloud platform.
qwencloud-operate
qwencloud/qwencloud-deploy
Diagnose why an application deployed by qwencloud-deploy to Alibaba Cloud International (alibabacloud.com) is unavailable or slow, and — only after explicit user confirmation — perform a safe recovery and verify the result. Reads the local .qwencloud-deploy state file to identify ECS (and optional RDS MySQL) resources, runs minimal read-only diagnostics, then proposes one recovery action at a time (start ECS, restart the app service, reload Nginx), each gated by a confirmation that states impact. Use when: the user says the app is down / returns 502 / cannot connect to the database, or asks to restart and verify the app. Do not use when: no .qwencloud-deploy state file exists, the target is Aliyun China (use qianwenai-operate), or the user only wants a status/cost overview (use qwencloud-observe).
Popular devops & cloud skills
microsoft-foundry
microsoft/azure-skills
Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end. USE FOR: foundry, azd ai agent, azd provision/deploy, hosted agent scaffold/develop/run/deploy/troubleshoot, prompt agent create, managed harness agent create, GitHub Copilot harness agent, create agent, update agent, add tool to agent, invoke agent, agent insights, evaluate agent, batch eval, continuous eval, continuous monitoring, agent CI/CD, optimize prompt, improve prompt, optimize agent instructions, Agent Optimizer scaffold, dataset curation from traces, deploy model, model fine-tuning (SFT/DPO/RFT), Foundry project, RBAC, role assignment, permissions, quota, capacity, region, deployment failure, AI Services, create Foundry resource, knowledge index, customize deployment, onboard, availability, training-data, grader, distillation, large file upload. DO NOT USE FOR: Azure Functions, App Service, general Azure deploy (use azure-deploy), general Azure prep (use azure
azure-diagnostics
microsoft/azure-skills
Debug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage. WHEN: debug production issues, troubleshoot app service, app service high CPU, app service deployment failure, troubleshoot container apps, container app 503 or target port mismatch, troubleshoot functions, function telemetry missing or stopped after a config/connection-string change, troubleshoot AKS, VM RDP, Linux SSH, VM black screen, can't connect to VM, reset VM password, NSG or firewall blocking, kubectl cannot connect, kube-system/CoreDNS failures, pod pending, crashloop, node not ready, upgrade failures, analyze logs, KQL, insights, image pull failures, cold start issues, health probe failures, resource health, root cause of errors, troubleshoot event hubs, troubleshoot service bus, messaging SDK error, AMQP connection failure, message lock lost, lock renewal during long-running processing, service bus dead letter.
azure-prepare
microsoft/azure-skills
Prepare azd-based Azure projects for deployment: generates azure.yaml, infrastructure (Bicep/Terraform), and Dockerfiles for the Azure Developer CLI (azd) workflow. USE ONLY when the user explicitly wants to use azd as the deployment tool, or the project already has an azure.yaml file. DO NOT USE FOR: non-azd deployments, Python App Service code-only deploys (use python-appservice-deploy), or cross-cloud migration (use azure-cloud-migrate). WHEN: prepare app for azd, create azure.yaml, set up azd infrastructure, modernize app for Azure with azd, deploy with azd, function app, timer trigger, service bus trigger, event-driven function, managed identity, generate Bicep, generate Terraform, create and deploy to Azure.
azure-ai
microsoft/azure-skills
Use for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.
azure-deploy
microsoft/azure-skills
Execute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: "run azd up", "run azd deploy", "execute deployment", "push to production", "push to cloud", "go live", "ship it", "bicep deploy", "terraform apply", "publish to Azure", "launch on Azure". DO NOT USE WHEN: "create and deploy", "build and deploy", "create a new app", "set up infrastructure", "create and deploy to Azure using Terraform" — use azure-prepare for these.
azure-validate
microsoft/azure-skills
Pre-deployment validation for Azure readiness. Run deep checks on configuration, infrastructure (Bicep or Terraform), RBAC role assignments, managed identity permissions, and prerequisites before deploying. WHEN: validate my app, check deployment readiness, run preflight checks, verify configuration, check if ready to deploy, validate azure.yaml, validate Bicep, test before deploying, troubleshoot deployment errors, validate Azure Functions, validate function app, validate serverless deployment, verify RBAC roles, check role assignments, review managed identity permissions, what-if analysis, validate Container Apps deployment.