Agent skill

Audit Activation

by yonatangross in yonatangross/orchestkit

Audits sub-agent activation from explicit consumer telemetry roots.

MITAuto-check: notesAgent Workflows

Install Audit Activation

skills CLI
$ npx skills add yonatangross/orchestkit --skill audit-activation -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install yonatangross/orchestkit audit-activation --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/yonatangross/orchestkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/src/skills/audit-activation .claude/skills/audit-activation && rm -rf skills-src

Use ~/.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/

Facts

Skill name
audit-activation
GitHub stars
290
Token cost
~2.6k tokens
SKILL.md length
897 words
Files
8 (incl. scripts, references)
Skills in repo
108
Repo updated
First seen
Licence
MIT

At a glance

Audits sub-agent activation from explicit consumer telemetry roots.

  • Works in 6 steps: Run the script FIRST — every audit… → Inventory — let the script resolve its… → Read telemetry —… → …
  • Specialized agents feel under-used
  • SKILL.md covers Quick Reference, CRITICAL: Task Management is…, Workflow and Report Contract (every audit…, plus 5 more sections
  • Runs JavaScript and Shell scripts from its folder; calls bash

What it does

Audit Activation is an agent skill from yonatangross/orchestkit. Audits sub-agent activation from explicit consumer telemetry roots. It separates attempted, started, completed, and unattributed events, reports coverage, and identifies observed zero starts without making an estate-wide dormancy claim. Use when specialized agents feel under-used, before pruning the catalog, or after wiring new agent spawn paths.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. The skill folder holds 10 other files, including scripts and reference files (for example `references/output-format.md`, `rules/_sections.md` and `rules/activation-checks.md`). Compatibility notes: Claude Code 2.1.277+

It sits in Agent Workflows, covering Subagents. The repository describes itself as: The Complete AI Development Toolkit for Claude Code. 106 skills, 36 agents, 171 hooks. Install ork for stable (v9.x), or ork-alpha for the v10 line, which ships daily. The licence is MIT.

When your agent uses it

  • Specialized agents feel under-used
  • Before pruning the catalog
  • After wiring new agent spawn paths

Example prompts

  • “Use the audit-activation skill to audit sub-agent activation from explicit consumer telemetry roots”
  • “/audit-activation”

Requirements

  • Python 3
  • Node.js
  • A Bash shell
  • Compatibility (from SKILL.md): Claude Code 2.1.277+
  • Pre-approved tools (allowed-tools): Read, Glob, Grep, Bash, TaskCreate, TaskUpdate, TaskList

Workflow steps

6 steps, taken from the first numbered list in SKILL.md.

  1. Run the script FIRST — every audit starts by running (or, when execution is impossible, explicitly referencing) the deterministic collector
  2. Inventory — let the script resolve its own source or installed agents/ catalog. Do not point it at a consumer project's agent directory.
  3. Read telemetry — .claude/logs/subagent-spawns.jsonl carries pretool intent and start events. Triangulate it with the restored global…
  4. Compute — all checks from Read("rules/activation-checks.md"); the Report Contract below lists the mandatory ones.
  5. Classify — bucket every agent using the Four Buckets below (full procedure: Read("rules/activation-status.md")).
  6. Render — output per Read("references/output-format.md"), satisfying the Report Contract.

What it can do on your machine

Read from SKILL.md and the folder at commit 02bbf9a. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Glob
    • Grep
    • Bash
    • TaskCreate
    • TaskUpdate
    • TaskList

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (JavaScript and Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • bash

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

  • Compatibility

    Claude Code 2.1.277+

    From compatibility in the SKILL.md frontmatter.

Context cost

Audit Activation loads about 2.6k tokens when it runs, and up to ~3k if it reads all its reference files. Until then it costs about 91 tokens; SKILL.md has 897 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~91
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3k

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.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Glob, Grep, Bash, TaskCreate, TaskUpdate, TaskList

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.

SKILL.md

The full file from yonatangross/orchestkit at commit 02bbf9a, republished under its MIT licence (© yonatangross). 897 words, ~2,553 tokens.

Download SKILL.mdSave it as .claude/skills/audit-activation/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.
name
audit-activation
description
Audits sub-agent activation from explicit consumer telemetry roots. It separates attempted, started, completed, and unattributed events, reports coverage, and identifies observed zero starts without making an estate-wide dormancy claim. Use when specialized agents feel under-used, before pruning the catalog, or after wiring new agent spawn paths.
allowed-tools
Read, Glob, Grep, Bash, TaskCreate, TaskUpdate, TaskList
compatibility
Claude Code 2.1.277+
user-invocable
true
disable-model-invocation
false
argument-hint
[--json]
context
fork
background
false
metadata.version
1.0.0
metadata.author
OrchestKit
metadata.complexity
medium
metadata.tags
audit, agents, activation, telemetry, orchestkit

audit-activation

Reports whether OrchestKit's specialized sub-agents are actually being activated, from real spawn telemetry — not vibes. Scope is agent activation, not skill quality.

It answers: "Do my specialized agents get spawned, or does the model default to generic Explore/general-purpose?" Read-only — it never edits agents.

Why this exists: a 2026-06 audit found only ~14% of agent spawns hit the 36-agent catalog vs ~74% generic, with 17/36 agents dormant — and that agents fire ~1:1 with how often a high-traffic skill names them via subagent_type=. Description rewrites ("use proactively") were A/B-tested and gave Δ0, so this skill measures wiring + usage, not description prose. See docs/feat--activation-audit/.

Quick Reference

CategoryFileImpactWhen to Use
Activation Checksrules/activation-checks.mdHIGHWhat to compute per agent
Classificationrules/activation-status.mdHIGHfires / mis-triggered / niche / dead buckets
Output Formatreferences/output-format.mdMEDIUMReport layout + the spawn-split summary

CRITICAL: Task Management is MANDATORY (CC 2.1.16)

python
TaskCreate(subject="Audit activation: agent spawn analysis",
  description="Computing generic-vs-specialist split + dormancy from spawn telemetry",
  activeForm="Auditing agent activation")
TaskCreate(subject="Read spawn telemetry", activeForm="Reading subagent-spawns.jsonl")
TaskCreate(subject="Compute split + observed zero starts", activeForm="Computing activation events and coverage")
TaskCreate(subject="Classify & render", activeForm="Classifying agents and rendering report")
TaskUpdate(taskId="3", addBlockedBy=["2"])
TaskUpdate(taskId="4", addBlockedBy=["3"])

Workflow

  1. Run the script FIRST — every audit starts by running (or, when execution is impossible, explicitly referencing) the deterministic collector:

    bash
    bash "${CLAUDE_SKILL_DIR}/scripts/run-activation-audit.sh" \
      --telemetry-root /path/to/consumer-project \
      --stop-feed "$HOME/.claude/analytics/agent-usage.jsonl" \
      --days 30 --json

    It resolves the catalog beside its source or installed script, while every consumer telemetry root is explicit. It reports attempts, starts, and stop-feed completions separately. Never eyeball JSONL by hand when the script exists.

  2. Inventory — let the script resolve its own source or installed agents/ catalog. Do not point it at a consumer project's agent directory.

  3. Read telemetry — .claude/logs/subagent-spawns.jsonl carries pretool intent and start events. Triangulate it with the restored global ~/.claude/analytics/agent-usage.jsonl stop feed when available. The streams have no stable common event ID, so never add them together or infer unique spawns.

  4. Compute — all checks from Read("rules/activation-checks.md"); the Report Contract below lists the mandatory ones.

  5. Classify — bucket every agent using the Four Buckets below (full procedure: Read("rules/activation-status.md")).

  6. Render — output per Read("references/output-format.md"), satisfying the Report Contract.

Report Contract (every audit MUST include all six)

  1. Data-source line (first line of the report) — name scripts/run-activation-audit.sh, every explicit consumer .claude/logs/subagent-spawns.jsonl root, the UTC window, and the spawn coverage state (observed, missing, empty, or partial). State whether ~/.claude/analytics/agent-usage.jsonl was supplied as a stop feed. A report that presents numbers without these coverage facts is invalid.
  2. Spawn split — generic (Explore/general-purpose/Plan) vs ork-catalog vs other-plugin, as counts AND percentages (e.g. "412 generic (74%) / 78 ork-catalog (14%) / 67 other (12%)"). Never percentages alone.
  3. Concentration — the top-5 agents' share of all catalog spawns as a percentage (e.g. "top-5 = 81% of catalog spawns"), plus the top-5 list with fire counts.
  4. Observed-zero-start list — only when spawn coverage is observed, enumerate every catalog agent with zero start events in the supplied roots, one per line with its reference count and bucket. This is not an estate-wide or lifetime dormancy claim. Do not render the list when coverage is missing, empty, or partial.
  5. Window caveat — state that observed-zero-start names are absent only from the supplied roots and UTC window. They are a routing signal, not proof of zero estate-wide or lifetime use.
  6. Four-bucket classification table (below) + fix recommendations — wiring changes only (see Hard Rules).
Show full SKILL.md (400 more words)Show less

Classification: the Four Buckets (rules/activation-status.md)

Bucket by reference counts, never by description quality. For each observed-zero-start agent, count its real spawn references: grep -rc "subagent_type=ork:<name>" src/skills/ (plus agent:/team-map mentions in src/agents/). Show the evidence: cite that grep command in the report and put each agent's ref-count (with an example source file, e.g. src/skills/cover/SKILL.md) in the classification table. The telemetry observation proves only starts in supplied roots; the grep proves wiring. Render classification only when coverage is observed.

BucketConditionAction
ACTIVEfired ≥1× in the telemetry windownone — it works
MIS-TRIGGEREDobserved zero starts, has references but no real subagent_type= spawn from a busy skillwire a spawn from a high-traffic skill
NICHEobserved zero starts, rare-by-nature domain (design, multimodal, perf, IaC, security-LLM) AND wired somewherekeep - low use expected
DEADobserved zero starts AND zero references in ANY skill or agentprune candidate

DEAD requires zero references anywhere — an agent with even one reference is never DEAD; it is mis-triggered or niche. Only DEAD agents are prune candidates.

Hard Rules

  • Never recommend rewriting agent descriptions. A/B-tested: description rewrites gave Δ0 routing benefit. Dormancy is a skill-wiring problem — the fix is always adding a subagent_type=ork:<name> spawn from a high-traffic skill (e.g. implement, cover, review-pr), never prose changes.
  • Classify by reference count, not description quality. The grep above is the evidence; "the description is vague" is not.
  • State the telemetry window, supplied roots, and coverage state in EVERY answer — including classification-only or prune-decision answers. Observed-zero-start is never an estate-wide dormancy claim.
  • Keep event semantics separate. Pretool is attempted intent, source:start is started activation, and agent-usage.jsonl is a stop/completion observation. Cite all supplied sources and never sum them into a unique-spawn claim.
  • Answer with the report itself, never with only a description of the process. Even when you cannot execute the script in the current context, render the full contract-format report (state which numbers are from the latest available run vs illustrative).
  • Read-only: this skill never edits agents.

Example report shape (illustrative numbers — imitate the FORM exactly)

markdown
Data: scripts/run-activation-audit.sh over /consumer/.claude/logs/subagent-spawns.jsonl (window: 2026-05-23T00:00:00Z to 2026-07-14T00:00:00Z; coverage: observed)
Stop feed: ~/.claude/analytics/agent-usage.jsonl supplied separately; it is not joined to starts.

## Spawn split
Total 560 spawns: 412 generic (74%) / 78 ork-catalog (14%) / 70 other-plugin (12%)

## Concentration
Top-5 = 63/78 catalog spawns (81%): web-research-analyst 26, code-quality-reviewer 21,
test-generator 8, debug-investigator 5, backend-system-architect 3

## Observed zero-start agents (6 of 20 in the supplied roots, refs via grep -rc "subagent_type=ork:<name>" src/skills/)
- emulate-engineer      (3 refs)  -> MIS-TRIGGERED
- expect-agent          (3 refs)  -> MIS-TRIGGERED
- design-system-architect (2 refs) -> NICHE (rare domain, wired)
- multimodal-specialist (1 ref)   -> NICHE (rare domain, wired)
- infrastructure-architect (2 refs) -> NICHE (rare domain, wired)
- event-driven-architect (1 ref)  -> MIS-TRIGGERED

Caveat: observed zero starts are absent only from the supplied telemetry roots and
window. They are not proof of zero estate-wide or lifetime use.

## Buckets (rules/activation-status.md)
ACTIVE (14) | MIS-TRIGGERED (3) | NICHE (3) | DEAD (0 — none: every agent has >=1 reference)

## Fixes (wiring only — never description rewrites)
- emulate-engineer: add subagent_type=ork:emulate-engineer spawn from cover (src/skills/cover/SKILL.md)
- expect-agent: add subagent_type=ork:expect-agent spawn from review-pr

Chain

After this audit, run the deeper experiment if you suspect descriptions: docs/feat--activation-audit/agent-routing-experiment.mjs (isolated A/B selection harness).

  • telemetry-inspect — validates the telemetry data-plane this skill reads from
  • analytics — raw usage queries across projects
  • doctor — broader plugin health (manifests, hooks, memory budget)

Eval note: this skill is direct-only (disable-model-invocation: true), so quality evals run in TIER-1 unit mode (--force-skill) — routed evals are impossible by construction.

© yonatangross, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 7 other files (scripts, references) in src/skills/audit-activation of yonatangross/orchestkit.

  • SKILL.md
  • references/output-format.md
  • rules/_sections.md
  • rules/activation-checks.md
  • rules/activation-status.md
  • scripts/collect-activation-audit.mjs
  • scripts/run-activation-audit.sh
  • test-cases.json

Open the folder on GitHubat commit 02bbf9a

Compare with similar skills

Audit Activation 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.

Audit Activation compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Audit Activation this skillyonatangross/orchestkit290—~2.6kAutomated safety check: NotesMIT
Claude Code Agent Developmentanthropics/claude-plugins-official38k7 repos~2.8kAutomated safety check: PassApache-2.0
Subagent Driven DevelopmentAsvarox/allkaraoke26137 repos~1.2kAutomated safety check: PassNone
Dispatching Parallel Agentsultralisp/ultralisp25840 repos~1.5kAutomated safety check: PassNone
Paseo Advisor Second Opiniongetpaseo/paseo20k1 repos~756Automated safety check: PassCustom licence
Task Observerrebelytics/one-skill-to-rule-them-all3.2k1 repos~12kAutomated safety check: PassCC-BY-4.0

Similar skills

  • Claude Code Agent Development

    anthropics/claude-plugins-official

    Official

    Explains how to write agents for Claude Code plugins: the markdown file with YAML frontmatter, trigger descriptions, model and color settings, and system prompt design.

    38k GitHub starsUsed in 7 repos~2.8k tokens
    Agent WorkflowsAuto-check passed
  • Subagent Driven Development

    Asvarox/allkaraoke

    A skill your agent uses when executing implementation plans with independent tasks in the current session

    261 GitHub starsUsed in 37 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • Dispatching Parallel Agents

    ultralisp/ultralisp

    A skill your agent uses when facing 2+ independent tasks that can be worked on without shared state or sequential dependencies

    258 GitHub starsUsed in 40 repos~1.5k tokens
    Agent WorkflowsAuto-check passed
  • Launches one separate agent through Paseo to give a second opinion on the current task, with a self-contained briefing and no permission to edit files.

    20k GitHub starsUsed in 1 repo~756 tokens
    Agent WorkflowsAuto-check passed
  • Task Observer

    rebelytics/one-skill-to-rule-them-all

    Monitors task execution for skill improvement opportunities.

    3.2k GitHub starsUsed in 1 repo~12k tokens
    Agent WorkflowsAuto-check passed
  • O2 Review Loop

    openobserve/openobserve

    Splits a change into planner, coder and independent reviewer roles: you confirm a spec, a subagent implements it, and a separate reviewer checks each round's local WIP commit.

    22k GitHub stars~3.7k tokensUpdated today
    Agent WorkflowsAuto-check passed

More from yonatangross/orchestkit

All 108 skills in this repo
  • API Design

    yonatangross/orchestkit

    API contract design for REST and GraphQL, covering resource shape, URL and header versioning with deprecation windows, RFC 9457 Problem Details error handling, and OpenAPI specs.

    290 GitHub stars~2.9k tokensUpdated today
    Auto-check passed
  • Architecture Decision Record

    yonatangross/orchestkit

    ADR templates in the Nygard format with context, decision, consequences, and alternatives.

    290 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Audit Full

    yonatangross/orchestkit

    Single-pass codebase analysis leveraging a 1M-token context window for comprehensive security scanning, architecture review, and dependency auditing.

    290 GitHub stars~3.5k tokensUpdated today
    Auto-check: notes
  • Code Review Playbook

    yonatangross/orchestkit

    Structured review processes, conventional comments, language-specific checklists, and feedback templates.

    290 GitHub stars~2.2k tokensUpdated today
    Auto-check passed
  • Create PR

    yonatangross/orchestkit

    Creates GitHub pull requests with pre-flight validation, conventional title formatting, and structured summary generation.

    290 GitHub stars~4.5k tokensUpdated today
    Auto-check: notes
  • Explore

    yonatangross/orchestkit

    Multi-angle codebase exploration spawning 3-5 parallel agents for code structure, data flow, architecture patterns, and health assessment.

    290 GitHub stars~3.9k tokensUpdated today
    Auto-check: notes

Categories

Questions about Audit Activation

What does Audit Activation do?

Audits sub-agent activation from explicit consumer telemetry roots. Audit Activation is an agent skill from yonatangross/orchestkit. Audits sub-agent activation from explicit consumer telemetry roots.

When should I use Audit Activation?

Audit Activation fits situations like: specialized agents feel under-used; before pruning the catalog; after wiring new agent spawn paths.

How do I install Audit Activation in Claude Code?

Run `npx skills add yonatangross/orchestkit --skill audit-activation -a claude-code`. Or copy the skill folder (src/skills/audit-activation in yonatangross/orchestkit) into .claude/skills/audit-activation in your project. Claude Code loads it when a task matches its description.

How do I install Audit Activation in Codex?

Run `npx skills add yonatangross/orchestkit --skill audit-activation -a codex`. Or copy the skill folder (src/skills/audit-activation in yonatangross/orchestkit) into .agents/skills/audit-activation in your project. Codex loads it when a task matches its description.

Can I use Audit Activation in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add yonatangross/orchestkit --skill audit-activation -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/audit-activation, .gemini/skills/audit-activation, .github/skills/audit-activation and .opencode/skills/audit-activation in your project.

What does Audit Activation need to run?

Going by SKILL.md and its folder, Audit Activation needs JavaScript and a shell for the scripts in its folder and the command-line tools its instructions call (bash). Our summary lists: Python 3; Node.js; A Bash shell. Its frontmatter pre-approves these tools: Read, Glob, Grep, Bash, TaskCreate, TaskUpdate, TaskList. Compatibility (from SKILL.md): Claude Code 2.1.277+.

Does Audit Activation access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Audit Activation safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. 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.

What licence does Audit Activation use?

Audit Activation is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Audit Activation use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 474 tokens, read only when the agent opens those files.

What are the alternatives to Audit Activation?

Skills that share tags, products or a category with Audit Activation: Claude Code Agent Development (anthropics/claude-plugins-official, 38k stars), Subagent Driven Development (Asvarox/allkaraoke, 261 stars), Dispatching Parallel Agents (ultralisp/ultralisp, 258 stars) and Paseo Advisor Second Opinion (getpaseo/paseo, 20k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Audit Activation?

yonatangross (a GitHub user) maintains it in yonatangross/orchestkit, which has 290 GitHub stars. The repository holds 108 skills in this directory. The repository was last updated on October 9, 2026.

Source: yonatangross/orchestkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.