MCPInstall

opencode-conversation-analysis

Analyze OpenCode conversation history to identify themes and patterns in user messages. Use when asked to analyze conversations, find themes, review how a user steers agents, or extract insights from session history.

Installs
92
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/connorads/dotfiles --skill opencode-conversation-analysis
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads opencode-conversation-analysis automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Conversation Analysis

Analyze user messages from OpenCode sessions to identify recurring themes, communication patterns, and steering behaviours.

Critical Rules

  1. NEVER cat or read chunk files directly - they're huge and will explode your context
  2. Pass file paths to subagents - let them read and analyze independently
  3. Use parallel subagents - one per chunk, they run concurrently
  4. Subagents return structured JSON - you synthesize at the end

Workflow

Step 1: Run Extraction

~/.agents/skills/opencode-conversation-analysis/scripts/extract.sh

This script:

  • Reads from ~/.local/share/opencode/opencode.db (SQLite) when available
  • Falls back to ~/.local/share/opencode/storage/ for older OpenCode installs
  • Extracts user messages from main sessions with metadata (session_id, title, timestamp, text)
  • Filters out messages < 10 characters
  • Chunks into ~320k char files (~80k tokens each)
  • Outputs to /tmp/opencode-analysis/chunk_*.jsonl

Review the output summary to see how many chunks were created.

Step 2: Launch Parallel Subagents

For each chunk file, spawn a general subagent with this prompt template:

Read the file /tmp/opencode-analysis/chunk_N.jsonl which contains user messages from coding sessions (JSONL format with fields: session_id, session_title, timestamp, text).

Analyze these messages to identify recurring themes in how the user steers/guides AI coding assistants. Look for patterns like:
- How they give feedback
- How they correct mistakes
- How they scope/refine requests
- Communication style preferences
- Technical approaches they emphasize

For each theme you identify, provide:
1. Theme name (short, descriptive)
2. Description (1-2 sentences)
3. 2-3 direct quote examples from the messages

Return ONLY valid JSON in this format:
{
  "themes": [
    {
      "name": "Theme Name",
      "description": "Description of the pattern",
      "examples": ["quote 1", "quote 2"]
    }
  ]
}

Launch ALL chunk subagents in parallel (single message, multiple Task tool calls).

Step 3: Synthesize Results

Once all subagents return:

  1. Collect all theme objects from all chunks
  2. Group similar themes (same name or overlapping descriptions)
  3. Merge examples from duplicate themes
  4. Rank themes by how many chunks they appeared in
  5. Pick the best 2-3 examples per theme

Step 4: Output Format

Present the final analysis as markdown with this structure:

# Themes in How You Steer AI Coding Assistants

Analysis of N messages across M sessions (date range)

---

## 1. Theme Name

Description of the pattern.

**Examples:**
- "direct quote 1"
- "direct quote 2"
- "direct quote 3"

---

## 2. Next Theme
...

Output directly to the user - don't write to a file unless asked.

Customisation Options

The user may request:

  • Different chunk sizes: Edit CHUNK_SIZE in extract.sh (default 320000 chars)
  • Different message filter: Edit MIN_TEXT_LEN in extract.sh (default 10 chars)
  • Include subagent sessions: Remove the parent_id IS NULL (SQLite) and parentID (legacy) filters in extract.sh
  • Time period filtering: Add timestamp filtering in extract.sh

Storage Format Reference

See references/storage-format.md for details on OpenCode's conversation storage structure.

FAQ

What does the opencode-conversation-analysis skill do?

Analyze OpenCode conversation history to identify themes and patterns in user messages. Use when asked to analyze conversations, find themes, review how a user steers agents, or extract insights from session history.

How do I install opencode-conversation-analysis?

Run npx skills add https://github.com/connorads/dotfiles --skill opencode-conversation-analysis in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/opencode-conversation-analysis/ (personal) or .claude/skills/opencode-conversation-analysis/ (project).

Which AI agents can use opencode-conversation-analysis?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is opencode-conversation-analysis safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains opencode-conversation-analysis?

It is published by connorads in connorads/dotfiles. It has 92 recorded installs.

More from connorads/dotfiles

View all →

web-animation-design

connorads/dotfiles

Design and implement web animations that feel natural and purposeful. Use this skill proactively whenever the user asks questions about animations, motion, easing, timing, duration, springs, transitions, or animation performance. This includes questions about how to animate specific UI elements, which easing to use, animation best practices, or accessibility considerations for motion. Triggers on: easing, ease-out, ease-in, ease-in-out, cubic-bezier, bounce, spring physics, keyframes, transform, opacity, fade, slide, scale, hover effects, microinteractions, Framer Motion, React Spring, GSAP, CSS transitions, entrance/exit animations, page transitions, stagger, will-change, GPU acceleration, prefers-reduced-motion, modal/dropdown/tooltip/popover/drawer animations, gesture animations, drag interactions, button press feel, feels janky, make it smooth.

Frontend & Design520 installs

firecrawl

connorads/dotfiles

Open the skill to read its SKILL.md instructions.

289 installs

dependency-updater

connorads/dotfiles

Smart dependency management for any language. Auto-detects project type, applies safe updates automatically, prompts for major versions, diagnoses and fixes dependency issues.

AI & Agents249 installs

payload-cms

connorads/dotfiles

Open the skill to read its SKILL.md instructions.

240 installs

hetzner-server

connorads/dotfiles

Open the skill to read its SKILL.md instructions.

Backend & APIs233 installs

homebrew-cask-authoring

connorads/dotfiles

Open the skill to read its SKILL.md instructions.

126 installs

Popular code quality & workflow skills

View category →

grill-me

mattpocock/skills

A relentless interview to sharpen a plan or design.

Scan a codebase for deepening opportunities, present them as a visual HTML report, then grill through whichever one you pick.

handoff

mattpocock/skills

Compact the current conversation into a handoff document for another agent to pick up.

domain-modeling

mattpocock/skills

Build and sharpen a project's domain model. Use when discussing codebase terminology, writing or editing a GLOSSARY.md, or recording or editing an ADR.

codebase-design

mattpocock/skills

Shared vocabulary for designing deep modules. Use when the user wants to design or improve a module's interface, find deepening opportunities, decide where a seam goes, make code more testable or AI-navigable, or when another skill needs the deep-module vocabulary.

diagnosing-bugs

mattpocock/skills

Diagnosis loop for hard bugs and performance regressions. Use when the user says "diagnose"/"debug this", or reports something broken/throwing/failing/slow.