deep-analysis-57bedd — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited deep-analysis-57bedd (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Execute a structured exploration + synthesis workflow using agent teams with hub-and-spoke coordination. The lead performs rapid reconnaissance to generate dynamic focus areas, composes a team plan for review, workers explore independently, and a synthesizer merges findings with shell-powered investigation.
This skill can be invoked standalone or loaded by other skills as a reusable building block. Approval behavior is configurable.
Accept the following inputs:
Goal: Determine whether the team plan requires user approval before execution.
.agents/agent-alchemy.local.md existsdeep-analysis section with nested settings: - **deep-analysis**:
- **direct-invocation-approval**: true
- **invocation-by-skill-approval**: falsedeep-analysis section is absent, use defaults:direct-invocation-approval: trueinvocation-by-skill-approval: falsedirect-invocation-approval value (default: true)invocation-by-skill-approval value (default: false)deep-analysis section): - **deep-analysis**:
- **cache-ttl-hours**: 24
- **enable-checkpointing**: true
- **enable-progress-indicators**: truecache-ttl-hours: Number of hours before exploration cache expires. Default: 24. Set to 0 to disable caching entirely.enable-checkpointing: Whether to write session checkpoints at phase boundaries. Default: true.enable-progress-indicators: Whether to display [Phase N/6] progress messages. Default: true.CACHE_TTL = value of cache-ttl-hours (default: 24)ENABLE_CHECKPOINTING = value of enable-checkpointing (default: true)ENABLE_PROGRESS = value of enable-progress-indicators (default: true)Goal: Check for cached exploration results, detect interrupted sessions, and initialize the session directory.
Skip this phase entirely ifCACHE_TTL = 0ANDENABLE_CHECKPOINTING = false.
If CACHE_TTL > 0:
.agents/sessions/exploration-cache/manifest.md existsanalysis_context matches the current analysis context (or is a superset)codebase_path matches the current working directorytimestamp is within CACHE_TTL hours of nowconfig_checksum haven't been modified since the cache was written (check mod-times of package.json, tsconfig.json, pyproject.toml, etc.)CACHE_HIT = true. Read cached synthesis.md and recon_summary.md. Skip to Phase 6 step 2 (present/return results).CACHE_HIT = true, skip to Phase 6 step 2CACHE_HIT = false, proceed normallyCACHE_HIT = falseIf ENABLE_CHECKPOINTING = true:
.agents/sessions/__da_live__/checkpoint.md existslast_completed_phase.agents/sessions/da-interrupted-{timestamp}/ and proceed normallyIf ENABLE_CHECKPOINTING = true AND CACHE_HIT = false:
.agents/sessions/__da_live__/ directorycheckpoint.md: ## Deep Analysis Session
- **analysis_context**: [context from arguments or caller]
- **codebase_path**: [current working directory]
- **started**: [ISO timestamp]
- **current_phase**: 0
- **status**: initializedprogress.md: ## Deep Analysis Progress
- **Phase**: 0 of 6
- **Status**: Session initialized
### Phase Log
- [timestamp] Phase 0: Session initializedGoal: Perform codebase reconnaissance, generate dynamic focus areas, and compose a team plan.
If ENABLE_PROGRESS = true: Display "[Phase 1/6] Reconnaissance & Planning — Mapping codebase structure..."PATH = current working directoryPATH" with the analysis contextQuickly map the codebase structure. This should take 1-2 minutes, not deep investigation.
*/ pattern) to understand the project layoutpackage.json, tsconfig.json, pyproject.toml, Cargo.toml, go.mod, etc.) to identify primary language(s) and framework(s)src/**/*.ts, **/*.py to gauge the size and shape of different areasREADME.md, CLAUDE.md, or similar docs if they exist for project contextFallback: If reconnaissance fails (empty project, unusual structure, errors), use the static focus area templates from Step 3b.
Based on reconnaissance findings, create focus areas tailored to the actual codebase. Default to 3 focus areas, but adjust based on codebase size and complexity (2 for small projects, up to 4 for large ones).
a) Dynamic focus areas (default):
Each focus area should include:
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 concernsAssemble a structured plan document from the reconnaissance and focus area findings:
## Team Plan: Deep Analysis
### Analysis Context
[context from Step 1]
### Reconnaissance Summary
- **Project:** [name/type]
- **Primary language/framework:** [detected]
- **Codebase size:** [file counts, key directories]
- **Key observations:** [2-3 bullets]
### Focus Areas
#### Focus Area 1: [Label]
- **Directories:** [list]
- **Starting files:** [2-3 files]
- **Search patterns:** [search patterns]
- **Complexity:** [Low/Medium/High]
- **Assigned to:** explorer-1
#### Focus Area 2: [Label]
- **Directories:** [list]
- **Starting files:** [2-3 files]
- **Search patterns:** [search patterns]
- **Complexity:** [Low/Medium/High]
- **Assigned to:** explorer-2
[... repeated for each focus area]
### Agent Composition
| Role | Count | Purpose |
|------|-------|---------|
| Explorer | [N] | Independent focus area exploration |
| Synthesizer | 1 | Merge findings, deep investigation |
### Task Dependencies
- Exploration Tasks 1-[N]: parallel (no dependencies)
- Synthesis Task: blocked by all exploration tasksENABLE_CHECKPOINTING = true):.agents/sessions/__da_live__/checkpoint.md: set current_phase: 1.agents/sessions/__da_live__/team_plan.md with the full team plan from Step 4.agents/sessions/__da_live__/recon_summary.md with reconnaissance findings from Step 2progress.md: [timestamp] Phase 1: Reconnaissance complete — [N] focus areas identifiedGoal: Present the team plan for user review and approval before allocating resources.
If ENABLE_PROGRESS = true: Display "[Phase 2/6] Review & Approval — Presenting team plan..."REQUIRE_APPROVAL = falseSkip to Phase 3 with a brief note: "Auto-approving team plan (skill-invoked mode). Proceeding with [N] explorers and 1 synthesizer."
REQUIRE_APPROVAL = trueENABLE_CHECKPOINTING = true):.agents/sessions/__da_live__/checkpoint.md: set current_phase: 2, record approval_mode (approved/auto-approved)progress.md: [timestamp] Phase 2: Plan approved (mode: [approval_mode])Goal: Assemble a team of agents, create tasks, and assign work using the approved plan.
If ENABLE_PROGRESS = true: Display "[Phase 3/6] Team Assembly — Creating team and assigning agents..."deep-analysis-{timestamp} (e.g., deep-analysis-1707300000)Based on the approved plan, assign teammates:
explorer-1, explorer-2, ... explorer-NsynthesizerCreate a task for each work item based on the approved plan's focus areas:
For each exploration task, apply the following status-guarded assignment:
pending AND owner is empty"Your exploration task [ID] is assigned. Focus area: [label]. Directories: [list]. Starting files: [list]. Search patterns: [list]. Begin exploration now."
Never re-assign a completed or in-progress task.
ENABLE_CHECKPOINTING = true):.agents/sessions/__da_live__/checkpoint.md: set current_phase: 3, record team_name, explorer_names (list), task_ids (map of explorer to task ID), synthesis_task_idprogress.md: [timestamp] Phase 3: Team assembled — [N] explorers, 1 synthesizerGoal: Workers explore their assigned areas independently.
If ENABLE_PROGRESS = true: Display "[Phase 4/6] Focused Exploration — 0/[N] explorers complete"After assigning exploration tasks, monitor progress with status-aware tracking:
ENABLE_CHECKPOINTING = true, write explorer-{N}-findings.md to .agents/sessions/__da_live__/ and update checkpoint.Never re-assign a completed or in-progress task. This is the primary duplicate prevention mechanism.
If ENABLE_PROGRESS = true: Update the progress display as explorers complete: "[Phase 4/6] Focused Exploration — [completed]/[N] explorers complete"
Goal: Verify exploration completeness, launch synthesis with deep investigation.
If ENABLE_PROGRESS = true: Display "[Phase 5/6] Synthesis — Merging findings and investigating gaps..."This is a structural check, not a quality assessment:
"All exploration tasks are complete. Your synthesis task is now assigned.
Analysis context: [analysis context] Codebase path: [PATH]
Recon findings from planning phase:
The workers are: [list of explorer names from the approved plan]. You can message them with follow-up questions if you find conflicts or gaps in their findings.
You have shell command access for deep investigation — use it for git history analysis, dependency trees, static analysis, or any investigation that file reading and searching can't handle.
Read the completed exploration tasks to access their reports, then synthesize into a unified analysis. Evaluate completeness before finalizing."
ENABLE_CHECKPOINTING = true):.agents/sessions/__da_live__/checkpoint.md: set current_phase: 5.agents/sessions/__da_live__/synthesis.md with the synthesis resultsprogress.md: [timestamp] Phase 5: Synthesis completeGoal: Collect results, present to user, and disband the team.
If ENABLE_PROGRESS = true: Display "[Phase 6/6] Completion — Collecting results and cleaning up..."CACHE_TTL > 0):.agents/sessions/exploration-cache/ directory (overwrite if exists)manifest.md: ## Exploration Cache Manifest
- **analysis_context**: [the analysis context used]
- **codebase_path**: [current working directory]
- **timestamp**: [ISO timestamp]
- **config_checksum**: [comma-separated list of config files and their mod-times]
- **ttl_hours**: [CACHE_TTL value]
- **explorer_count**: [N]synthesis.md with the full synthesis outputrecon_summary.md with the Phase 1 reconnaissance findingsexplorer-{N}-findings.md for each explorer's findings (if not already persisted from Phase 4 checkpoints)ENABLE_CHECKPOINTING = true: Move .agents/sessions/__da_live__/ to .agents/sessions/da-{timestamp}/.agents/agent-alchemy.local.md exists but is malformed or the deep-analysis section is unparseable: warn the user ("Settings file found but could not parse deep-analysis settings — using defaults") and proceed with default approval values.If any phase fails:
When resuming from an interrupted session (detected in Phase 0 Step 2), use the following per-phase strategy:
| Interrupted At | Recovery Strategy |
|---|---|
| Phase 1 | Restart from Phase 1 (reconnaissance is fast, ~1-2 min) |
| Phase 2 | Load saved team_plan.md from session dir, re-present for approval |
| Phase 3 | Load approved plan from checkpoint, restart team assembly |
| Phase 4 | Read completed explorer-{N}-findings.md files from session dir. Only assign explorers whose findings files are missing. Add existing findings to synthesizer context. |
| Phase 5 | Load all explorer findings from session dir. Start a fresh synthesizer and launch synthesis with the persisted findings. |
| Phase 6 | Load synthesis.md from session dir. Proceed directly to present/return results and cleanup. |
Recovery procedure:
checkpoint.md to determine last_completed_phase and session state (team_name, explorer_names, task_ids)last_completed_phase + 1 using the loaded stateexplorer-{N}-findings.md files against expected explorer list to determine which explorers still need to runWhat this component does: Orchestrates a multi-agent codebase exploration and synthesis workflow using hub-and-spoke coordination with dynamic planning, caching, and session recovery.
Capabilities needed:
Adaptation guidance:
.agents/sessions/ — adapt the path to the target harness's session storage.Configurable parameters:
deep-analysis.direct-invocation-approval — Whether to require plan approval when invoked directly (default: true)deep-analysis.invocation-by-skill-approval — Whether to require approval when loaded by another skill (default: false)deep-analysis.cache-ttl-hours — Hours before exploration cache expires; 0 disables caching (default: 24)deep-analysis.enable-checkpointing — Write session checkpoints at phase boundaries for recovery (default: true)deep-analysis.enable-progress-indicators — Display progress messages during execution (default: true)~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.