mcpField
S
skill-idea-miner

skill-idea-miner

github.com/mphinanceAgent workflows3283 installsUpdated 5d ago
Repository

About skill-idea-miner

Skill Idea Miner extracts skill ideas from Claude Code session logs, scores novelty, feasibility, and trading value, and maintains a prioritized backlog. It supports candidate previews, deduplication, and scheduled runs.

Key features

  1. 01Parse Claude Code session logs
  2. 02Detect repeated tool sequences and error patterns
  3. 03Abstract and score ideas using Claude CLI
  4. 04Deduplicate and merge backlog entries
  5. 05Preview candidates in a dry run

Use cases

  1. 01Collect skill ideas from sessions on a schedule
  2. 02Preview mined candidates before scoring
  3. 03Maintain a prioritized skill development backlog

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/mphinance/alpha-skills --skill skill-idea-miner

After installing, type/skill-idea-minerin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

README.md
references/
idea_extraction_rubric.md
scripts/
__init__.py
mine_session_logs.py
score_ideas.py
scripts/tests/
conftest.py
test_mine_session_logs.py
test_score_ideas.py

Details

From the project README

Skill Idea Miner

Automatically extract skill idea candidates from Claude Code session logs, score them for novelty, feasibility, and trading value, and maintain a prioritized backlog for downstream skill generation.

When to Use

  • Weekly automated pipeline run (Saturday 06:00 via launchd)
  • Manual backlog refresh: python3 scripts/run_skill_generation_pipeline.py --mode weekly
  • Dry-run to preview candidates without LLM scoring

Prerequisites

  • Python 3.10+ with pyyaml package
  • Claude CLI installed and authenticated (claude --version to verify)
  • Session logs in ~/.claude/projects/<project>/ (created automatically by Claude Code)
  • No API keys required (uses Claude CLI for LLM calls)

Workflow

Quick Start
# Dry-run: preview mined candidates without LLM scoring
python3 scripts/mine_session_logs.py --dry-run --output-dir reports/

# Full mining with scoring (requires Claude CLI)
python3 scripts/mine_session_logs.py --output-dir reports/

# Score existing candidates
python3 scripts/score_ideas.py \
  --candidates reports/raw_candidates.yaml \
  --output-dir logs/
Stage 1: Session Log Mining
  1. Enumerate session logs from allowlist projects in ~/.claude/projects/
  2. Filter to past 7 days by file mtime, confirm with timestamp field
  3. Extract user messages (type: "user", userType: "external")
  4. Extract tool usage patterns from assistant messages
  5. Run deterministic signal detection:
    • Skill usage frequency (skills/*/ path references)
    • Error patterns (non-zero exit codes, is_error flags, exception keywords)
    • Repetitive tool sequences (3+ tools repeated 3+ times)
    • Automation request keywords (English and Japanese)
    • Unresolved requests (5+ minute gap after user message)
  6. Invoke Claude CLI headless for idea abstraction
  7. Output raw_candidates.yaml
Stage 2: Scoring and Deduplication
  1. Load existing skills from skills/*/SKILL.md frontmatter
  2. Deduplicate via Jaccard similarity (threshold > 0.5) against:
    • Existing skill names and descriptions
    • Existing backlog ideas
  3. Score non-duplicate candidates with Claude CLI:
    • Novelty (0-100): differentiation from existing skills
    • Feasibility (0-100): technical implementability
    • Trading Value (0-100): practical value for investors/traders
    • Composite = 0.3 * Novelty + 0.3 * Feasibility + 0.4 * Trading Value
  4. Merge scored candidates into logs/.skill_generation_backlog.yaml

Output Format

raw_candidates.yaml
generated_at_utc: "2026-03-08T06:00:00Z"
period: {from: "2026-03-01", to: "2026-03-07"}
projects_scanned: ["claude-trading-skills"]
sessions_scanned: 12
candidates:
  - id: "raw_2026w10_001"
    title: "Earnings Whispers Image Parser"
    source_project: "claude-trading-skills"
    evidence:
      user_requests: ["Extract earnings dates from screenshot"]
      pain_points: ["Manual image reading"]
      frequency: 3
    raw_description: "Parse Earnings Whispers screenshots to extract dates."
    category: "data-extraction"
Backlog (logs/.skill_generation_backlog.yaml)
updated_at_utc: "2026-03-08T06:15:00Z"
ideas:
  - id: "idea_2026w10_001"
    title: "Earnings Whispers Image Parser"
    description: "Skill that parses Earnings Whispers screenshots..."
    category: "data-extraction"
    scores: {novelty: 75, feasibility: 60, trading_value: 80, composite: 73}
    status: "pending"

Resources

  • references/idea_extraction_rubric.md — Signal detection criteria and scoring rubric
  • scripts/mine_session_logs.py — Session log parser
  • scripts/score_ideas.py — Scorer and deduplicator

Comments

Markdown supported