[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M754GV8PZ976YYSRBG52307R":3,"skill-same:01M754GV8PZ976YYSRBG52307R":51},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":18,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":28,"commitSha":29,"skillDirectory":30,"forksCount":31,"repositoryHtmlUrl":32,"repositoryHomepageUrl":6,"ownerHtmlUrl":33,"ownerBlogUrl":34,"ownerDescription":35,"updatedAt":36,"install":37,"resources":50},"01M754GV8PZ976YYSRBG52307R","x-analyze-telemetry-trends",null,"Detect cross-epic P95 regressions (>= threshold %) and rank top-10 slowest skills from the global telemetry index. Single-responsibility partner of \u002Fx-analyze-telemetry focused on trend detection, not point-in-time reporting. Use to answer 'is skill X getting slower over the last N epics?' with evidence.","review-bench\u002Federcnj_ia-dev-environment","review-bench","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F286778065?v=4","01M7517F9NTEPDZDAXJBR30FWT","ReviewBench","01M7517FAC9F4P7TGWCNJ8VYVW",0,"MIT","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring-fintech-pci\u002F.claude\u002Fskills\u002Fx-analyze-telemetry-trends\u002FSKILL.md",[],[],"2026-11-12 13:55:43",false,"---\nname: x-analyze-telemetry-trends\ndescription: \"Detect cross-epic P95 regressions (>= threshold %) and rank top-10 slowest skills from the global telemetry index. Single-responsibility partner of \u002Fx-analyze-telemetry focused on trend detection, not point-in-time reporting. Use to answer 'is skill X getting slower over the last N epics?' with evidence.\"\nallowed-tools: Read, Write, Bash, Grep, Glob\nargument-hint: \"[--last N] [--threshold-pct P] [--baseline mean|median] [--format md|json] [--out path]\"\ncontext-budget: light\nrequires-capabilities: []\n---\n\n## Global Output Policy\n\n- **Language**: English ONLY.\n- **Tone**: Technical, Direct, and Concise.\n- **Efficiency**: Remove all conversational fillers and greetings to save tokens.\n\n# Skill: Telemetry Trend\n\n## Purpose\n\nDetect performance regressions across multiple epics using the append-only\nNDJSON telemetry logs. `\u002Fx-analyze-telemetry-trends` complements `\u002Fx-analyze-telemetry`:\nanalyze answers \"which phase is the bottleneck in epic X\"; trend answers\n\"is skill X getting slower over the last N epics?\".\n\nThe skill consumes the global index at `.claude\u002Ftelemetry\u002Findex.json`\n(on-demand; gitignored), aggregates P95 per skill per epic, and emits:\n\n1. Top-10 regressions whose P95 delta vs. a moving baseline exceeds the\n   configured threshold.\n2. Top-10 slowest skills by mean-of-P95 across the analyzed window.\n3. An interpretive observations block.\n\n## When to Use\n\n- Periodic performance audit after a batch of merged stories.\n- Before a refactor: confirm that a slow skill is trending up (not a fluke).\n- In a CI job that should flag sustained regressions across epics.\n\n## Arguments\n\n| Argument | Behaviour |\n| :--- | :--- |\n| `--last N` | Analyze the most-recent N epics (default 5). |\n| `--threshold-pct P` | Minimum delta % to classify as a regression (default 20). |\n| `--baseline mean\\|median` | Baseline aggregation (default median — outlier-robust). |\n| `--format md\\|json` | Output format (default md). |\n| `--out path` | Destination path. When omitted, writes to stdout (RULE-007). |\n| `--base-dir path` | Override `plans\u002F` (test-only). |\n| `--index-path path` | Override the cache path (test-only). |\n| `--rebuild-index` | Force rebuild ignoring the cache. |\n\n## Invocation\n\n```bash\njava -cp target\u002Fclasses:target\u002Fdependency\u002F* \\\n     dev.iadev.telemetry.trend.TelemetryTrendCli \\\n     --last 5 --threshold-pct 20 --baseline median\n```\n\n## Exit Codes\n\n| Code | Meaning |\n| :--- | :--- |\n| 0 | Success. Report emitted to stdout or `--out` path. |\n| 1 | Validation error (bad `--last`, `--baseline`, or `--format` value). |\n| 5 | Fewer than 2 epics with data — trend analysis needs a comparable series. |\n| 6 | `--threshold-pct` is negative. |\n\n## Algorithm\n\n1. Build (or refresh) the per-skill per-epic P95 index by scanning\n   `ai\u002Fepics\u002Fepic-*\\\u002Ftelemetry\u002Fevents.ndjson`. The index is persisted at\n   `.claude\u002Ftelemetry\u002Findex.json` and invalidated when an epic's NDJSON\n   mtime changes.\n2. Restrict to the most-recent `--last N` epics (natural ID order).\n3. For each skill, compute the baseline (mean or median) of the N-1 oldest\n   samples and compare against the current (latest) sample.\n4. If `deltaPct >= threshold`, emit a regression entry; sort regressions by\n   deltaPct descending, cap at top-10.\n5. Rank skills by mean-of-P95 across the window; cap at top-10.\n\n## Output Layout (Markdown)\n\n1. Header — generated-at, epics analyzed, threshold, baseline.\n2. Top-10 regressions table (skill, baseline P95, current P95, delta%, epics).\n3. Top-10 slowest skills table (skill, avg P95, invocations).\n4. Observations — interpretive notes (regressions count, slowest skill).\n\n## Performance Contract\n\n- 5 epics × 10 000 events → report in \u003C 10 s (hard SLA, story §3.5).\n\nThe index builder uses `TelemetryReader.streamSkippingInvalid()` so memory\nstays bounded in the per-skill duration arrays.\n\n## Examples\n\n```bash\n# Default: last 5 epics, threshold 20 %, baseline median → stdout\n\u002Fx-analyze-telemetry-trends\n\n# Strict: threshold 10 %, mean baseline, write JSON to disk\n\u002Fx-analyze-telemetry-trends --threshold-pct 10 --baseline mean --format json \\\n    --out ai\u002Fepics\u002Fepic-XXXX\u002Freports\u002Ftrends.json\n\n# Historical deep dive: last 10 epics, report to a custom path\n\u002Fx-analyze-telemetry-trends --last 10 --out reports\u002Fquarterly-trends.md\n```\n","## Global Output Policy\n\n- **Language**: English ONLY.\n- **Tone**: Technical, Direct, and Concise.\n- **Efficiency**: Remove all conversational fillers and greetings to save tokens.\n\n# Skill: Telemetry Trend\n\n## Purpose\n\nDetect performance regressions across multiple epics using the append-only\nNDJSON telemetry logs. `\u002Fx-analyze-telemetry-trends` complements `\u002Fx-analyze-telemetry`:\nanalyze answers \"which phase is the bottleneck in epic X\"; trend answers\n\"is skill X getting slower over the last N epics?\".\n\nThe skill consumes the global index at `.claude\u002Ftelemetry\u002Findex.json`\n(on-demand; gitignored), aggregates P95 per skill per epic, and emits:\n\n1. Top-10 regressions whose P95 delta vs. a moving baseline exceeds the\n   configured threshold.\n2. Top-10 slowest skills by mean-of-P95 across the analyzed window.\n3. An interpretive observations block.\n\n## When to Use\n\n- Periodic performance audit after a batch of merged stories.\n- Before a refactor: confirm that a slow skill is trending up (not a fluke).\n- In a CI job that should flag sustained regressions across epics.\n\n## Arguments\n\n| Argument | Behaviour |\n| :--- | :--- |\n| `--last N` | Analyze the most-recent N epics (default 5). |\n| `--threshold-pct P` | Minimum delta % to classify as a regression (default 20). |\n| `--baseline mean\\|median` | Baseline aggregation (default median — outlier-robust). |\n| `--format md\\|json` | Output format (default md). |\n| `--out path` | Destination path. When omitted, writes to stdout (RULE-007). |\n| `--base-dir path` | Override `plans\u002F` (test-only). |\n| `--index-path path` | Override the cache path (test-only). |\n| `--rebuild-index` | Force rebuild ignoring the cache. |\n\n## Invocation\n\n```bash\njava -cp target\u002Fclasses:target\u002Fdependency\u002F* \\\n     dev.iadev.telemetry.trend.TelemetryTrendCli \\\n     --last 5 --threshold-pct 20 --baseline median\n```\n\n## Exit Codes\n\n| Code | Meaning |\n| :--- | :--- |\n| 0 | Success. Report emitted to stdout or `--out` path. |\n| 1 | Validation error (bad `--last`, `--baseline`, or `--format` value). |\n| 5 | Fewer than 2 epics with data — trend analysis needs a comparable series. |\n| 6 | `--threshold-pct` is negative. |\n\n## Algorithm\n\n1. Build (or refresh) the per-skill per-epic P95 index by scanning\n   `ai\u002Fepics\u002Fepic-*\\\u002Ftelemetry\u002Fevents.ndjson`. The index is persisted at\n   `.claude\u002Ftelemetry\u002Findex.json` and invalidated when an epic's NDJSON\n   mtime changes.\n2. Restrict to the most-recent `--last N` epics (natural ID order).\n3. For each skill, compute the baseline (mean or median) of the N-1 oldest\n   samples and compare against the current (latest) sample.\n4. If `deltaPct >= threshold`, emit a regression entry; sort regressions by\n   deltaPct descending, cap at top-10.\n5. Rank skills by mean-of-P95 across the window; cap at top-10.\n\n## Output Layout (Markdown)\n\n1. Header — generated-at, epics analyzed, threshold, baseline.\n2. Top-10 regressions table (skill, baseline P95, current P95, delta%, epics).\n3. Top-10 slowest skills table (skill, avg P95, invocations).\n4. Observations — interpretive notes (regressions count, slowest skill).\n\n## Performance Contract\n\n- 5 epics × 10 000 events → report in \u003C 10 s (hard SLA, story §3.5).\n\nThe index builder uses `TelemetryReader.streamSkippingInvalid()` so memory\nstays bounded in the per-skill duration arrays.\n\n## Examples\n\n```bash\n# Default: last 5 epics, threshold 20 %, baseline median → stdout\n\u002Fx-analyze-telemetry-trends\n\n# Strict: threshold 10 %, mean baseline, write JSON to disk\n\u002Fx-analyze-telemetry-trends --threshold-pct 10 --baseline mean --format json \\\n    --out ai\u002Fepics\u002Fepic-XXXX\u002Freports\u002Ftrends.json\n\n# Historical deep dive: last 10 epics, report to a custom path\n\u002Fx-analyze-telemetry-trends --last 10 --out reports\u002Fquarterly-trends.md\n```\n",{"name":5,"description":7,"allowed-tools":24,"argument-hint":25,"context-budget":26,"requires-capabilities":27},"Read, Write, Bash, Grep, Glob","[--last N] [--threshold-pct P] [--baseline mean|median] [--format md|json] [--out path]","light",[],"main","952a630c6f38d193a349d86fa18db1de8843e837","src\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring-fintech-pci\u002F.claude\u002Fskills\u002Fx-analyze-telemetry-trends",1,"https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment","https:\u002F\u002Fgithub.com\u002Freview-bench","https:\u002F\u002Freview-bench.ai","An open benchmark for AI code review.","2026-10-27 06:56:37",{"source":8,"skillName":5,"commands":38,"prompt":48,"zipAvailable":49},[39,42,45],{"tool":40,"command":41},"npx","npx skills add review-bench\u002Federcnj_ia-dev-environment --skill x-analyze-telemetry-trends",{"tool":43,"command":44},"bunx","bunx skills add review-bench\u002Federcnj_ia-dev-environment --skill x-analyze-telemetry-trends",{"tool":46,"command":47},"pnpm","pnpm dlx skills add review-bench\u002Federcnj_ia-dev-environment --skill x-analyze-telemetry-trends","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring-fintech-pci\u002F.claude\u002Fskills\u002Fx-analyze-telemetry-trends\u002FSKILL.md",true,[],[52,59,66,73,80,87],{"skillNo":53,"name":54,"nameZh":6,"description":55,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":56,"categories":57,"keywords":58,"publishedAt":19},"01M757M8J48TQ1Y3X25GSJBXAS","x-parallel-eval","Detects and classifies file-collision risks between work units (tasks, stories, or epic phases) before parallel execution. Reads ## File Footprint blocks produced by x-task-plan \u002F x-story-plan, applies the parallelism-heuristics knowledge pack (hard \u002F regen \u002F soft categories + hotspot overrides), and emits a collision matrix + serialization recommendation in Markdown (default) or JSON.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fx-parallel-eval\u002FSKILL.md",[],[],{"skillNo":60,"name":61,"nameZh":6,"description":62,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":63,"categories":64,"keywords":65,"publishedAt":19},"01M757M57XMR9546S69466HDWT","parallelism-heuristics","Canonical catalog of file-collision heuristics for parallel task, story, and epic execution. Defines the File Footprint block format, the three Conflict Categories (hard \u002F regen \u002F soft), a hotspot list of high-contention paths, and the degrade-with-warning policy. Consumed by x-task-plan, x-story-plan, x-epic-map, x-parallel-eval, and x-dev-*-implement.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fparallelism-heuristics\u002FSKILL.md",[],[],{"skillNo":67,"name":68,"nameZh":6,"description":69,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":70,"categories":71,"keywords":72,"publishedAt":19},"01M757M11SZ8P1VCQABT08QVYA","x-watch-pr-ci","Polls a PR's CI checks and Copilot review status, blocking until checks complete or timeout. Returns one of 8 stable exit codes (SUCCESS=0, CI_PENDING_PROCEED=10, CI_FAILED=20, TIMEOUT=30, PR_ALREADY_MERGED=40, NO_CI_CONFIGURED=50, PR_CLOSED=60, PR_NOT_FOUND=70). Writes a versioned state-file for session resume.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-watch-pr-ci\u002FSKILL.md",[],[],{"skillNo":74,"name":75,"nameZh":6,"description":76,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":77,"categories":78,"keywords":79,"publishedAt":19},"01M757KW53K8KFPGADFB4PH949","x-validate-docs","Documentation freshness gate: validates 6 dimensions (readme, api-specs, grpc-proto, adr, skill-docs, system-architecture) against code changes in a PR. Stack-aware — only validates targets declared\u002Fauto-detected from ProjectConfig.documentation.targets. Returns exit non-zero on staleness; produces structured report.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-validate-docs\u002FSKILL.md",[],[],{"skillNo":81,"name":82,"nameZh":6,"description":83,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":84,"categories":85,"keywords":86,"publishedAt":19},"01M757KQZHSA10MKC0CR571D60","x-update-system-architecture","Incrementally updates docs\u002Farchitecture\u002Fsystem.md after an epic completes. Appends new entries to the Decision Log (§11) using x-internal-write-report --append (dedup by ## ID: marker) and surgically inserts component\u002Fintegration changes into sections 1-10 via Edit. Idempotent: re-running with the same epic produces a byte-identical system.md.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-update-system-architecture\u002FSKILL.md",[],[],{"skillNo":88,"name":89,"nameZh":6,"description":90,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":91,"categories":92,"keywords":93,"publishedAt":19},"01M757KKBT5Q1SVF8DMJBVF46M","x-update-architecture","Incrementally updates the service architecture document with changes from architecture plans. Adds new components, integrations, flows, and ADR references without rewriting existing content. Use after implementation to keep architecture documentation current.","https:\u002F\u002Fgithub.com\u002Freview-bench\u002Federcnj_ia-dev-environment\u002Fblob\u002Fmain\u002Fsrc\u002Ftest\u002Fresources\u002Fgolden\u002Fjava-spring\u002Fplatform-claude-code\u002F.claude\u002Fskills\u002Fx-update-architecture\u002FSKILL.md",[],[]]