Communityライティング&編集github.com

grahama1970/batch-report

バッチ処理ジョブの実行後分析レポートを生成します。マニフェスト、タイミング、失敗を分析して、包括的なMarkdownレポートを作成します。オプションでエージェント受信箱に送信し、クロスプロジェクト連携を実現します。

batch-report とは?

このスキルは、バッチ処理ジョブの完了後に詳細な分析レポートを自動生成するためのツールです。成功数、失敗数、部分完了数の集計、ステップごとのレイテンシ分析によるボトルネック特定、失敗パターンの分類と要約、品質評価用のサンプル出力など、多面的な分析機能を提供します。分析結果は人間が読みやすいMarkdown形式のレポートとして出力され、`--send-to` オプションを使うとagent-inbox経由で別のプロジェクトに自動送信できるため、複数のエージェント間での情報共有が容易になります。対応するバッチフォーマットは `extractor`、`youtube`、`generic` の3種類で、`auto` モードではファイル構造から自動判別します。CLIコマンドは `analyze`、`summary`、`state`、`failures` の4つを提供し、JSON出力にも対応しているため、他のツールとの連携もスムーズです。

対応~Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/grahama1970/agent-skills/tree/main/skills/batch-report

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

バッチレポートスキル

完了したバッチ処理ジョブの包括的な分析レポートを生成します。

機能

  • マニフェスト分析 - 成功、失敗、部分完了をカウント
  • タイミング分析 - ステップごとのレイテンシ分析、ボトルネックの特定
  • 失敗パターン - 失敗モードの分類と要約
  • 品質メトリクス - 品質評価のためのサンプル出力
  • Markdownレポート - 人間が読める要約
  • エージェント受信箱連携 - プロジェクト受信箱への自動送信

クイックスタート

cd .pi/skills/batch-report

# 抽出バッチのレポートを生成(フォーマットは自動検出)
uv run python report.py analyze /path/to/batch/output

# レポートを生成してエージェント受信箱に送信
uv run python report.py analyze /path/to/batch/output --send-to extractor

# サマリー統計のみ表示
uv run python report.py summary /path/to/batch/output

# スタンドアロンの状態ファイルを分析
uv run python report.py state /path/to/.batch_state.json

# パイプ処理用のJSON出力
uv run python report.py summary /path/to/output --json | jq .success_rate

コマンド

analyze - 完全分析レポート

uv run python report.py analyze /path/to/output \
    --output report.md \
    --send-to extractor \
    --priority high

オプション:

オプション短縮形説明
--output-o出力ファイルパス(デフォルト: stdout)
--send-to-sレポートをエージェント受信箱プロジェクトに送信
--priority-pエージェント受信箱の優先度(low/normal/high/critical)
--sample-n含めるサンプル数(デフォルト: 5)
--format-fバッチフォーマット: extractor, youtube, generic, auto(デフォルト: auto)
--json-jJSON出力。他のツールへのパイプ処理に使用

summary - クイック統計のみ

uv run python report.py summary /path/to/output
uv run python report.py summary /path/to/output --json

出力:

Batch: run-2025-12-18_144426-2eb428c
Total: 230 | Success: 180 | Failed: 35 | Partial: 15
Success rate: 78.3%
Avg time: 4.2 min | Slowest: 09_section_summarizer (45%)

JSON出力:

{
  "batch": "run-2025-12-18_144426-2eb428c",
  "format": "extractor",
  "total": 230,
  "successful": 180,
  "partial": 15,
  "failed": 35,
  "success_rate": 78.3,
  "avg_time_min": 4.2
}

state - スタンドアロン状態ファイルの分析

uv run python report.py state /path/to/.batch_state.json
uv run python report.py state /path/to/.batch_state.json --json

任意のバッチジョブの .batch_state.json ファイルで動作します。

failures - 理由付きで失敗を一覧表示

uv run python report.py failures /path/to/output
uv run python report.py failures /path/to/output --json

レポート形式

# Batch Report: run-2025-12-18_144426-2eb428c

