Analyze conversation history to identify patterns, signals, and behaviors. Use when analyzing conversations, finding patterns in chat, identifying what went well/wrong, scanning for frustration, success, workflow transitions, or user preferences. Triggers on analyze, pattern(s), signal(s), conversation analysis, or `--analyze-conversation`.
/plugin marketplace add outfitter-dev/agents/plugin install baselayer@outfitterThis skill inherits all available tools. When active, it can use any tool Claude has access to.
examples/sample-analysis.mdreferences/extraction-techniques.mdreferences/signal-patterns.mdSignal extraction → pattern detection → behavioral insights.
<when_to_use>
NOT for: real-time monitoring, content generation, single message analysis </when_to_use>
<signal_taxonomy>
| Type | Subtype | Indicators |
|---|---|---|
| Success | Explicit Praise | "Perfect!", "Exactly what I needed", exclamation marks |
| Success | Continuation | "Now do the same for...", building on prior work |
| Success | Adoption | User implements suggestion without modification |
| Success | Acceptance | "Looks good", "Ship it", "Merge this" |
| Frustration | Correction | "No, I meant...", "That's wrong", "Do X instead" |
| Frustration | Reversion | User undoes agent changes, "Go back" |
| Frustration | Repetition | Same request 2+ times, escalating specificity |
| Frustration | Explicit | "This isn't working", "Why did you...", accusatory tone |
| Workflow | Sequence | "First...", "Then...", "Finally...", numbered lists |
| Workflow | Transition | "Now that X is done, let's Y", phase changes |
| Workflow | Tool Chain | Recurring tool usage patterns (Read → Edit → Bash) |
| Workflow | Context Switch | Abrupt topic changes, no transition language |
| Request | Prohibition | "Don't use X", "Never do Y", "Avoid Z" |
| Request | Requirement | "Always check...", "Make sure to...", "You must..." |
| Request | Preference | "I prefer...", "It's better to...", comparative language |
| Request | Conditional | "If X then Y", "When A, do B", situational rules |
Confidence levels:
| Phase | Trigger | activeForm |
|---|---|---|
| Parse Input | Session start | "Parsing input" |
| Extract Signals | Scope validated | "Extracting signals" |
| Detect Patterns | Signals extracted | "Detecting patterns" |
| Synthesize Report | Patterns detected | "Synthesizing report" |
TodoWrite format:
- Parse Input { scope description }
- Extract Signals { from N messages }
- Detect Patterns { category focus }
- Synthesize Report { output format }
Edge cases:
Workflow:
in_progresscompleted, add next in_progresscompleted
</phases>
Extract Signals
completed, create Detect Patterns in_progressDetect Patterns
completed, create Synthesize Report in_progressOutput
△ Caveats if gaps existcompleted
</workflow>
<pattern_detection> Behavioral patterns from signal clusters:
| Pattern | Detection | Confidence |
|---|---|---|
| Repetition | Same signal 3+ times | Strong: 5+ signals |
| Evolution | Signal type changes over time | Moderate: 3-4 signals |
| Preferences | Consistent request signals | Strong: across sessions |
| Tool Chains | Recurring tool sequences (5+ times) | High: frequent use |
| Problem Areas | Clustered frustration signals | Strong: 3+ in same topic |
Temporal patterns:
<output_format> JSON structure:
{
"analysis": {
"scope": {
"message_count": N,
"date_range": "YYYY-MM-DD to YYYY-MM-DD",
"actors": ["user", "agent"]
},
"signals": [
{
"type": "success|frustration|workflow|request",
"subtype": "specific_subtype",
"message_id": "msg_123",
"timestamp": "ISO8601",
"quote": "exact text",
"confidence": "high|medium|low",
"context": "brief explanation"
}
],
"patterns": [
{
"pattern_type": "repetition|evolution|preference|tool_chain",
"category": "success|frustration|workflow|request",
"description": "pattern summary",
"occurrences": N,
"confidence": "strong|moderate|weak",
"first_seen": "ISO8601",
"last_seen": "ISO8601",
"recommendation": "actionable next step"
}
],
"summary": {
"total_signals": N,
"by_type": { "success": N, "frustration": N, ... },
"key_insights": ["insight 1", "insight 2"],
"action_items": ["item 1", "item 2"]
}
}
}
</output_format>
<rules> ALWAYS: - Create Parse Input at session start - Update todos at phase transitions - Include confidence levels for all signals - Support patterns with 2+ signals minimum - Mark Synthesize Report `completed` after delivery - Apply recency weighting (recent overrides old)NEVER:
This skill should be used when the user asks to "create an agent", "add an agent", "write a subagent", "agent frontmatter", "when to use description", "agent examples", "agent tools", "agent colors", "autonomous agent", or needs guidance on agent structure, system prompts, triggering conditions, or agent development best practices for Claude Code plugins.
This skill should be used when the user asks to "create a slash command", "add a command", "write a custom command", "define command arguments", "use command frontmatter", "organize commands", "create command with file references", "interactive command", "use AskUserQuestion in command", or needs guidance on slash command structure, YAML frontmatter fields, dynamic arguments, bash execution in commands, user interaction patterns, or command development best practices for Claude Code.
This skill should be used when the user asks to "create a hook", "add a PreToolUse/PostToolUse/Stop hook", "validate tool use", "implement prompt-based hooks", "use ${CLAUDE_PLUGIN_ROOT}", "set up event-driven automation", "block dangerous commands", or mentions hook events (PreToolUse, PostToolUse, Stop, SubagentStop, SessionStart, SessionEnd, UserPromptSubmit, PreCompact, Notification). Provides comprehensive guidance for creating and implementing Claude Code plugin hooks with focus on advanced prompt-based hooks API.