cx-coding-agents

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Coding Agents Skill

Coding Agents skill

Use this skill as the entry point for any investigation or data question about AI Center Coding Agents. It identifies which data source each agent uses and tells you which reference files to load before querying.
将此 skill 作为调查 AI Center Coding Agents 或提出相关数据问题的入口。它会确定每个 Agent 使用的数据源,并指明查询前需要加载的参考文件。

Supported Agents

支持的 Agent

AgentData TypeSource Identifier
Claude CodeMetrics
claude_code_*
metric family
Claude Code (session text)Logs
source ai_sessions_claude
CodexLogs
service.name == 'codex_cli_rs'
or
'codex-app-server'
Codex (latency)Spans
$l.serviceName == 'codex_cli_rs'
or
'codex-app-server'
CursorSpans
$l.serviceName == 'cursor-agent'
Gemini CLIMetrics
gemini_cli_*
metric family
Copilot CLI (direct OTel)Spans
$l.serviceName == 'github-copilot'
or
tags['otel.scope.name'] == 'github.copilot'
GitHub Copilot CollectorMetrics
github_copilot_*
metric family

Agent数据类型数据源标识符
Claude Code指标
claude_code_*
metric family
Claude Code(session 文本)日志
source ai_sessions_claude
Codex日志
service.name == 'codex_cli_rs'
或
'codex-app-server'
Codex(延迟)Spans
$l.serviceName == 'codex_cli_rs'
或
'codex-app-server'
CursorSpans
$l.serviceName == 'cursor-agent'
Gemini CLI指标
gemini_cli_*
metric family
Copilot CLI(direct OTel)Spans
$l.serviceName == 'github-copilot'
或
tags['otel.scope.name'] == 'github.copilot'
GitHub Copilot Collector指标
github_copilot_*
metric family

Loading References

加载参考文件

Load the agent reference first, then the shared query-language files it depends on:
AgentAgent ReferenceShared References
Claude Code (metrics)
references/claude-code.md
references/promql-guidelines.md
+
references/metrics-querying.md
Claude Code (sessions)
references/claude-code.md
references/dataprime-reference.md
+
references/logs-querying.md
Codex
references/codex.md
references/dataprime-reference.md
+
references/logs-querying.md
+
references/spans-querying.md
Cursor
references/cursor.md
references/dataprime-reference.md
+
references/spans-querying.md
Gemini CLI
references/gemini-cli.md
references/promql-guidelines.md
+
references/metrics-querying.md
Copilot CLI (direct OTel)
references/copilot-cli.md
references/dataprime-reference.md
+
references/spans-querying.md
GitHub Copilot Collector
references/copilot-cli.md
references/promql-guidelines.md
+
references/metrics-querying.md
Cross-agent comparisonAll agent referencesAll shared references

先加载 Agent 参考文件,再加载其依赖的共享查询语言文件:
AgentAgent 参考文件共享参考文件
Claude Code(指标)
references/claude-code.md
references/promql-guidelines.md
+
references/metrics-querying.md
Claude Code(sessions)
references/claude-code.md
references/dataprime-reference.md
+
references/logs-querying.md
Codex
references/codex.md
references/dataprime-reference.md
+
references/logs-querying.md
+
references/spans-querying.md
Cursor
references/cursor.md
references/dataprime-reference.md
+
references/spans-querying.md
Gemini CLI
references/gemini-cli.md
references/promql-guidelines.md
+
references/metrics-querying.md
Copilot CLI(direct OTel)
references/copilot-cli.md
references/dataprime-reference.md
+
references/spans-querying.md
GitHub Copilot Collector
references/copilot-cli.md
references/promql-guidelines.md
+
references/metrics-querying.md
跨 Agent 比较所有 Agent 参考文件所有共享参考文件

Safety

安全性

All query commands (
cx metrics
,
cx logs
,
cx spans
,
cx dataprime
) are read-only. They never modify data and can be run freely without
--yes
.

所有查询命令(
cx metrics
、
cx logs
、
cx spans
、
cx dataprime
)均为只读操作。它们不会修改数据,因此无需使用
--yes
即可自由执行。

CLI Commands

CLI 命令

CommandPurposeWhen to Use
cx metrics search --name '<pattern>'
Find metrics by nameDiscover available
claude_code_*
,
gemini_cli_*
,
github_copilot_*
metrics
cx metrics query '<expr>'
Instant PromQL queryPoint-in-time metric snapshot
cx metrics query-range '<expr>'
Range PromQL query (time series)Claude Code, Gemini CLI, GitHub Copilot Collector trends
cx logs '<dataprime_query>'
Log queryClaude Code session text, Codex logs
cx spans '<dataprime_query>'
Span queryCursor, Codex latency, Copilot CLI direct OTel
cx dataprime query '<query>'
Raw DataPrime queryWhen you need an explicit
source logs
or
source spans
in the query
Output format: append
-o toon
to any command when passing results to an agent or further processing.
Multi-profile: use
-p <profile>
(repeatable) to fan out across profiles simultaneously.