## Summary
- **Total items:** 230
- **Successful:** 180 (78.3%)
- **Failed:** 35 (15.2%)
- **Partial:** 15 (6.5%)

## Timing Analysis
| Step | Avg (s) | Max (s) | % of Total |
|------|---------|---------|------------|
| 09_section_summarizer | 120.5 | 341.0 | 45.2% |
| 05_table_extractor | 65.3 | 105.0 | 24.5% |
...

## Failure Patterns
| Pattern | Count | Example |
|---------|-------|---------|
| Empty text_content | 12 | 047ca6ef... |
| CUDA OOM | 5 | 9497a4e5... |
...

## Recommendations
1. Consider --text-only mode for knowledge extraction
2. Add table confidence threshold before VLM
...

可視化

レポート生成後(特に --json 使用時)、/create-figure で可視化を提案:

# パイプラインステップごとのタイミングウォーターフォール
create-figure metrics --input batch.json --output timing.png --type hbar --title "Step Timing"

# 成功/失敗の分布
create-figure metrics --input batch.json --output results.png --type pie --title "Batch Results"

# 失敗パターンの内訳
create-figure metrics --input batch.json --output failures.png --type bar --title "Failure Patterns"

いつ提案するか: バッチ分析を提示した後、「タイミングの内訳を可視化しますか?」と尋ねます。

対応バッチフォーマット

--format フラグは extractor, youtube, generic, auto(デフォルト)を受け付けます。

自動検出ロジック:

  1. */manifest.json と */timings_summary.json が存在する → extractor
  2. .batch_state.json の説明に "transcript" が含まれる → youtube
  3. .batch_state.json が存在する → generic

抽出バッチ

期待するファイル:

  • */manifest.json - アイテムごとのマニフェスト
  • */timings_summary.json - タイミングデータ
  • */14_report_generator/json_output/final_report.json - 品質メトリクス
  • failed_urls.txt - 失敗アイテムのリスト

YouTubeトランスクリプトバッチ

期待するファイル:

  • .batch_state.json - トランスクリプト関連の説明を含む状態ファイル

汎用バッチ

期待するファイル:

  • .batch_state.json - 完了/失敗カウントを含む状態ファイル
  • *.log ファイル(失敗分析用、オプション)

エージェント受信箱との連携

# バグとしてレポートを送信
uv run python report.py analyze /path/to/output \
    --send-to extractor \
    --priority high

# 送信されたメッセージ: extractor_abc123

依存関係

dependencies = [
    "typer",
    "rich",
]

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

grahama1970/acceptance-contract

Turn a client brief, zip bundle, directory, or single requirements file into a typed acceptance-contract bundle with extracted requirements, acceptance checks, open questions, an immutable-goal draft, and a create-report-backed decision report. Use when users say acceptance contract, brief to requirements, freeze the goal, create immutable goal, amend immutable goal, build a Battle requirements bundle, or extract requirements from this bundle.

grahama1970/agent-ecosystem

Canonical map and shared contracts for the agent-governance ecosystem: the pi.receipt_envelope.v1 boundary envelope, the component graph, and the rules for which component owns which schema. Use when wiring a skill or extension into the shared receipt world, when asking how shame, triage-error, tau, ask, project-watchdog, ops-herdr, ponytail, and Memory fit together, or when validating an envelope.

grahama1970/agentic-evals

Agentic evaluation of skills using multi-trial fixtures, deterministic command assertions, trajectory checks, safety constraints, and evidence-backed readiness scoring. Use when users ask for agentic evals, multi-trial skill evaluation, skill trajectory validation, or readiness scoring for a skill workflow.

grahama1970/agent-inbox

File-based inter-agent messaging with headless dispatch. Check inbox, send bugs/requests to other projects, automatically spawn headless agents to fix bugs, and track progress via task-monitor.

grahama1970/agents-registry

