java/src/main/resources/targets/claude/skills/core/ops/x-telemetry-trend/SKILL.md
Detect cross-epic P95 regressions (>= threshold %) and rank top-10 slowest skills from the global telemetry index. Single-responsibility partner of /x-telemetry-analyze focused on trend detection, not point-in-time reporting. Use to answer 'is skill X getting slower over the last N epics?' with evidence.
npx skillsauth add edercnj/ia-dev-environment x-telemetry-trendInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Detect performance regressions across multiple epics using the append-only
NDJSON telemetry logs. /x-telemetry-trend complements /x-telemetry-analyze:
analyze answers "which phase is the bottleneck in epic X"; trend answers
"is skill X getting slower over the last N epics?".
The skill consumes the global index at .claude/telemetry/index.json
(on-demand; gitignored), aggregates P95 per skill per epic, and emits:
| Argument | Behaviour |
| :--- | :--- |
| --last N | Analyze the most-recent N epics (default 5). |
| --threshold-pct P | Minimum delta % to classify as a regression (default 20). |
| --baseline mean\|median | Baseline aggregation (default median — outlier-robust). |
| --format md\|json | Output format (default md). |
| --out path | Destination path. When omitted, writes to stdout (RULE-007). |
| --base-dir path | Override plans/ (test-only). |
| --index-path path | Override the cache path (test-only). |
| --rebuild-index | Force rebuild ignoring the cache. |
java -cp target/classes:target/dependency/* \
dev.iadev.telemetry.trend.TelemetryTrendCli \
--last 5 --threshold-pct 20 --baseline median
| Code | Meaning |
| :--- | :--- |
| 0 | Success. Report emitted to stdout or --out path. |
| 1 | Validation error (bad --last, --baseline, or --format value). |
| 5 | Fewer than 2 epics with data — trend analysis needs a comparable series. |
| 6 | --threshold-pct is negative. |
plans/epic-*\/telemetry/events.ndjson. The index is persisted at
.claude/telemetry/index.json and invalidated when an epic's NDJSON
mtime changes.--last N epics (natural ID order).deltaPct >= threshold, emit a regression entry; sort regressions by
deltaPct descending, cap at top-10.The index builder uses TelemetryReader.streamSkippingInvalid() so memory
stays bounded in the per-skill duration arrays.
# Default: last 5 epics, threshold 20 %, baseline median → stdout
/x-telemetry-trend
# Strict: threshold 10 %, mean baseline, write JSON to disk
/x-telemetry-trend --threshold-pct 10 --baseline mean --format json \
--out plans/epic-0040/reports/trends.json
# Historical deep dive: last 10 epics, report to a custom path
/x-telemetry-trend --last 10 --out reports/quarterly-trends.md
testing
Scaffolds a Helidon SE/MP service with routing, health, config, Dockerfile, and tests.
tools
Generates a Picocli @Command with subcommands, options, converters, and unit tests.
testing
Scaffolds a Micronaut service with @Controller, DI, health, Dockerfile, and tests.
testing
Scaffolds a Helidon SE/MP service with routing, health, config, Dockerfile, and tests.