命令用途使用场景
cx metrics search --name '<pattern>'
按名称查找指标发现可用的
claude_code_*
、
gemini_cli_*
、
github_copilot_*
指标
cx metrics query '<expr>'
即时 PromQL 查询获取时间点指标快照
cx metrics query-range '<expr>'
范围 PromQL 查询(时间序列)Claude Code、Gemini CLI、GitHub Copilot Collector 趋势分析
cx logs '<dataprime_query>'
日志查询Claude Code session 文本、Codex 日志
cx spans '<dataprime_query>'
Span 查询Cursor、Codex 延迟、Copilot CLI direct OTel
cx dataprime query '<query>'
原始 DataPrime 查询需要在查询中显式使用
source logs
或
source spans
时
输出格式: 将结果传递给 Agent 或进行后续处理时,为任意命令追加
-o toon
。
多 Profile: 使用
-p <profile>
(可重复),可同时向多个 profile 分发查询。

First Response

首次响应

Identify the requested agent and analysis goal. If any required scope is missing, ask before querying:
  • Agent: Claude Code, Codex, Cursor, Gemini CLI, or Copilot CLI.
  • Time range.
  • Optional filters: application, subsystem, user, model, session, repository.
  • Output shape: quick answer, table, trend, top-N ranking, investigation notes, or query only.
If the user says "GitHub Copilot Codex", clarify whether they mean Codex or Copilot CLI. AI Center has separate Codex and Copilot CLI dashboards.
Use the same data source as the corresponding dashboard whenever possible:
  • Claude Code metrics: PromQL over
    claude_code_*
    metrics.
  • Claude Code session text: DataPrime over
    ai_sessions_claude
    logs.
  • Codex: DataPrime over Codex logs for tokens, sessions, models, users, and tools; spans only for
    run_turn
    latency.
  • Cursor: DataPrime over Cursor spans. Cursor reports prompt length and file edits, not provider token counts.
  • Gemini CLI: PromQL over
    gemini_cli_*
    metrics.
  • Copilot CLI direct OTel: DataPrime over Copilot spans.
  • GitHub Copilot Collector: PromQL over
    github_copilot_*
    org/user/billing metrics when that collector data is present.

确定用户请求的 Agent 和分析目标。如果缺少任何必需范围,请在查询前询问:
  • Agent: Claude Code、Codex、Cursor、Gemini CLI 或 Copilot CLI。
  • 时间范围。
  • 可选筛选条件: application、subsystem、user、model、session、repository。
  • 输出形式: 快速答案、表格、趋势、Top-N 排名、调查说明或仅提供查询。
如果用户说“GitHub Copilot Codex”,请确认其指的是 Codex 还是 Copilot CLI。AI Center 为 Codex 和 Copilot CLI 提供相互独立的仪表板。
尽可能使用与对应仪表板相同的数据源:
  • Claude Code 指标: 对
    claude_code_*
    指标执行 PromQL 查询。
  • Claude Code session 文本: 对
    ai_sessions_claude
    日志执行 DataPrime 查询。
  • Codex: 对 Codex 日志执行 DataPrime 查询,以获取 tokens、sessions、models、users 和 tools;仅使用 spans 查询
    run_turn
    延迟。
  • Cursor: 对 Cursor spans 执行 DataPrime 查询。Cursor 报告 prompt 长度和文件编辑次数,但不报告提供商 token 数量。
  • Gemini CLI: 对
    gemini_cli_*
    指标执行 PromQL 查询。
  • Copilot CLI direct OTel: 对 Copilot spans 执行 DataPrime 查询。
  • GitHub Copilot Collector: 当存在该 Collector 数据时,对
    github_copilot_*
    组织、用户和计费指标执行 PromQL 查询。

Time and Filters

时间与筛选条件

PromQL (Claude Code, Gemini CLI, GitHub Copilot Collector)

PromQL(Claude Code、Gemini CLI、GitHub Copilot Collector)

Use
increase(metric[<range>])
for counters over the selected window. Common label filter pattern:
promql
{user_email="<user>",model="<model>",cx_application_name="<app>",cx_subsystem_name="<subsystem>"}
  • Use
    sum by (...)
    ,
    count by (...)
    , or
    topk(N, ...)
    for grouping.
  • For chart trends, use an interval window based on the selected range rather than the full range.
使用
increase(metric[<range>])
获取所选时间窗口内的 counter 增量。常见的标签筛选模式:
promql
{user_email="<user>",model="<model>",cx_application_name="<app>",cx_subsystem_name="<subsystem>"}
  • 使用
    sum by (...)
    、
    count by (...)
    或
    topk(N, ...)
    进行分组。
  • 对于图表趋势,应根据所选范围设置 interval 窗口,而不是使用完整范围。

DataPrime (Codex, Cursor, Copilot CLI direct, Claude Code sessions)

DataPrime(Codex、Cursor、Copilot CLI direct、Claude Code sessions)

  • Add
    | filter ...
    clauses for user, model, application, subsystem, session, and operation.
  • Prefer
    groupby ... aggregate ...
    for dashboard-like tables.
  • For spans: app/subsystem labels are
    $l.applicationName
    and
    $l.subsystemName
    (mixed case).
  • For logs: app/subsystem labels are
    $l.applicationname
    and
    $l.subsystemname
    (lowercase).
App/subsystem filter pattern:
text
| filter $l.applicationName == '<application>' && $l.subsystemName == '<subsystem>'

  • 添加
    | filter ...
    子句,按 user、model、application、subsystem、session 和 operation 筛选。
  • 对于类似仪表板的表格,优先使用
    groupby ... aggregate ...
    。
  • 对于 spans,application/subsystem 标签为
    $l.applicationName
    和
    $l.subsystemName
    (驼峰式大小写)。
  • 对于 logs,application/subsystem 标签为
    $l.applicationname
    和
    $l.subsystemname
    (全小写)。
Application/subsystem 筛选模式:
text
| filter $l.applicationName == '<application>' && $l.subsystemName == '<subsystem>'

Cross-Agent Questions

跨 Agent 问题

When comparing agents:
  • Normalize units before comparing: cost in USD, tokens as input/output/total, runtime in milliseconds, sessions as distinct conversations.
  • State which signals are not equivalent. Cursor prompt length is not a provider token count. Direct Copilot CLI users are pseudonymous IDs (
    enduser.pseudo.id
    ), not email addresses. GitHub Copilot Collector users may be logins, names, or emails.
  • Prefer per-agent sections over a single merged table when dimensions differ.
  • For "which agent is most used": compare sessions and users first, then tokens or span counts with caveats.
  • For "which agent costs the most": Claude Code has first-class USD metrics. Copilot direct spans expose
    github.copilot.cost
    . Collector billing metrics expose net/gross/discount amounts by organization/SKU. Do not merge Copilot span cost and collector billing without explaining the source and unit difference.

比较 Agent 时:
  • 比较前先统一单位: 成本使用 USD,tokens 区分为 input/output/total,运行时间使用毫秒,sessions 按不同的 conversations 计算。
  • 说明哪些信号不可直接比较。 Cursor 的 prompt 长度不等同于提供商 token 数量。Copilot CLI direct 用户使用假名 ID(
    enduser.pseudo.id
    ),而不是电子邮件地址。GitHub Copilot Collector 用户可能是 login、姓名或电子邮件地址。
  • 当数据维度存在差异时,优先使用按 Agent 划分的独立章节,而不是合并为单个表格。
  • 对于“哪个 Agent 使用量最高”:先比较 sessions 和 users,再比较 tokens 或 span 数量,并说明相关注意事项。
  • 对于“哪个 Agent 成本最高”:Claude Code 提供一等公民的 USD 指标。Copilot direct spans 公开
    github.copilot.cost
    。Collector 计费指标按 organization/SKU 公开净额、毛额和折扣金额。不要在未说明数据源和单位差异的情况下合并 Copilot span 成本与 Collector 计费数据。

Answer Style

回答风格

Always include:
  • The agent and data source used.
  • The query or a compact query excerpt.
  • The time range and filters applied.
  • A plain-language interpretation of the result.
  • Caveats about empty data, approximate counts, pseudonymous users, missing labels, or non-comparable metrics.
Do not invent fields not listed in the agent reference files. If the user asks for data an agent does not emit, say what is available and propose the nearest supported query.
始终包含:
  • 所使用的 Agent 和数据源。
  • 查询语句或精简的查询片段。
  • 所应用的时间范围和筛选条件。
  • 对结果的通俗语言解释。
  • 关于空数据、近似计数、假名用户、缺失标签或指标不可比较的注意事项。
不要臆造 Agent 参考文件中未列出的字段。如果用户询问某个 Agent 未产生的数据,请说明有哪些可用数据,并提出最接近的受支持查询。