Creates expert consultation documents with code extraction, git diffs, and size tracking (125KB limit). Use when user asks to "create an expert consultation document", "prepare code for expert review", "gather architecture context", or needs comprehensive technical documentation for external analysis. Requires Node.js 18+.
View on GitHubFebruary 4, 2026
Select agents to install to:
npx add-skill https://github.com/propstreet/claude-powerpack/blob/main/skills/ask-expert/SKILL.md -a claude-code --skill ask-expertInstallation paths:
.claude/skills/ask-expert/# Expert Consultation Document Creator
Create comprehensive technical consultation documents by extracting code, diffs, and architectural context within LLM token limits (125KB).
## Document Structure
Follow this proven structure:
### Part 1: Problem Context (~15-25 KB)
1. **Problem** - Issue, errors, test failures
2. **Our Solution** - What was implemented and why
3. **Concerns** - Code smells, coupling, architectural questions
4. **Alternatives** - Other approaches, trade-offs
### Part 2: Complete Architecture (~60-90 KB)
5. **Architecture Overview** - ASCII diagram, data flow, patterns
6. **Components** - Frontend, tests, controllers
7. **Services** - Implementation and interfaces
8. **Models** - Domain entities with relationships
### Part 3: Expert Request (~5-10 KB)
9. **Questions** - Specific technical questions
10. **Success Criteria** - Requirements and priorities
## Workflow
### Step 1: Write Problem Context
Create descriptive filename like `{topic}-consultation.md`:
```bash
cat > feature-consultation.md << 'EOF'
# Expert Consultation: [Feature Name]
## 1. Problem
[Describe the issue]
## 2. Our Solution
[What was implemented]
## 3. Concerns
[Technical concerns]
## 4. Alternatives
[Other approaches considered]
## 5. Architecture Overview
[ASCII diagram]
---
# Complete Architecture Context
EOF
```
### Step 2: Extract Code
Use the bundled extraction script with size tracking.
**💡 The script accepts multiple files in one call** - batch files for efficiency:
```bash
node scripts/extract-code.js \
--track-size --output=doc.md \
--section="Core Files" \
file1.ts file2.ts file3.ts \
--section="Tests" \
test1.ts test2.ts
```
**File format options:**
- Full file: `src/Service.cs`
- Line ranges: `src/Service.cs:100-200` or `src/Service.cs:1-30,100-150`
- Git diff (per-file): `src/Service.cs:diff` or `src/Service.cs:diff=master..HEAD`
**Git diff options (all changes):**
- Staged changes: `--staged` (equivalent to `git diff --cached`)
-