Back to list
DennisToma

track-metrics

by DennisToma

0🍴 0📅 Jan 13, 2026

SKILL.md


name: track-metrics description: Record task metrics after completing work. Use after /verify or any completed task to build measurement data.

Track Task Metrics

Record objective task outcomes to measure if the repo's systems actually improve results.

When to Invoke

  • After /verify completes
  • After any task completes (success or failure)
  • After debugging sessions
  • When hooks block something

Instructions

Step 1: Gather Task Data

Collect the following (ask user if unclear):

Outcome Data:

FieldHow to Determine
task_typefeature, bugfix, refactor, debug, research, config
outcomesuccess, partial, failure
descriptionOne-line summary of what was done
skills_usedList skills invoked during task (check conversation)
hooks_triggeredAny blocks or warnings from hooks
verificationtests: pass/fail/skipped, lint: pass/fail/skipped
attemptsHow many tries before success (1 = first try worked)

Process Quality Data:

FieldHow to Determine
first_hypothesis_correctFor bugs: was root cause identified first? For features: was initial approach viable?
plan_deviationsCount of significant changes from plan during implementation (0 = clean)
user_correctionsTimes user redirected approach ("no, do X instead")
escalationappropriate, late, never, unnecessary (see criteria below)
skill_adherencefollowed, partial, skipped (did agent follow skill steps?)

Escalation Criteria:

  • appropriate: Used debug-fresh or asked for help at attempt 3
  • late: Went 5+ attempts before escalating
  • never: Should have escalated but didn't
  • unnecessary: Escalated on attempt 1 (over-cautious)
  • na: Task didn't require escalation consideration

Step 2: Read Current Metrics

Read: .claude/metrics/metrics.json

Step 3: Create Task Entry

Format the new task:

{
  "id": "[next sequential ID]",
  "date": "[ISO date: YYYY-MM-DD]",
  "task_type": "[type]",
  "outcome": "[success|partial|failure]",
  "description": "[one-line summary]",
  "skills_used": ["skill-1", "skill-2"],
  "hooks_triggered": {
    "blocks": ["hook-name"],
    "warnings": ["hook-name"]
  },
  "verification": {
    "tests": "[pass|fail|skipped]",
    "lint": "[pass|fail|skipped]"
  },
  "attempts": [number],
  "process": {
    "first_hypothesis_correct": [true|false],
    "plan_deviations": [number],
    "user_corrections": [number],
    "escalation": "[appropriate|late|never|unnecessary|na]",
    "skill_adherence": "[followed|partial|skipped|na]"
  }
}

Step 4: Update Metrics File

Add the task to the tasks array and update the summary:

  1. Append task to tasks array
  2. Increment summary.total_tasks
  3. Recalculate summary.success_rate = (successes / total) * 100
  4. Update summary.by_type counts
  5. Update summary.by_skill counts
  6. Update summary.hooks_triggered totals
  7. Recalculate summary.process_quality scores:
    • first_try_correct_rate = (tasks with first_hypothesis_correct=true) / total * 100
    • avg_plan_deviations = sum of plan_deviations / total
    • avg_user_corrections = sum of user_corrections / total
    • escalation_appropriate_rate = (appropriate + na) / total * 100

Use the Edit tool to update .claude/metrics/metrics.json.

Step 5: Report

Output a brief confirmation:

Metrics Recorded:
- Task: [description]
- Outcome: [outcome]
- Type: [task_type]
- Attempts: [N]
- Process: hypothesis=[correct/wrong], deviations=[N], corrections=[N]

Running Totals:
- Total tasks: [N]
- Success rate: [X]%
- Process quality: [X]% (first-try correct rate)
- Most used skill: [skill-name] ([N] uses)
- Hooks blocked: [N] times

Objective Criteria

Success = Task completed, verification passed, no rework needed Partial = Task completed but with caveats (skipped tests, known issues) Failure = Task not completed, blocked, or abandoned

Attempts:

  • 1 = First implementation worked
  • 2+ = Required iteration/debugging
  • Count major rework cycles, not minor edits

What NOT to Track

  • Subjective quality assessments
  • Time spent (unreliable)
  • "How good" the code is
  • Feelings about the task

Only track what's objectively observable.

Example

{
  "id": "001",
  "date": "2026-01-06",
  "task_type": "feature",
  "outcome": "success",
  "description": "Added MCP security validation hook",
  "skills_used": ["skill-creator"],
  "hooks_triggered": {
    "blocks": [],
    "warnings": []
  },
  "verification": {
    "tests": "skipped",
    "lint": "pass"
  },
  "attempts": 1,
  "process": {
    "first_hypothesis_correct": true,
    "plan_deviations": 0,
    "user_corrections": 0,
    "escalation": "na",
    "skill_adherence": "followed"
  }
}

Why This Matters

Without metrics, "improvement" is just vibes. With metrics:

  • We know if success rate is trending up or down
  • We know which skills correlate with success
  • We know if hooks are catching real issues
  • We can A/B test changes to skills/rules

Score

Total Score

50/100

Based on repository quality metrics

SKILL.md

SKILL.mdファイルが含まれている

+20
LICENSE

ライセンスが設定されている

0/10
説明文

100文字以上の説明がある

0/10
人気

GitHub Stars 100以上

0/15
最近の活動

3ヶ月以内に更新がある

0/10
フォーク

10回以上フォークされている

0/5
Issue管理

オープンIssueが50未満

+5
言語

プログラミング言語が設定されている

+5
タグ

1つ以上のタグが設定されている

0/5

Reviews

💬

Reviews coming soon