Token导航 LogoToken导航TokenDH.com
研究检索执行命令github未标认证来源可访问许可证需确认审计提醒

debug-log-analysis调试日志分析

Agent Skill

debug-log-analysis 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

588

周安装

25

GitHub Stars

25

下载量

206
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:debug-log-analysis(调试日志分析)
来源仓库:https://github.com/oimiragieo/agent-studio
仓库路径:skills/debug-log-analysis
安装命令:
npx skills add https://github.com/oimiragieo/agent-studio --skill debug-log-analysis
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/oimiragieo/agent-studio --skill debug-log-analysis

简介

从 Claude Code 会话调试日志中提取有效信号用于反思与故障复盘。

  • 适用于代理执行中断、钩子错误或任务完成但未更新状态等疑难场景。
  • 依赖 reduce-debug-log.mjs 脚本预处理原始日志数据后再进行分析。
  • 需确保 scripts 目录下存在相关工具文件且具备执行权限。
  • debug-log-analysis 属于研究检索类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

Mode: Cognitive/Prompt-Driven — No standalone utility script; use via agent context.

Debug Log Analysis

Structured workflow for extracting actionable signal from Claude Code session debug logs. Use during reflection cycles, incident response, or when diagnosing agent failures.

When to Use

  • After any session with unexpected agent failures or stalls
  • When reflection-agent needs telemetry to contextualize task completions
  • When debugging hook errors that appear opaque in task outputs
  • When the router reports "agent completed but didn't call TaskUpdate"

Prerequisites

The scripts/reduce-debug-log.mjs script auto-detects the most recent log when no file argument is provided. It copies the log to .tmp/ and produces a reduced version there.

Step 0: Determine Analysis Mode

Two modes are available:

Auto mode (recommended): Let pnpm debug:reduce find and process the most recent log automatically.

Manual mode: Provide a specific session UUID or log file path.

Step 1: Locate and Reduce the Debug Log

IMPORTANT: Always find the most recent log dynamically. NEVER hardcode session UUIDs.

Auto mode (preferred)

# Auto-detect most recent log, copy to .tmp/, reduce in place
cd /c/dev/projects/agent-studio && node scripts/reduce-debug-log.mjs 2>&1

# The script prints:
# Auto-detected debug log: /home/user/.claude/debug/{session-uuid}.txt
# Copied to: .tmp/{session-uuid}.txt
# Original: N lines -> kept (issue-like): M -> ... -> after dedupe: K
# Output: .tmp/{session-uuid}-reduced.txt

Capture the output paths from the script output for subsequent steps.

Manual mode (when a specific session is needed)

# List recent debug logs sorted by modification time (most recent first)
ls -t "$HOME/.claude/debug/"*.txt 2>/dev/null | head -5

# Or on Windows (Git Bash):
ls -t "$USERPROFILE/.claude/debug/"*.txt 2>/dev/null | head -5

Pick the target log path, then:

# Copy to temp (never operate on the original)
mkdir -p .claude/context/tmp
cp "$HOME/.claude/debug/{session-uuid}.txt" ".claude/context/tmp/debug-session-copy.txt"

# Run reducer with explicit output path
node scripts/reduce-debug-log.mjs \
  ".claude/context/tmp/debug-session-copy.txt" \
  --output ".claude/context/tmp/debug-session-reduced.txt"

Verify reduction succeeded

# Check sizes
wc -l ".claude/context/tmp/debug-session-copy.txt"
wc -l ".claude/context/tmp/debug-session-reduced.txt"

Expected: reduced file is 1-5% of original line count (98%+ noise removed).

Step 2: Compare Original vs Reduced

Calculate what was filtered out to understand the filter quality:

ORIGINAL_LINES=$(wc -l < ".claude/context/tmp/debug-session-copy.txt")
REDUCED_LINES=$(wc -l < ".claude/context/tmp/debug-session-reduced.txt")
echo "Original: $ORIGINAL_LINES lines | Reduced: $REDUCED_LINES lines"
echo "Kept: $(echo "scale=1; $REDUCED_LINES * 100 / $ORIGINAL_LINES" | bc)%"

Note any anomalies — e.g., if reduction is less than 90%, the session had unusually many errors.

Step 3: Read Reduced Log

Read .claude/context/tmp/debug-session-reduced.txt in full.

Step 4: Categorize Error Patterns in Reduced Log

For each line in the reduced log, classify into:

CategorySignal PatternAction
Hook Block (Write)PreToolUse:Write + blockCount; find triggering agent + file path
Hook Block (TaskUpdate)PreToolUse:TaskUpdate + burstCount; find looping agent
Read MissFile does not exist or placeholder textCount; list missing files
Token OverflowFileTooLargeError or token limitCount; identify large files
Streaming StallGap > 60s between log entriesSum duration; note what preceded stall
Agent DropTaskUpdate not called or agent returned without completionList by task ID
Tool ErrorEISDIR, ENOENT, sibling tool call erroredCategorize by tool

Step 5: Cross-Reference Top Errors in Full Log

For the top 3 most frequent error categories:

  1. Grep the FULL (unreduced) log copy for the error signature
  2. Find the 10 lines before and after each occurrence
  3. Identify: which tool call triggered it, which agent was running, what it was trying to do
