一键导入
idmp-panel
IDMP panel skill for listing panels, reading details, creating and validating panel queries, and separating panel lifecycle from dashboard placement.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
IDMP panel skill for listing panels, reading details, creating and validating panel queries, and separating panel lifecycle from dashboard placement.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
根据 IDMP Demo 场景的输出物(调研报告、资产树、面板配置、分析规则等),自动生成 TDengine IDMP 行业场景博客。此技能在 idmp-easyuse 全流程完成后需要输出宣传博客时触发。
IDMP总控编排技能 - 核心枢纽技能。根据用户需求(无论是无文件输入的场景Demo生成,还是带有文件/明确业务数据的具体接入),实现"一键式"自动化编排。静默调度 idmp-sample-data-generator、MCP 可视化工具链和 idmp-analysis-creator 完成全流程(行业调研 -> 数据生成 -> 告警分析 -> 面板创建)。
高度自动化的 IDMP 数据建模与加载工具。支持基于调研文档设计(industry_research.md)或自然语言描述,进行分层资产建模、超级表设计、时序数据模拟及端到端自动化加载与执行。
将 IDMP 系统的元素层级结构导出为标准化的递归嵌套 JSON 文件。输出文件应包含每个元素的 id、name、template_id。当用户需要分析 IDMP 的资产结构、同步资产树或为其它技能准备 IDMP 拓扑信息时触发。
Client-side telemetry reporter for Skill invocations. Sends usage events to telemetry-server when any Skill is activated. Keywords: telemetry, usage report, skill tracking
协助部署 TDGPT 模型,包括环境配置、网络接入、依赖项安装以及模型验证。触发关键词:部署 tdgpt,部署 TDengine GPT,部署大模型,tdgpt 部署。
| name | idmp-panel |
| description | IDMP panel skill for listing panels, reading details, creating and validating panel queries, and separating panel lifecycle from dashboard placement. |
| metadata | {"author":"TaosData","version":"0.5.0","owner_team":"AI","requires":{"bins":["idmp-cli"]},"cliHelp":"idmp-cli panel --help"} |
Read ../idmp-shared/SKILL.md first.
Before any write: Follow the 🛑 Destructive op confirmation protocol. Read-only commands stay read-only here, but delete / write / patch flows still require the shared yes-gate.
| Shortcut | Purpose |
|---|---|
+list | List panels under one element. |
+search | Search panels globally. |
+templates | List panel templates available to one element. |
| Context | Why it must be resolved before create or verify |
|---|---|
| Owner element | You need the final elementId for list, get, naming, create, and every verification call. |
| Candidate panel name | panel.panels.new-name requires both elementId and a proposed name. |
| Verification mode | Decide whether this panel should generate SQL at all, and whether you need plain query and sqls checks or advanced-query verification. |
| Dashboard placement target | Decide whether the panel remains standalone or must be inserted into a dashboard before the workflow counts as complete. |
| Refresh owner | Decide whether refresh belongs on the panel shell or the dashboard shell so refreshInterval lands in the right params block. |
POST /api/v1/ai/panels/create for natural-language panel requests, then persist the returned draft through panel.panels.create. Use the structured panel DTO workflow only as fallback when the draft is unsuitable or persistence fails.panel.panels.new-name requires a candidate name; do not call it with only the owner scope.generated SQL is empty, so query is inapplicable for those panel types.panel verify create validates only the time-range payload with from and to; use plain --data, not --params, and do not send elementId.panel.panels.query and panel.panels.create use the panel DTO shape. panel.panels.sqls uses the same DTO together with owner --params.panel verify create-post is only for advanced-query payloads. Keep uuid, advancedQueryType, querySqls, and the advanced query fields inside that single DTO.400, capture the working SQL and switch to the advanced fallback instead of treating the first attempt as a total panel failure.refreshInterval belongs in params on the object that owns refresh behavior, not in an arbitrary top-level field.panel panels get rereads the persisted object with the intended owner, name, and params.panel.panels.query or panel.panels.sqls.enableAdvanced=true and the advanced DTO still validates. For child-scope workflows, this advanced fallback still counts as first-attempt success when the no-code payload collapsed but the verified SQL stayed correct.list first, then get, before changing a panel.new-name with a candidate name before creating a panel.query and sqls only for panels that should generate SQL, and use verify only for the single advanced-query DTO rather than the full panel DTO.advancedQueries is present, keep checked boolean and dimensions as an array of strings.refreshInterval belongs in params on the object that owns refresh behavior, not in an arbitrary top-level field.idmp-cli schema panel.panels.list
idmp-cli panel panels list --params '{"elementId":123}'
idmp-cli schema panel.panels.get
idmp-cli panel panels get --params '{"elementId":123,"panelId":456}'
idmp-cli schema panel.verify.create
idmp-cli panel verify create --ack-risk --data '{"from":"now-12h","to":"now"}'
idmp-cli schema panel.verify.create-post
idmp-cli panel panels new-name --params '{"elementId":123,"name":"demo-panel"}'
idmp-cli panel panels create --dry-run --ack-risk --params '{"elementId":123}' --data '{...}'
# In the current generated schema, `panel.panels.query` is readonly and `--ack-risk` is optional,
# but `panel.panels.sqls`, `panel.verify.create`, and `panel.verify.create-post` are still generated
# as write-risk commands and must keep `--ack-risk`.
idmp-cli panel panels query --ack-risk --params '{"elementId":123}' --data '{...}'
idmp-cli panel panels sqls --ack-risk --params '{"elementId":123}' --data '{...}'
idmp-cli panel verify create-post --ack-risk --params '{"elementId":123}' --data '{...}'
idmp-cli panel panel-templates list --params '{"elementId":123}'
refreshInterval is set outside params, treat the payload as incomplete and fix it before retrying.query and treat SQL-based validation as inapplicable for that panel type.panel verify create fails, send only the time-range payload with from and to; it is not the advanced-query validator.panel verify create-post fails with missing uuid or advancedQueryType, you passed a plain panel DTO instead of an advanced-query DTO.schema output against your payload before changing the SQL itself.panel.panels.sqls already proved the intended grouped SQL, persist the advanced fallback instead of restarting from an unrelated self-scope DTO.idmp-cli schema panel.panels.list and idmp-cli panel panels list --params '{"elementId":123}'.idmp-cli panel panels new-name --params '{"elementId":123,"name":"demo-panel"}'.idmp-cli panel panels create --dry-run --ack-risk --params '{"elementId":123}' --data '{...}'.idmp-cli panel panels query --ack-risk --params '{"elementId":123}' --data '{...}' and idmp-cli panel panels sqls --ack-risk --params '{"elementId":123}' --data '{...}' for query-backed panels, use idmp-cli panel verify create --ack-risk --data '{"from":"now-12h","to":"now"}' only for time-range validation, and use idmp-cli panel verify create-post --ack-risk --params '{"elementId":123}' --data '{...}' only for advanced-query DTOs that include fields such as uuid and advancedQueryType. If the child-scope no-code branch collapses, switch to the advanced fallback and keep that as the success path.idmp-cli panel panel-templates list --params '{"elementId":123}' and idmp-cli dashboard dashboards get --params '{"elementId":123,"dashboardId":789}'.