{"skill":{"slug":"tencentcloud-lighthouse-skill","displayName":"Tencent Cloud Lighthouse","summary":"Load when: user mentions Lighthouse, 轻量应用服务器, 轻量服务器, or asks to check/create/manage/deploy Lighthouse instances, deploy applications to Lighthouse, manage Li...","description":"---\nname: tencentcloud-lighthouse-skill\ndescription: 'Load when: user mentions Lighthouse, 轻量应用服务器, 轻量服务器, or asks to check/create/manage/deploy Lighthouse instances, deploy applications to Lighthouse, manage Lighthouse firewall rules, reset Lighthouse password, view Lighthouse snapshots/images/traffic, monitor Lighthouse metrics, run commands on Lighthouse via TAT, or asks to get/identify the current instance ID. Trigger phrases: \"查看轻量服务器\", \"Lighthouse实例\", \"轻量应用服务器\", \"部署应用\", \"部署程序\", \"部署到Lighthouse\", \"管理防火墙规则\", \"重置密码\", \"查看快照\", \"查看流量包\", \"获取实例ID\", \"查看实例ID\", \"当前实例\", \"实例IP\", \"check Lighthouse\", \"create Lighthouse\", \"deploy app\", \"deploy application\", \"Lighthouse firewall\", \"Lighthouse snapshot\", \"instance ID\", \"whoami\". NOT for CVM, CBS, VPC, or other non-Lighthouse products.'\nmetadata:\n  {\n    \"openclaw\":\n      {\n        \"emoji\": \"☁️\",\n        \"requires\": {},\n        \"install\":\n          [\n            {\n              \"id\": \"pip\",\n              \"kind\": \"pip\",\n              \"package\": \"tccli\",\n              \"bins\": [\"tccli\"],\n              \"label\": \"Install TCCLI\",\n            },\n          ],\n        \"references\":\n          [\n            \"instance-management\",\n            \"application-deployment\",\n            \"monitoring-alerting\",\n            \"firewall-management\",\n            \"remote-command-tat\",\n            \"snapshot-blueprint\",\n            \"traffic-package\",\n          ],\n      },\n  }\n---\n\n# Lighthouse Cloud Server Operations\n\nManage Tencent Cloud Lighthouse instances via tccli CLI.\n\nYour knowledge of tccli parameters and API limits may be outdated.\n**Always use `tccli <service> <action> --help` to verify parameters before execution.**\n\n## Prerequisites\n\n```bash\ntccli --version\n```\n\nIf not installed: `pip install tccli`\n\n## Credential Setup\n\n| Method | Security | Expiry | Recommendation |\n|--------|----------|--------|----------------|\n| OAuth browser login | High | Temporary, expires in 2 hours | Recommended |\n| AK/SK key pair | Low | Permanent unless revoked | Special cases only |\n\nWhen the user has not chosen a method, default to OAuth.\n\n### OAuth Login (Recommended)\n\nUse `script/tccli-oauth-helper.sh` for non-interactive OAuth login:\n\n```bash\n# Step 1: Check credential status\nbash script/tccli-oauth-helper.sh --status\n\n# Step 2: Generate authorization URL (if credentials are missing or expired)\nbash script/tccli-oauth-helper.sh --get-url\n\n# Step 3: User opens the URL in browser, completes login, and gets a base64 code\n\n# Step 4: Complete login with the code\nbash script/tccli-oauth-helper.sh --code \"base64_code_from_browser\"\n\n# Step 5: Verify\ntccli lighthouse DescribeRegions\n```\n\n**Workflow:**\n1. Run `--status` to check existing credentials\n2. If expired/missing, run `--get-url` — show the URL to user\n3. User opens URL → logs in → copies the base64 code from browser\n4. Run `--code` with the base64 code to complete login\n5. Verify with `tccli lighthouse DescribeRegions`\n\n**Notes:**\n- Credentials are temporary (expires in ~2 hours)\n- State is valid for 10 minutes after `--get-url`\n- Do NOT use `tccli sts GetCallerIdentity` to verify — it does not support OAuth credentials\n\n### AK/SK Setup\n\nOnly if the user explicitly provides SecretId and SecretKey:\n\n```bash\ntccli configure set secretId <SecretId>\ntccli configure set secretKey <SecretKey>\ntccli configure set region ap-guangzhou\n```\n\n### Logout\n\n```bash\ntccli auth logout\n```\n\n## Quick Reference\n\n| Task | Command |\n|------|---------|\n| List instances | `tccli lighthouse DescribeInstances --region <region>` |\n| Instance details | `tccli lighthouse DescribeInstances --region <region> --InstanceIds '[\"lhins-xxx\"]'` |\n| Firewall rules | `tccli lighthouse DescribeFirewallRules --region <region> --InstanceId lhins-xxx` |\n| Monitoring data | `tccli monitor GetMonitorData --Namespace QCE/LIGHT_HOUSE ...` |\n| Run remote command | `tccli tat RunCommand --region <region> --InstanceIds '[\"lhins-xxx\"]' --Content \"...\"` |\n| Snapshots | `tccli lighthouse DescribeSnapshots --region <region>` |\n| Traffic packages | `tccli lighthouse DescribeInstancesTrafficPackages --region <region> --InstanceIds '[\"lhins-xxx\"]'` |\n| Available regions | `tccli lighthouse DescribeRegions` |\n| Help for any action | `tccli lighthouse <Action> --help` |\n| Get current instance ID | `bash script/whoami.sh` or `bash script/whoami.sh --id` |\n\n## Scenario Routing\n\nRead the corresponding reference file before executing:\n\n```\nUser wants to...\n├─ Query / start / stop / reboot instances  -> references/instance-management.md\n├─ Reset password / view blueprints         -> references/instance-management.md\n├─ Deploy applications / verify deployment   -> references/application-deployment.md\n├─ View CPU / memory / bandwidth metrics    -> references/monitoring-alerting.md\n├─ Set up alarm policies                    -> references/monitoring-alerting.md\n├─ Manage firewall rules                    -> references/firewall-management.md\n├─ Execute commands on instance             -> references/remote-command-tat.md\n├─ Create / restore snapshots               -> references/snapshot-blueprint.md\n├─ Create custom images                     -> references/snapshot-blueprint.md\n├─ Check traffic usage                      -> references/traffic-package.md\n├─ Identify current instance (ID / IP)      -> bash script/whoami.sh [--id | --ip]\n└─ Other operations                         -> tccli lighthouse --help\n```\n\n## Operation Safety\n\n| Risk | Operations | Confirmation |\n|------|-----------|--------------|\n| High | Delete instance, apply snapshot, delete snapshot/blueprint | Double confirm, state irreversibility |\n| Medium | Stop/reboot instance, modify firewall, run commands | Single confirm |\n| Low | Query, list, describe, help | Execute directly |\n\nRules:\n1. **Region is required** for all operations except `DescribeRegions`\n2. **Query before modify** — always `Describe` first, never blind `Create` / `Delete`\n3. **Use real IDs** — get InstanceId from `DescribeInstances`, never use placeholders\n4. **Verify parameters** — run `--help` when unsure about parameter names or formats\n5. Lighthouse and CVM are separate products — do NOT mix their APIs\n6. **Create means new** — when user asks to \"create\" / \"deploy\" / \"set up\" something (e.g., \"create a server\", \"deploy an app\"), create a NEW instance by default. Do NOT use existing instances unless the user explicitly specifies an existing instance ID.\n\n## Common Regions\n\n| Code | Location |\n|------|----------|\n| ap-beijing | Beijing |\n| ap-shanghai | Shanghai |\n| ap-guangzhou | Guangzhou |\n| ap-chengdu | Chengdu |\n| ap-chongqing | Chongqing |\n| ap-nanjing | Nanjing |\n| ap-hongkong | Hong Kong |\n\nRun `tccli lighthouse DescribeRegions` for the full list.\n\n## Channel Output Compatibility\n\nMany messaging channels (WeChat, 企业微信, Slack, Teams, Telegram, etc.) apply Markdown rendering or Markdown-to-plain-text conversion before displaying messages. Common transformations that **silently corrupt output**:\n\n- **Paired underscores** stripped: `_xxx_` → `xxx` (italic markers)\n- **Paired asterisks** stripped: `*xxx*` → `xxx` (bold/italic markers)\n- **Backslash escapes** consumed or displayed literally\n- **URLs** with special characters mangled or truncated\n\nThis corrupts:\n\n- **URLs** containing underscores (e.g., `redirect_url`, `app_id` in OAuth links)\n- **CLI output** with underscored identifiers (e.g., `instance_name`, `secret_id`)\n- **Script output** containing underscored fields or special characters\n\n**Rules for all channel output:**\n\n1. **URLs**: Replace `_` (underscore) with `%5F` in any URL shown to the user. For example, the OAuth authorization URL parameters like `redirect_url`, `app_id` must use `%5F` instead of `_`.\n2. **CLI / script output**: Always wrap output in code blocks (triple backticks) to prevent Markdown interpretation. Prefer code blocks for any multi-line output containing underscores, asterisks, or other Markdown-sensitive characters.\n3. **General text**: Avoid bare underscores and asterisks in plain text. Use backtick-wrapped inline code for any identifier containing these characters (e.g., `instance_name`, `secret_id`).\n4. **Links**: When providing clickable links, ensure the full URL is inside a code block or use URL-encoding for special characters. Do not rely on Markdown link syntax `[text](url)` — the URL may be altered by the channel.\n\n## Error Handling\n\n1. Check credentials: `tccli lighthouse DescribeRegions`\n2. Verify the region parameter\n3. Run `tccli lighthouse <Action> --help` to confirm parameter format\n4. Check instance status: `tccli lighthouse DescribeInstances --region <region>`","tags":{"latest":"1.0.2"},"stats":{"comments":0,"downloads":10928,"installsAllTime":254,"installsCurrent":254,"stars":1,"versions":3},"createdAt":1770787740068,"updatedAt":1779076889914},"latestVersion":{"version":"1.0.2","createdAt":1778230746217,"changelog":"No functional or documentation changes detected for version 1.0.2.\n\n- No file modifications present compared to the previous version.\n- SKILL.md and all relevant documentation remain unchanged.\n- No new features, bug fixes, or behavioral adjustments included in this release.","license":"MIT-0"},"metadata":{"setup":[],"os":null,"systems":null},"owner":{"handle":"lhanyun","userId":"s17dn21jdk3pt92srtpncvyzch85qvaq","displayName":"lhanyun","image":"https://avatars.githubusercontent.com/u/63694342?v=4"},"moderation":{"isSuspicious":false,"isMalwareBlocked":false,"verdict":"clean","reasonCodes":["review.llm_review"],"summary":"Review: review.llm_review","engineVersion":"v2.4.24","updatedAt":1779968968343}}