Gorm Expert
LeoYeAI/openclaw-master-skills
GORM v2 最佳实践与性能优化。适用于:代码审查、慢查询优化、N+1、连接池、 事务管理、分库分表、Prometheus/OTel监控、Session安全、Clause/Upsert、 缓存集成、BaseModel脚手架、SQL→struct生成、多租户隔离。
Generate Perses dashboards or single panels for GreptimeDB. An agent skill from GreptimeTeam/dashboard.
$ npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install GreptimeTeam/dashboard greptimedb-perses-dashboard --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/GreptimeTeam/dashboard.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/greptimedb-perses-dashboard .claude/skills/greptimedb-perses-dashboard && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "greptimedb-perses-dashboard" agent skill from https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboard into .claude/skills/greptimedb-perses-dashboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "greptimedb-perses-dashboard", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboardType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install GreptimeTeam/dashboard greptimedb-perses-dashboard --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GreptimeTeam/dashboard.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/greptimedb-perses-dashboard .agents/skills/greptimedb-perses-dashboard && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "greptimedb-perses-dashboard" agent skill from https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboard into .agents/skills/greptimedb-perses-dashboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "greptimedb-perses-dashboard", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install GreptimeTeam/dashboard greptimedb-perses-dashboard --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GreptimeTeam/dashboard.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/greptimedb-perses-dashboard .cursor/skills/greptimedb-perses-dashboard && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "greptimedb-perses-dashboard" agent skill from https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboard into .cursor/skills/greptimedb-perses-dashboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "greptimedb-perses-dashboard", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/GreptimeTeam/dashboard.git --path skills/greptimedb-perses-dashboard--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install GreptimeTeam/dashboard greptimedb-perses-dashboard --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GreptimeTeam/dashboard.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/greptimedb-perses-dashboard .gemini/skills/greptimedb-perses-dashboard && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "greptimedb-perses-dashboard" agent skill from https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboard into .gemini/skills/greptimedb-perses-dashboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "greptimedb-perses-dashboard", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install GreptimeTeam/dashboard greptimedb-perses-dashboardInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/GreptimeTeam/dashboard.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/greptimedb-perses-dashboard .github/skills/greptimedb-perses-dashboard && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "greptimedb-perses-dashboard" agent skill from https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboard into .github/skills/greptimedb-perses-dashboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "greptimedb-perses-dashboard", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install GreptimeTeam/dashboard greptimedb-perses-dashboard --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/GreptimeTeam/dashboard.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/greptimedb-perses-dashboard .opencode/skills/greptimedb-perses-dashboard && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "greptimedb-perses-dashboard" agent skill from https://github.com/GreptimeTeam/dashboard/tree/main/skills/greptimedb-perses-dashboard into .opencode/skills/greptimedb-perses-dashboard/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "greptimedb-perses-dashboard", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
greptimedb-perses-dashboardGenerate Perses dashboards or single panels for GreptimeDB. An agent skill from GreptimeTeam/dashboard.
Greptimedb Perses Dashboard is an agent skill from GreptimeTeam/dashboard. Generate Perses dashboards or single panels for GreptimeDB. Use when the user asks to create, generate, or scaffold a Perses dashboard or panel from table names, SQL/PromQL queries, natural-language prompts, or JSON paste into the Perses editor. Dashboard output is compatible with GET/POST /v1/dashboards; panel output is a paste-ready Panel object with kind Panel. Datasources are limited to promql-default (Prometheus) and sql-default (GreptimeDB) only. Reference GET /v1/dashboards for live metrics (SQL/PromQL)…
Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 4 other files, including scripts (for example `catalog.md`, `reference.md` and `scripts/save-dashboard.sh`). Compatibility notes: Any Agent Skills or MCP-capable host (Cursor, Claude Desktop/Code, GitHub Copilot, Codex, Gemini CLI, custom agents, etc.); GreptimeDB Dashboard with Perses…
It sits in DevOps & Cloud, covering Monitoring and alerting, SQL and MCP servers. It works with Prometheus, SQL, Model Context Protocol and Vue.js. The repository describes itself as: GreptimeDB dashboard web application. The licence is Apache-2.0.
7 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 1f6e93e. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Shell), which the agent can run.
Shell commands in SKILL.md call:
curlnodeFrom the folder's file list and the shell code blocks in SKILL.md.
Links to these hosts (documentation or services it may open):
modelcontextprotocol.ioperses.devFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Any Agent Skills or MCP-capable host (Cursor, Claude Desktop/Code, GitHub Copilot, Codex, Gemini CLI, custom agents, etc.); GreptimeDB Dashboard with Perses; data via GreptimeDB MCP server or HTTP API
From compatibility in the SKILL.md frontmatter.
Greptimedb Perses Dashboard loads about 3.9k tokens when it runs. Until then it costs about 143 tokens; SKILL.md has 1,309 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from GreptimeTeam/dashboard at commit 1f6e93e, republished under its Apache-2.0 licence (© GreptimeTeam). 1,309 words, ~3,945 tokens.
.claude/skills/greptimedb-perses-dashboard/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Generate Perses Dashboard or single Panel JSON for the GreptimeDB Dashboard app.
Read first: catalog.md — panel shapes, JSON examples, live dashboard index.
Also: reference.md (schema, SQL/PromQL rules).
Output modes:
| User intent | Output |
|---|---|
| dashboard / save to API | Full Dashboard JSON |
| panel / single panel / paste JSON | Single Panel object only (kind: "Panel") |
Greptime Dashboard only supports two datasource plugins. Never use any other kind or name:
| Name | Plugin kind | Query plugins |
|---|---|---|
promql-default | PrometheusDatasource | PrometheusTimeSeriesQuery |
sql-default | GreptimeDBDatasource | GreptimeDBTimeSeriesQuery, GreptimeDBLogQuery, GreptimeDBTraceQuery |
Forbidden: Loki, Tempo, Elasticsearch, InfluxDB, ${ds}, Grafana datasource variables, inline URLs, or any other datasource.
When migrating Grafana JSON, replace all datasource references with promql-default or sql-default.
Before generating panels, discover real table/column names and dry-run queries. Use either path below — not both unless cross-checking.
| Path | When to use | Host / connection |
|---|---|---|
| GreptimeDB MCP server | Any agent with MCP enabled | Host/auth in the agent’s MCP server config; call health_check to verify |
| HTTP API | No MCP, shell/curl, CI, scripted agents | Resolve GREPTIME_HOST (see reference.md — HTTP host) |
Do not invent table/column names without discovery.
The GreptimeDB MCP server is agent-agnostic — any host that implements the Model Context Protocol can use it (Cursor, Claude Desktop, Claude Code, VS Code Copilot, Codex, Gemini CLI, custom runners, etc.). The server name in config may vary (e.g. user-greptimedb, greptimedb); tool names below are what the server exposes.
| Tool | When to use |
|---|---|
health_check | Confirm MCP can reach GreptimeDB before discovery |
describe_table | Column names, data_type, semantic_type |
execute_sql | Sample rows, dry-run SQL panel queries |
query_range | Validate PromQL metrics exist and return data |
explain_query | Debug slow or failing SQL |
MCP host/auth is not passed per tool call — it is set once in the agent’s MCP config (stdio command, env vars, or remote URL). If health_check fails, fix that MCP server entry or fall back to HTTP.
Same operations via GreptimeDB HTTP API on {host}:
| Need | Endpoint | Example |
|---|---|---|
| Probe connection | POST {host}/v1/sql | SELECT 1 |
| List dashboards (templates) | GET {host}/v1/dashboards | — |
| Table schema | POST {host}/v1/sql | DESCRIBE TABLE public.my_table or information_schema.columns |
| Run SQL | POST {host}/v1/sql | Panel query with literals instead of ${__from} |
| PromQL range | GET {host}/v1/prometheus/api/v1/query_range | query, start, end, step |
| Save dashboard | POST {host}/v1/dashboards/{name} | save-dashboard.sh |
Confirm host (HTTP only) — resolve in order, stop when a probe succeeds:
https://greptime.example.com, http://127.0.0.1:4000)GREPTIME_HOST environment variablehttp://127.0.0.1:4000 (GreptimeDB HTTP API; matches config/vite.config.base.ts dev proxy target)/v1/* is proxied to 127.0.0.1:4000; direct curl still targets that backend unless deployed otherwiseProbe (replace host and auth as needed):
HOST="${GREPTIME_HOST:-http://127.0.0.1:4000}"
curl -sS -o /dev/null -w "%{http_code}" -X POST "$HOST/v1/sql" \
-H "Content-Type: application/x-www-form-urlencoded" \
--data-urlencode "sql=SELECT 1"
# Expect HTTP 200Auth headers for HTTP: GREPTIME_AUTH (Basic), GREPTIME_DB (x-greptime-db-name) — same as save-dashboard.sh. Full curl patterns: reference.md — HTTP API.
If discovery and HTTP both fail, use offline catalog.md shapes only and tell the user which host/MCP setting is missing.
Fetch existing dashboards before generating (match real query/panel shapes):
curl -s "${GREPTIME_HOST:-http://127.0.0.1:4000}/v1/dashboards"| User asks for | Copy patterns from dashboard |
|---|---|
| SQL metrics / table | GreptimeDB Perses Demo, test |
| PromQL / node exporter | Node Exporter, test (panel prom) |
| Logs | log |
| Traces | Traces Demo |
| Mixed observability | GreptimeDB Perses Demo + log + Traces Demo |
See catalog.md for parsed panel JSON per modality.
Identify one of:
schema.table or public.my_table)percli migrate, then tweak — see reference.md)Default to single panel when the user mentions: panel, single panel, paste JSON, add panel, import panel.
Default to full dashboard when the user mentions: dashboard, save dashboard, /v1/dashboards.
Follow the Greptime + Perses guide:
| Scenario | Path | Datasource | Query plugin |
|---|---|---|---|
| Prometheus metrics, node_exporter | PromQL | promql-default | PrometheusTimeSeriesQuery |
| GreptimeDB tables, logs, traces, RANGE/ALIGN | SQL | sql-default | GreptimeDBTimeSeriesQuery / GreptimeDBLogQuery / GreptimeDBTraceQuery |
| Grafana JSON provided | Migrate first | Map to promql-default after migration | — |
SQL path — MCP: describe_table + execute_sql … LIMIT 5. HTTP: DESCRIBE TABLE / information_schema + POST /v1/sql.
Identify:
data_type for Nanosecond vs Millisecond — nanosecond columns (e.g. web_trace_demo.timestamp) must use to_timestamp_millis(col) AS ts in TimeSeriesChart / Table queries or the UI can hang/crash (reference.md — Timestamp precision)host, loc, sensor_id)trace_id, span_id, parent_span_idmessage, content, body, levelTime column (same as SQL Builder — src/components/sql-builder/index.vue, src/utils/table-normalizer.ts):
describe_table columns, keep those where data_type.toLowerCase().includes('timestamp')semantic_type === 'TIMESTAMP'data_type columnts / greptime_timestamp by nameSee reference.md — Time column detection.
PromQL path — MCP: query_range. HTTP: GET /v1/prometheus/api/v1/query_range (or labels API).
| Modality | Chart plugin | Query wrapper kind | Query plugin |
|---|---|---|---|
| Metrics (SQL) | TimeSeriesChart, StatChart, Table | TimeSeriesQuery | GreptimeDBTimeSeriesQuery |
| Metrics (PromQL) | TimeSeriesChart, GaugeChart, StatChart | TimeSeriesQuery | PrometheusTimeSeriesQuery |
| Logs | LogsTable | LogQuery | GreptimeDBLogQuery |
| Traces | TraceTable, TracingGanttChart | TraceQuery | GreptimeDBTraceQuery |
Live examples: catalog.md. Do not use TimeSeriesQuery for logs/traces.
Registered plugins in this app: TimeSeriesChart, StatChart, GaugeChart, Table, LogsTable, TraceTable, TracingGanttChart.
StatChart + sparkline: Only enable sparkline when the query returns a time series (multiple points over time). For scalar / single-value queries (e.g. SELECT count(*) FROM ..., SELECT count(*) FROM ... WHERE ... with no time column), use StatChart without sparkline — omit the field entirely. See reference.md — StatChart.
Table + GROUP BY: Table renders one row per time series, not raw SQL rows. GROUP BY without a TIMESTAMP column in the result collapses to a single row (timestamp + count). Add a synthetic time expression (e.g. to_timestamp_millis(${__to}) AS ts) and put dimensions in non-value columns; hide the synthetic timestamp column in columnSettings. See reference.md — SQL Table.
Output only a Panel object — no dashboard wrapper, no layout, no panel ID map:
{
"kind": "Panel",
"spec": {
"display": { "name": "..." },
"plugin": { "kind": "TimeSeriesChart", "spec": {} },
"queries": [ ... ]
}
}Rules:
kind must be "Panel"spec.display.name, spec.plugin, spec.queriessql-default (GreptimeDBDatasource) or promql-default (PrometheusDatasource)Optionally append a one-line note with suggested grid size (e.g. width: 24, height: 10).
See reference.md — Single panel.
Rules:
kind: "Dashboard", metadata.project: "default", metadata.version: 0a8f3c2e1b9044d6a9f7e2c1d0b5a4e32)Grid; stack panels vertically (y += previous height)sql-default or promql-default only — never embed URLsduration: "1h", refreshInterval: "30s"spec.datasources: {} (runtime injects globals)Use helpers from reference.md to build panels and layouts.
Before delivering, dry-run every panel query (MCP execute_sql / query_range, or HTTP equivalents on resolved GREPTIME_HOST):
Fix errors before output. Replace ${__from}/${__to} with literal millis when dry-running SQL.
Single panel: Output pretty-printed Panel JSON only + brief explanation. Do not wrap in Dashboard.
Full dashboard: Output pretty-printed Dashboard JSON + brief explanation (why PromQL vs SQL, which tables/metrics used).
If user asks to save dashboard: Run:
skills/greptimedb-perses-dashboard/scripts/save-dashboard.sh \
--name <dashboard-name> \
--file /path/to/dashboard.json \
[--host "${GREPTIME_HOST:-http://127.0.0.1:4000}"]Or equivalent curl (see reference.md). Only save when explicitly requested.
Input: public.cpu_metrics_30
→ describe_table → pick TIMESTAMP column from schema (e.g. `ts` on this table)
→ numeric columns = values; string/low-cardinality = tags
→ TimeSeriesChart with GreptimeDBTimeSeriesQueryInput: "node exporter style CPU/memory monitoring"
→ PromQL path
→ query_range for node_* metrics
→ Gauge + Stat + TimeSeries panels (see [catalog.md §2](catalog.md#2-metrics--promql-prometheustimeseriesquery))
→ Use promql-default; simplify label filters if env-specific labels missingInput: "temperature trend by location from temp_alerts"
→ SQL path with RANGE/ALIGN
→ describe_table → use schema TIMESTAMP column in WHERE (e.g. `time_window` on temp_alerts)
→ See [catalog.md §1d](catalog.md#1d-range--align-sql-test-dashboard) (RANGE/ALIGN SQL)Input: "dashboard with CPU metrics, logs, and traces"
→ PromQL for metrics panels
→ GreptimeDBLogQuery for logs
→ GreptimeDBTraceQuery for traces
→ Trace **metrics-style** charts (span rate, etc.): GreptimeDBTimeSeriesQuery with to_timestamp_millis(timestamp) AS ts — never raw nanosecond timestamp in TimeSeriesChart
→ Combine in one Grid layoutInput: "trace dashboard" / public.web_trace_demo
→ describe_table → timestamp is TimestampNanosecond
→ TraceTable / TracingGanttChart: GreptimeDBTraceQuery (raw timestamp OK)
→ StatChart / Table / TimeSeriesChart on same table: GreptimeDBTimeSeriesQuery; chart time column must be millisecond (to_timestamp_millis)
→ Follow Traces Demo for TraceTable shape; avoid ${__from}/${__to} on overview unless data is within dashboard durationInput: "line chart panel for cpu_metrics_30" / "single PromQL CPU gauge panel"
→ Same discovery as Mode A/B/C but output Panel object only
→ kind: "Panel" at root; no metadata, layouts, or panel ID map
→ User pastes into Perses editor when adding a panelExample output shape — see catalog.md §6.
data_type — for TimestampNanosecond, use to_timestamp_millis(<time_col>) AS ts in GreptimeDBTimeSeriesQuery results; keep raw column only in GreptimeDBTraceQuery (reference.md — Timestamp precision)WHERE <time_col> >= to_timestamp_millis(${__from}) AND <time_col> <= to_timestamp_millis(${__to}) (${__from}/${__to} are milliseconds)max(val) RANGE '1m' FILL LINEAR, ALIGN '30s' BY (tag_col)LIMIT 2000 (or 100 for tables)public."table_name", "column_name"rate(), avg_over_time(), sum by (label) (...) per standard patternshost-metrics-promql.md in repo for node_exporter examplespromql-default — never ${ds} or other Grafana datasource variables© GreptimeTeam, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files (scripts) in skills/greptimedb-perses-dashboard of GreptimeTeam/dashboard.
Open the folder on GitHubat commit 1f6e93e
Greptimedb Perses Dashboard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Greptimedb Perses Dashboard this skillGreptimeTeam/dashboard | 111 | — | ~3.9k | Automated safety check: Pass | Apache-2.0 | |
| Gorm ExpertLeoYeAI/openclaw-master-skills | 2.2k | — | ~3.4k | Automated safety check: Pass | MIT | |
| AWS Cost OperationsMicrock/ordinary-claude-skills | 404 | 1 repos | ~2.5k | Automated safety check: Pass | Custom licence | |
| Semantic Analystsidequery/sidemantic | 129 | — | ~982 | Automated safety check: Pass | AGPL-3.0 | |
| Pytorch Clickhousepytorch/test-infra | 113 | — | ~2.8k | Automated safety check: Pass | Custom licence | |
| Aurora Dsqlaws/agent-toolkit-for-aws | 2.8k | — | ~9.6k | Automated safety check: Pass | Apache-2.0 |
LeoYeAI/openclaw-master-skills
GORM v2 最佳实践与性能优化。适用于:代码审查、慢查询优化、N+1、连接池、 事务管理、分库分表、Prometheus/OTel监控、Session安全、Clause/Upsert、 缓存集成、BaseModel脚手架、SQL→struct生成、多租户隔离。
Microck/ordinary-claude-skills
This skill provides AWS cost optimization, monitoring, and operational best practices with integrated MCP servers for billing analysis, cost estimation, observability, and security assessment.
sidequery/sidemantic
Answer analytical, KPI, metric, trend, cohort, and business-performance questions through a Sidemantic semantic layer.
pytorch/test-infra
Load this FIRST whenever working with PyTorch CI data (any pytorch/ org repo), the torchci/HUD codebase, or the PyTorch HUD ClickHouse database.
aws/agent-toolkit-for-aws
Provisions and manages Aurora DSQL clusters, connects via psql or DSQL Connectors, manages schemas, runs queries, migrates from MySQL, diagnoses query plans, and develops apps on serverless…
sickn33/agentic-awesome-skills
Analyze a Monte Carlo monitor and recommend config changes to reduce alert noise.
Categories
Generate Perses dashboards or single panels for GreptimeDB. An agent skill from GreptimeTeam/dashboard. Greptimedb Perses Dashboard is an agent skill from GreptimeTeam/dashboard. Generate Perses dashboards or single panels for GreptimeDB.
Greptimedb Perses Dashboard fits situations like: the user asks to create; scaffold a Perses dashboard; panel from table names; SQL/PromQL queries.
Run `npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a claude-code`. Or copy the skill folder (skills/greptimedb-perses-dashboard in GreptimeTeam/dashboard) into .claude/skills/greptimedb-perses-dashboard in your project. Claude Code loads it when a task matches its description.
Run `npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a codex`. Or copy the skill folder (skills/greptimedb-perses-dashboard in GreptimeTeam/dashboard) into .agents/skills/greptimedb-perses-dashboard in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add GreptimeTeam/dashboard --skill greptimedb-perses-dashboard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/greptimedb-perses-dashboard, .gemini/skills/greptimedb-perses-dashboard, .github/skills/greptimedb-perses-dashboard and .opencode/skills/greptimedb-perses-dashboard in your project.
Going by SKILL.md and its folder, Greptimedb Perses Dashboard needs a shell for the scripts in its folder and the command-line tools its instructions call (curl and node). Our summary lists: A Bash shell. Compatibility (from SKILL.md): Any Agent Skills or MCP-capable host (Cursor, Claude Desktop/Code, GitHub Copilot, Codex, Gemini CLI, custom agents, etc.); GreptimeDB Dashboard with Perses; data via GreptimeDB MCP server or HTTP API.
SKILL.md names 2 domains. As links in the text: modelcontextprotocol.io and perses.dev. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Greptimedb Perses Dashboard is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.9k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Greptimedb Perses Dashboard: Gorm Expert (LeoYeAI/openclaw-master-skills, 2.2k stars), AWS Cost Operations (Microck/ordinary-claude-skills, 404 stars), Semantic Analyst (sidequery/sidemantic, 129 stars) and Pytorch Clickhouse (pytorch/test-infra, 113 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
GreptimeTeam (a GitHub organization) maintains it in GreptimeTeam/dashboard, which has 111 GitHub stars. The repository was last updated on October 10, 2026.
Source: GreptimeTeam/dashboard on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.