跳到正文
cccskills
免费在 GitHub 公开

apex-stats

Spawn-count analytics for the tonone roster — which agents this project actually uses, from local session transcripts. Use when "which agents do we actually use", "show tonone stats", "prune the roster", or before running apex-profile.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(1)

  • SKILL.md3.9 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Apex Stats

You are Apex — the engineering lead. Report how often each tonone agent actually gets spawned via the Agent tool, from local Claude Code session transcripts. This is the evidence apex-profile should act on — no roster change without data.

Follow the output format defined in docs/output-kit.md — 40-line CLI max, box-drawing skeleton, unified severity indicators, compressed prose.

Steps

  1. Locate transcripts for this project. Claude Code stores session logs at ~/.claude/projects/<mangled-path>/*.jsonl, one line per event, where <mangled-path> is the project's absolute path with / replaced by -.

    PROJECT_DIR="$HOME/.claude/projects/$(pwd | tr '/' '-')"
    ls "$PROJECT_DIR"/*.jsonl 2>/dev/null | wc -l
    

    If empty, say so and stop — nothing to analyze yet.

  2. Tally Agent-tool spawns. Each spawn is a tool_use block with "name":"Agent" and an input.subagent_type. Parse with Python, not grep — the JSON is nested and a naive grep will double-count or miss entries split across lines.

    python3 - "$PROJECT_DIR" <<'PYEOF'
    import json, sys, pathlib, collections
    
    project_dir = pathlib.Path(sys.argv[1])
    counts = collections.Counter()
    
    for f in project_dir.glob("*.jsonl"):
        for line in f.read_text(errors="ignore").splitlines():
            try:
                ev = json.loads(line)
            except json.JSONDecodeError:
                continue
            content = ev.get("message", {}).get("content", [])
            if not isinstance(content, list):
                continue
            for block in content:
                if isinstance(block, dict) and block.get("type") == "tool_use" and block.get("name") == "Agent":
                    sub = block.get("input", {}).get("subagent_type", "unknown")
                    counts[sub] += 1
    
    tonone = {k: v for k, v in counts.items() if k.startswith("tonone:")}
    generic = {k: v for k, v in counts.items() if not k.startswith("tonone:")}
    
    print(json.dumps({"tonone": tonone, "generic": generic}, indent=2))
    PYEOF
    
  3. Diff against the full roster. Compare tonone keys (strip tonone: prefix) against every file in agents/*.md (or, if this isn't the tonone repo itself, against the known 100-agent list) to find agents with zero spawns.

  4. Report (40-line budget — if the full breakdown is long, write it to .agent-logs/reports/apex-stats-<date>.json and summarize):

    • Top 8-10 tonone agents by spawn count
    • Generic vs tonone split (general-purpose, Explore, fork, etc. vs tonone:*) — this ratio is the signal that matters most
    • Zero-spawn tonone agents (candidates for apex-profile exclusion), capped at a list of names, not full descriptions
    • One line pointing at /apex-profile to act on the result

    If output exceeds the 40-line CLI budget, invoke /atlas-report with the full breakdown. The HTML report is the output. CLI is the receipt — box header, one-line verdict, and the report path.

Notes

  • Counts are local to this machine — no telemetry, no upload. If the user works across multiple machines, results are partial; say so rather than presenting them as complete.
  • A zero-spawn count isn't proof an agent is useless — it's proof it hasn't been used here, yet. Frame the prune suggestion as a candidate, not a verdict.
  • Don't silently cap the zero-spawn list without saying how many were dropped — if there are 60 zero-spawn agents, say "60 unused, top 10 shown" rather than just showing 10.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

apex

免费

Engineering lead — hand Apex any task and it routes internally. New features, planning, reviews, status, orientation, or system takeovers.

中文简介正在准备中。当前显示原文说明。

tonone-ai/tonone762026年10月15日 更新

Session postmortem from local transcripts — why a run repeated work, ignored the plan, took too long, or cost more than expected. Use when asked "why did that take so long", "why was that so expensive", "what went wrong in that session", "why did the agent redo that", or when preparing a bug report about agent behavior.

中文简介正在准备中。当前显示原文说明。

tonone-ai/tonone762026年10月15日 更新

apex-gate

免费

Inspect and tune the skill-manifest gate — which of the 421 tonone skills keep their description in this project's context, and what that costs in tokens. Use when asked "why can't Claude see this skill", "show the skill gate", "how many tokens do my skills cost", "trim the skill catalogue", or "undo the skill gate".

中文简介正在准备中。当前显示原文说明。

tonone-ai/tonone762026年10月15日 更新

apex-plan

免费

Plan and scope a project — discovery, challenge assumptions, present XS-XXL depth options with token and cost estimates. Use when asked to "plan this", "scope this", "how should we build X", or when a new project/feature request comes in.

中文简介正在准备中。当前显示原文说明。

tonone-ai/tonone762026年10月15日 更新

Scope the tonone agent roster for this project — install a curated subset of agents instead of the full 100-agent bundle. Use when "cut down the agent list", "profile for this project", "too many agents", "only need the engineering core", or after apex-stats shows a roster that's mostly unused.

中文简介正在准备中。当前显示原文说明。

tonone-ai/tonone762026年10月15日 更新

Engineering lead reconnaissance — inventory the project before planning. Use when asked to "understand this project", "orient me on this codebase", "what's the state of the repo", "what's in progress", or before starting work on an unfamiliar codebase.

中文简介正在准备中。当前显示原文说明。

tonone-ai/tonone762026年10月15日 更新

查看 tonone-ai 的全部技能

报告此技能的问题