Generate and query the centralized agent identity registry. Scans .pi/agents/*/AGENTS.md, parses frontmatter, outputs agents-registry.json and optionally syncs to /memory for semantic search.

grahama1970/agent-status

Artifact-driven status surfaces for long-running project-agent work. Maintains status.json, events.jsonl, proof manifests, and a stale-aware STATUS.html so humans can tell where the agent is, what passed, what is still unproven, and what decision or action is next — without dashboard theater.

grahama1970/align

Round-based context alignment before execution. Use when the human, project agent, WebGPT, scillm, ask, dogpile, memory, or project-knowledge may each hold different facts about a task; especially before ambiguous design, infographic, product workflow, high-stakes implementation, plan-iterate, project-infographic, or multi-review work.

grahama1970/analytics

Flexible data science analytics for any dataset. Auto-discovers schema, recommends charts, exports to create-figure. Works with JSONL, JSON, CSV from any source.

grahama1970/analyze-chatterbox-emotions

Evaluate generated Chatterbox voice files as voice-quality artifacts: affect match, arousal/valence proxies, pause placement, intelligibility inputs, clipping, loudness, and discontinuity flags. Use when reviewing Chatterbox emotional tags, pauses, Turbo/base affect delivery, Persona Dream utterance renders, or whether generated speech matches an intended product-facing affect.

grahama1970/analyze-elf

Reverse-engineer features from ELF binaries. Extracts CLI commands, state machines, protocols, Zod schemas, and data models. Automatically generates a /create-walkthrough prosecution brief with Mermaid diagrams. Uses /treesitter for AST analysis of bundled JS/TS source.

grahama1970/animation-vocabulary

Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and wants the right word to prompt an AI or designer with. For naming an effect, not designing or building one.

grahama1970/anonymize-data

Anonymize supported CSV, JSON, UTF-8 text, and SQLite files using an explicit policy through the oai-trial project. Use for anonymize data, pseudonymize exports, redact policy literals, or discover and explicitly approve fuzzy name aliases. The skill is a thin CLI/Docker interface, not another engine.

grahama1970/anvil

Heavy-duty "No-Vibes" debugging and hardening orchestrator. Use this for complex, stubborn bugs where `review-code` has failed, or for "Red Teaming" (hardening) a codebase. Runs multiple agents in parallel (Thunderdome) using git worktree isolation.

grahama1970/apple-design

Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing gesture-driven UI, spring animations, drag/swipe/sheet interactions, momentum and interruptible transitions, translucent materials and depth, typography (optical sizing, tracking, leading), reduced-motion, or the design foundations (feedback, spatial consistency, restraint) behind Apple-style interfaces.

grahama1970/argue

Multi-persona structured debate orchestrator. Personas research via /dogpile, consult colleagues via /ask, and argue toward nuanced synthesis on complex questions.

grahama1970/arxiv

Search arXiv for papers and extract knowledge into memory. Use `search` to find papers, `learn` to extract knowledge.

grahama1970/ask

Use when the user asks to query project memory, ask an oracle, use supported browser-backed reviewers, run Tau roundtable/single-handler workflows, ask Pi-native subagents from within Pi, run persona/deep-review workflows, generate image prompts, check OS/project health through composed skills, or run an ask DAG. This skill is the executable /ask runtime; do not replace it with an informal subagent, plain web search, or hand-written review; inside Pi, explicit Pi-native subagent targets are routed through the pi-subagents tool as an Ask target type.

grahama1970/assess

Step back and critically reassess project state. Use when asked to "assess", "step back", "fresh eyes", "check alignment", "sanity check", "health check", "prune documentation", or "evaluate what's working". Offers documentation pruning and doc-code alignment analysis. Offer to run after major changes (don't auto-run).

grahama1970/assistant

Shared GPT + classifier inference gateway for persona monitor tasks. Routes validation and classification through a 4-tier cascade: heuristic → classifier → local GPT → scillm.

grahama1970/assistant-lab

Self-improvement workbench for /assistant. All the tools needed to diagnose, train, evaluate, and promote models in a continuous loop. The "warm pond" where /assistant evolves its own inference stack.

関連スキル