# Use the full copy (not the original, not the reduced)
grep -n "PreToolUse:Write" ".claude/context/tmp/debug-session-copy.txt" | head -30
grep -n "File does not exist" ".claude/context/tmp/debug-session-copy.txt" | head -30
grep -n "timeout" ".claude/context/tmp/debug-session-copy.txt" -i | head -30

Step 6: Cleanup Temp Files

After analysis, clean up the working copy (keep the reduced file for the report if needed):

rm -f ".claude/context/tmp/debug-session-copy.txt"
# Optionally keep the reduced file for reference; delete when done
# rm -f ".claude/context/tmp/debug-session-reduced.txt"

Step 7: Produce Structured Report

Write to .claude/context/reports/reflections/debug-log-analysis-{YYYY-MM-DD}.md:

<!-- Agent: reflection-agent | Skill: debug-log-analysis | Session: {YYYY-MM-DD} -->

# Debug Log Analysis — {YYYY-MM-DD}

**Source log:** {path to original log — auto-detected or provided}
**Session UUID:** {session-uuid extracted from filename}
**Log statistics:**

- Original: {N} lines / {bytes} bytes
- Reduced: {M} lines / {bytes} bytes
- Reduction ratio: {X}%
  **Analysis timestamp:** {ISO-8601}

## Error Summary

| Category           | Count | Severity | Root Cause |
| ------------------ | ----- | -------- | ---------- |
| Hook Block (Write) | N     | CRITICAL | ...        |
| Read Miss          | N     | HIGH     | ...        |
| ...                |       |          |            |

## Top 3 Deep Dives

### 1. {Most frequent error}

**Frequency:** N occurrences
**First occurrence:** line {N}, timestamp {T}
**Context:** {what the agent was doing}
**Root cause:** {why it happened}
**Fix:** {concrete recommendation}

### 2. ...

### 3. ...

## Observability Gaps Found

List any gaps where the log entry doesn't have enough info to diagnose the error.

## Recommendations

- [ ] Immediate P0: {fix}
- [ ] P1: {fix}
- [ ] P2: {fix}

Known Observability Gaps (Agent-Studio v2026-02)

These gaps exist in the current debug log format:

  1. Hook rejection body not logged — When unified-creator-guard.cjs blocks a Write, the rejection reason is not captured in the debug log. You see PreToolUse:Write blocked but not WHY.

- Workaround: Check process.stderr output separately; or read the hook source to infer the rule that fired.

  1. Agent identity missing from error lines — Error lines don't include which spawned agent caused the error.

- Workaround: Correlate timestamps with task spawn/completion entries.

  1. Read failure file path omittedFile does not exist lines don't always include the file path.

- Workaround: Look at the preceding tool call line for the attempted path.

  1. Streaming stalls unattributed — A 5+ minute stall appears as a timestamp gap with no context.

- Workaround: The tool call preceding the gap is the likely cause.

  1. No success logging — Only failures are prominent. Successful tool calls produce minimal log entries.

- Workaround: Count total tool uses from task summary metadata.

Integration with Reflection

Reflection agents should invoke this skill for HIGH-priority reflection requests:

// In reflection agent, for high-priority triggers:
if (priority === 'high' && debugLogPath) {
  Skill({ skill: 'debug-log-analysis' });
  // Include findings in reflection report
}

Iron Laws

  1. ALWAYS copy the debug log before any analysis — never operate on the original file; in-place operations corrupt the forensic artifact.
  2. NEVER report a root cause based on a single grep match — always read at least 10 lines of context before and after the match to understand what the agent was actually doing.
  3. ALWAYS run the reducer script (Step 2) before attempting to read a full debug log — unfiltered debug logs contain 98%+ noise that obscures real signals.
  4. NEVER skip the structured error report (Step 6) — an informal verbal summary is not a deliverable; the markdown report is required for reflection-agent to incorporate findings.
  5. ALWAYS write new recurring error patterns to .claude/context/memory/issues.md — patterns not written to memory will recur invisibly across sessions.

Anti-Patterns

Anti-PatternWhy It FailsCorrect Approach
Grepping the original log file directlyModifies timestamps, corrupts forensic artifact, no rollbackAlways copy first: cp debug.txt.claude/context/tmp/debug-{date}.txt
Reading the full unreduced log98%+ noise-to-signal ratio; analysis takes hours and misses patternsRun reduce-debug-log.mjs first; work from the reduced output
Reporting root cause from single grep hitSingle matches are often false positives from unrelated tool callsRead ±10 lines of context for every match before concluding root cause
Informal verbal summary instead of reportReflection agent can't parse informal summaries into memory entriesWrite the full structured markdown report to .claude/context/reports/reflections/
Skipping memory writes after analysisError patterns recur invisibly; no institutional learningWrite every new pattern to issues.md or learnings.md before task complete

Memory Protocol (MANDATORY)

After completing:

  • New error pattern found → .claude/context/memory/issues.md
  • New observability gap found → .claude/context/memory/issues.md
  • Pattern that recurs across sessions → .claude/context/memory/learnings.md
ASSUME INTERRUPTION: If it's not in memory, it didn't happen.

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

37%
按下载量换算76

Claude

28.85%
按下载量换算59

Cursor

19.08%
按下载量换算39

Gemini CLI

9.09%
按下载量换算19

安全审计

Gen Agent Trust Hub

可疑

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/oimiragieo/agent-studio --skill debug-log-analysis 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills