Agent skill
teams-deep-analysis
Team-based deep exploration and synthesis workflow using Agent Teams with dynamic planning and hub-and-spoke coordination. Use when asked for "teams deep analysis", "team-based analysis", "collaborative analysis", or "teams-deep-analysis".
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/other/teams-deep-analysis
SKILL.md
Teams Deep Analysis Workflow
Execute a structured exploration + synthesis workflow using Agent Teams with hub-and-spoke coordination. The lead performs rapid reconnaissance to generate dynamic focus areas, workers explore independently, and a deep synthesizer merges findings with Bash-powered investigation.
This skill can be invoked standalone or loaded by other skills as a reusable building block.
Phase 1: Planning
Goal: Perform codebase reconnaissance, generate dynamic focus areas, create the team, and assign tasks.
-
Determine analysis context:
- If
$ARGUMENTSis provided, use it as the analysis context (feature area, question, or general exploration goal) - If no arguments and this skill was loaded by another skill, use the calling skill's context
- If no arguments and standalone invocation, set context to "general codebase understanding"
- Set
PATH = current working directory - Inform the user: "Exploring codebase at:
PATH" with the analysis context
- If
-
Load skills for this phase (standalone or within tools plugin only):
- If invoked standalone or from within the tools plugin:
- Read
${CLAUDE_PLUGIN_ROOT}/skills/project-conventions/SKILL.mdand apply its guidance - Read
${CLAUDE_PLUGIN_ROOT}/skills/language-patterns/SKILL.mdand apply its guidance
- Read
- If loaded cross-plugin (
${CLAUDE_PLUGIN_ROOT}does not contain these skills): Skip this step — the explorer agents load project-conventions and language-patterns automatically via their agent definitions
- If invoked standalone or from within the tools plugin:
-
Rapid codebase reconnaissance: Use Glob, Grep, and Read to quickly map the codebase structure. This should take 1-2 minutes, not deep investigation.
- Directory structure: List top-level directories with
Glob(e.g.,*/pattern) to understand the project layout - Language and framework detection: Read config files (
package.json,tsconfig.json,pyproject.toml,Cargo.toml,go.mod, etc.) to identify primary language(s) and framework(s) - File distribution: Use
Globwith patterns likesrc/**/*.ts,**/*.pyto gauge the size and shape of different areas - Key documentation: Read
README.md,CLAUDE.md, or similar docs if they exist for project context - For feature-focused analysis: Use
Grepto search for feature-related terms (function names, component names, route paths) to find hotspot directories - For general analysis: Identify the 3-5 largest or most architecturally significant directories
Fallback: If reconnaissance fails (empty project, unusual structure, errors), use the static focus area templates from Step 4b.
- Directory structure: List top-level directories with
-
Generate dynamic focus areas:
Based on reconnaissance findings, create 3 focus areas tailored to the actual codebase.
a) Dynamic focus areas (default):
Each focus area should include:
- Label: Short description (e.g., "API layer in src/api/")
- Directories: Specific directories to explore
- Starting files: 2-3 key files to read first
- Search terms: Grep patterns to find related code
- Complexity estimate: Low/Medium/High based on file count and apparent structure
For feature-focused analysis, focus areas should track the feature's actual footprint:
Example: Focus 1: "API routes and middleware in src/api/ and src/middleware/" (auth-related endpoints, request handling) Focus 2: "React components in src/pages/profile/ and src/components/user/" (UI layer for user profiles) Focus 3: "Data models and services in src/db/ and src/services/" (persistence and business logic)For general analysis, focus areas should map to the codebase's actual structure:
Example: Focus 1: "Next.js app layer in apps/web/src/" (pages, components, app router) Focus 2: "Shared library in packages/core/src/" (utilities, types, shared logic) Focus 3: "CLI and tooling in packages/cli/" (commands, configuration, build)b) Static fallback focus areas (only if recon failed):
For feature-focused analysis:
Focus 1: Explore entry points and user-facing code related to the context Focus 2: Explore data models, schemas, and storage related to the context Focus 3: Explore utilities, helpers, and shared infrastructureFor general codebase understanding:
Focus 1: Explore application structure, entry points, and core logic Focus 2: Explore configuration, infrastructure, and shared utilities Focus 3: Explore shared utilities, patterns, and cross-cutting concerns -
Create the team:
- Use
TeamCreatewith namedeep-analysis-{timestamp}(e.g.,deep-analysis-1707300000) - Description: "Deep analysis of [analysis context]"
- Use
-
Spawn teammates: Use the Task tool with the
team_nameparameter to spawn 4 teammates:-
3 workers —
subagent_type: "claude-alchemy-tools:team-code-explorer", model: sonnet- Named:
explorer-1,explorer-2,explorer-3 - Prompt each with: "You are part of a deep analysis team. Wait for your task assignment. The codebase is at: [PATH]. Analysis context: [context]"
- Named:
-
1 deep synthesizer —
subagent_type: "claude-alchemy-tools:team-deep-synthesizer", model: opus- Named:
synthesizer - Prompt with: "You are the deep synthesizer for a deep analysis team. You have Bash access for git history, dependency analysis, and static analysis. Wait for your task assignment. The codebase is at: [PATH]. Analysis context: [context]"
- Named:
-
-
Create tasks: Use
TaskCreatefor each task:- Exploration Task 1: Subject: "Explore: [Focus 1 label]", Description: detailed exploration instructions including directories, starting files, search terms, and complexity estimate
- Exploration Task 2: Subject: "Explore: [Focus 2 label]", Description: detailed exploration instructions including directories, starting files, search terms, and complexity estimate
- Exploration Task 3: Subject: "Explore: [Focus 3 label]", Description: detailed exploration instructions including directories, starting files, search terms, and complexity estimate
- Synthesis Task: Subject: "Synthesize and evaluate exploration findings", Description: "Merge and synthesize findings from all 3 exploration tasks into a unified analysis. Investigate gaps using Bash (git history, dependency trees). Evaluate completeness before finalizing."
- Use
TaskUpdateto setaddBlockedBypointing to all 3 exploration task IDs
- Use
-
Assign exploration tasks: Use
TaskUpdateto assign:- Exploration Task 1 →
owner: "explorer-1" - Exploration Task 2 →
owner: "explorer-2" - Exploration Task 3 →
owner: "explorer-3"
- Exploration Task 1 →
Phase 2: Focused Exploration
Goal: Workers explore their assigned areas independently.
- Workers explore their assigned focus areas independently — no cross-worker messaging
- Workers can respond to follow-up questions from the deep synthesizer
- Each worker marks its task as completed when done
- You (the lead) receive idle notifications as workers finish
- Wait for all 3 exploration tasks to be marked complete before proceeding to Phase 3
Phase 3: Evaluation and Synthesis
Goal: Verify exploration completeness, launch synthesis with deep investigation.
Step 1: Structural Completeness Check
This is a structural check, not a quality assessment:
- Use
TaskListto verify all 3 exploration tasks are completed - Check that each worker produced a report with content (review the messages/reports received)
- If a worker failed completely (empty or error output):
- Create a follow-up exploration task targeting the gap
- Assign it to an idle worker
- Add the new task to the synthesis task's
blockedBylist - Wait for the follow-up task to complete
- If all 3 produced content: proceed immediately to Step 2
Step 2: Launch Synthesis
- Use
TaskUpdateto assign the synthesis task:owner: "synthesizer" - Send the deep synthesizer a message with exploration context and recon findings:
SendMessage type: "message", recipient: "synthesizer", content: "All 3 exploration tasks are complete. Your synthesis task is now assigned. Analysis context: [analysis context] Codebase path: [PATH] Recon findings from planning phase: - Project structure: [brief summary of directory layout] - Primary language/framework: [what was detected] - Key areas identified: [the 3 focus areas and why they were chosen] The workers are: explorer-1, explorer-2, explorer-3. You can message them with follow-up questions if you find conflicts or gaps in their findings. You have Bash access for deep investigation — use it for git history analysis, dependency trees, static analysis, or any investigation that Read/Glob/Grep can't handle. Read the completed exploration tasks via TaskGet to access their reports, then synthesize into a unified analysis. Evaluate completeness before finalizing.", summary: "Synthesis task assigned, begin work" - Wait for the deep synthesizer to mark the synthesis task as completed
Phase 4: Completion + Cleanup
Goal: Collect results, present to user, and tear down the team.
-
Collect synthesis output:
- The deep synthesizer's findings are in the messages it sent and/or the task completion output
- Read the synthesis results
-
Present or return results:
- Standalone invocation: Present the synthesized analysis to the user. The results remain in conversation memory for follow-up questions.
- Loaded by another skill: The synthesis is complete. Control returns to the calling workflow — do not present a standalone summary.
-
Shutdown teammates: Send shutdown requests to all 4 teammates:
SendMessage type: "shutdown_request", recipient: "explorer-1", content: "Analysis complete" SendMessage type: "shutdown_request", recipient: "explorer-2", content: "Analysis complete" SendMessage type: "shutdown_request", recipient: "explorer-3", content: "Analysis complete" SendMessage type: "shutdown_request", recipient: "synthesizer", content: "Analysis complete" -
Cleanup team:
- Use
TeamDeleteto remove the team and its task list
- Use
Error Handling
Planning Phase Failure
- If reconnaissance fails (errors, empty results, unusual structure): fall back to static focus area templates (Step 4b)
- If the codebase appears empty: inform the user and ask how to proceed
Partial Worker Failure
- If one worker fails: create a follow-up task targeting the missed focus area, assign to an idle worker, add to synthesis
blockedBy - If two workers fail: attempt follow-ups, but if they also fail, instruct the deep synthesizer to work with partial results
- If all workers fail: inform the user and offer to retry or abort
Deep Synthesizer Failure
- If the deep synthesizer fails: present the raw exploration results to the user directly
- Offer to retry synthesis or let the user work with partial results
General Failures
If any phase fails:
- Explain what went wrong
- Ask the user how to proceed:
- Retry the phase
- Continue with partial results
- Abort the analysis
Agent Coordination
- The lead (you) acts as the planner: performs recon, generates focus areas, assigns work
- Workers explore independently — no cross-worker messaging (hub-and-spoke topology)
- The deep synthesizer can ask workers follow-up questions to resolve conflicts and fill gaps
- The deep synthesizer has Bash access for deep investigation (git history, dependency trees, static analysis)
- Wait for task dependencies to resolve before proceeding
- Handle agent failures gracefully — continue with partial results
When calling Task tool for teammates:
- Use
model: "opus"for the deep synthesizer - Use default model (sonnet) for workers
- Always include
team_nameparameter to join the team
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?