Skip to content
Code Guide

AI Ecosystem: Maximizing Claude Code with Complementary Tools

AI Ecosystem: Maximizing Claude Code with Complementary Tools

Section titled “AI Ecosystem: Maximizing Claude Code with Complementary Tools”

Reading time: ~25 minutes

Purpose: This guide helps you understand when to use Claude Code vs. complementary AI tools, and how to chain them for optimal workflows.



Claude Code excels at:

  • Contextual reasoning across entire codebases
  • Multi-file implementation with test integration
  • Persistent memory via CLAUDE.md files
  • CLI automation for CI/CD pipelines
  • Agentic task completion with minimal supervision

What Claude Code doesn’t do well (by design):

  • Real-time web search with source verification (WebSearch exists but limited)
  • Image generation (no native capability)
  • PowerPoint/slide generation (no PPTX output)
  • Audio synthesis (no TTS)
  • Browser-based prototyping (no visual preview)

The goal is not to find “better” tools, but to chain the right tool for each step.

TaskClaude CodeBetter AlternativeWhy
Code implementation✅ Best-Contextual reasoning + file editing
Deep research with sources⚠️ LimitedPerplexity Pro100+ verified sources
Image → Code⚠️ LimitedGemini 2.5+Superior visual understanding
Slide generation❌ NoneKimi.comNative PPTX export
Audio overview❌ NoneNotebookLMPodcast-style synthesis
Browser prototyping❌ Nonev0.dev, BoltLive preview
IDE autocomplete❌ NoneCopilot, CursorInline suggestions

The following diagram illustrates how Perplexity and Claude Code complement each other across the development workflow:

flowchart TB
subgraph PERPLEXITY["🔍 PERPLEXITY DOMAIN"]
direction TB
P1["Deep Research<br/>100+ sources synthesis"]
P2["Real-time Information<br/>Latest APIs, versions"]
P3["Source Verification<br/>Cited, verifiable facts"]
P4["Spec Generation<br/>Structured requirements"]
end
subgraph CLAUDE["⚡ CLAUDE CODE DOMAIN"]
direction TB
C1["Contextual Implementation<br/>Full codebase access"]
C2["Multi-file Editing<br/>Atomic changes"]
C3["Test Generation<br/>Pattern-aware"]
C4["CI/CD Integration<br/>Automated pipelines"]
end
subgraph OVERLAP["🔄 OVERLAP ZONE"]
direction TB
O1["Quick Factual Lookups<br/>→ Use Claude WebSearch"]
O2["Code Explanation<br/>→ Use Claude (contextual)"]
end
P4 -->|"spec.md"| C1
style PERPLEXITY fill:#e8f4f8,stroke:#0ea5e9
style CLAUDE fill:#fef3c7,stroke:#f59e0b
style OVERLAP fill:#f3e8ff,stroke:#a855f7

Key Insight: Perplexity answers “What should we build?” → Claude Code answers “How do we build it here?”

flowchart LR
Q["Developer Question"] --> D{Need verified<br/>sources?}
D -->|Yes| P["Perplexity"]
D -->|No| D2{Need current<br/>context?}
D2 -->|Yes| C["Claude Code"]
D2 -->|No| D3{Quick lookup<br/>or deep research?}
D3 -->|Quick| CW["Claude WebSearch"]
D3 -->|Deep| P
P -->|"spec.md"| C
CW --> C
style P fill:#e8f4f8,stroke:#0ea5e9
style C fill:#fef3c7,stroke:#f59e0b
style CW fill:#fef3c7,stroke:#f59e0b
ScenarioUse PerplexityUse Claude
”What’s the latest API for X?”⚠️ Knowledge cutoff
”Compare 5 libraries for auth”✅ Sources⚠️ May hallucinate
”Explain this error message”⚠️ Generic✅ Contextual
”Implement auth in my codebase”❌ No files✅ Full access

Deep Research Mode

  • Synthesizes 100+ sources into structured output
  • Takes 3-5 minutes but produces comprehensive specs
  • Export as markdown → Feed to Claude Code

Model Selection

  • Claude Sonnet 4: Best for technical prose and documentation
  • GPT-4o: Good for code snippets
  • Sonar Pro: Fast factual lookups

Labs Features

  • Spaces: Persistent project contexts
  • Code blocks: Syntax-highlighted exports
  • Charts: Auto-generated from data
┌─────────────────────────────────────────────────────────┐
│ 1. PERPLEXITY (Deep Research) │
│ "Research best practices for JWT refresh tokens │
│ in Next.js 15. Include security considerations, │
│ common pitfalls, and library recommendations." │
│ │
│ → Output: 2000-word spec with sources │
└───────────────────────────┬─────────────────────────────┘
↓ Export as spec.md
┌─────────────────────────────────────────────────────────┐
│ 2. CLAUDE CODE │
│ > claude │
│ "Implement JWT refresh tokens following spec.md. │
│ Use the jose library as recommended." │
│ │
│ → Output: Working implementation with tests │
└─────────────────────────────────────────────────────────┘

Using tmux or terminal split:

Terminal window
# Left pane: Perplexity (browser or CLI)
perplexity "Best practices for rate limiting in Express"
# Right pane: Claude Code (implementing)
claude "Add rate limiting to API. Check spec.md for approach."

Comparison: Claude WebSearch vs Perplexity

Section titled “Comparison: Claude WebSearch vs Perplexity”
FeatureClaude WebSearchPerplexity Pro
Source count~5-10100+ (Deep Research)
Source verificationBasicFull citations
Real-time dataYesYes
Export formatText in contextMarkdown, code blocks
Best forQuick lookupsComprehensive research
CostIncluded$20/month Pro

Recommendation: Use Claude WebSearch for quick factual checks. Use Perplexity Deep Research before any significant implementation that requires understanding the ecosystem.


Gemini’s Visual Superpowers:

  • UI mockup → HTML/CSS/React code (90%+ fidelity)
  • Diagram interpretation (flowcharts → Mermaid/code)
  • Screenshot debugging (“why does this look broken?”)
  • Design token extraction (colors, spacing from images)

Best-in-class for:

  • Complex UI conversion: Upload Figma screenshot → Get Tailwind components
  • Diagram comprehension: Architecture diagrams → Implementation plan
  • Error analysis: Upload error screenshot → Get debugging steps

Model selection:

  • Gemini 2.5 Pro: Complex visual reasoning, long context
  • Gemini 2.5 Flash: Quick visual tasks, lower cost
┌─────────────────────────────────────────────────────────┐
│ 1. GEMINI 2.5 PRO │
│ Upload: screenshot.png of Figma design │
│ Prompt: "Convert this to a React component using │
│ Tailwind CSS. Use semantic HTML and │
│ include responsive breakpoints." │
│ │
│ → Output: JSX + Tailwind code │
└───────────────────────────┬─────────────────────────────┘
↓ Copy to clipboard
┌─────────────────────────────────────────────────────────┐
│ 2. CLAUDE CODE │
│ > claude │
│ "Refine this component for our Next.js project. │
│ Add proper TypeScript types, our Button component, │
│ and connect to the auth context." │
│ │
│ → Output: Production-ready component │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ 1. GEMINI │
│ Upload: architecture-diagram.png │
│ Prompt: "Analyze this architecture diagram. │
│ Output a Mermaid diagram with the same │
│ structure, and list the components." │
│ │
│ → Output: Mermaid code + component list │
└───────────────────────────┬─────────────────────────────┘
↓ Paste mermaid to CLAUDE.md
┌─────────────────────────────────────────────────────────┐
│ 2. CLAUDE CODE │
│ "Implement the UserService component from the │
│ architecture in CLAUDE.md. Start with the │
│ interface, then the implementation." │
│ │
│ → Output: Implemented service │
└─────────────────────────────────────────────────────────┘

For generating diagrams, mockups, or visual assets:

ToolBest ForFormatQuality
Ideogram 3.0UI mockups, iconsPNG, SVGHigh
Recraft v3Vectors, logosSVG, PNGVery high
MidjourneyArtistic visualsPNGArtistic
DALL-E 3Quick conceptsPNGGood

Workflow for generated images:

  1. Generate image with tool of choice
  2. Upload to Gemini for → code conversion
  3. Refine with Claude Code

Kimi is Moonshot AI’s assistant, notable for:

  • Native PPTX generation (actual slides, not markdown)
  • 128K+ token context (entire codebases)
  • Code-aware layouts (syntax highlighting in slides)
  • Multilingual (excellent Chinese/English)

Presentation Generation:

  • PR summary → stakeholder deck
  • Architecture docs → visual presentation
  • Technical spec → team onboarding slides
  • Code walkthrough → training materials
┌─────────────────────────────────────────────────────────┐
│ 1. CLAUDE CODE │
│ "Generate a summary of all changes in the last │
│ 5 commits. Format as markdown with sections: │
│ Overview, Key Changes, Breaking Changes, Migration."│
│ │
│ → Output: changes-summary.md │
└───────────────────────────┬─────────────────────────────┘
↓ Upload to Kimi
┌─────────────────────────────────────────────────────────┐
│ 2. KIMI │
│ Prompt: "Create a 10-slide presentation from this │
│ summary for non-technical stakeholders. │
│ Use business-friendly language. │
│ Include one slide per major feature." │
│ │
│ → Output: stakeholder-update.pptx │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ 1. CLAUDE CODE (using /explain or equivalent) │
│ "Explain the authentication flow in this project. │
│ Include sequence diagrams (mermaid) and key files." │
│ │
│ → Output: auth-explanation.md with diagrams │
└───────────────────────────┬─────────────────────────────┘
↓ Upload to Kimi
┌─────────────────────────────────────────────────────────┐
│ 2. KIMI │
│ "Create an onboarding presentation for new devs. │
│ 20 slides covering the auth system. Include │
│ code snippets and diagrams where relevant." │
│ │
│ → Output: auth-onboarding.pptx │
└─────────────────────────────────────────────────────────┘
ToolStrengthsWeaknessesBest For
KimiNative PPTX, code-awareLess design polishTechnical decks
Gamma.appBeautiful templatesLess code supportBusiness decks
TomeAI-native, visualExpensiveMarketing
Beautiful.aiSmart templatesManualDesign-focused
MarpMarkdown → slidesManual stylingDeveloper decks

Recommendation: Use Kimi for technical content with code. Use Gamma for business/investor decks.


Documentation Synthesis:

  • Upload 50+ files → Get unified understanding
  • Ask questions about your codebase
  • Generate audio overview for commute learning

Audio Overview Feature:

  • Generates 10-15 minute “podcast” from uploaded content
  • Two AI hosts discuss your documentation
  • Perfect for onboarding or reviewing large systems
┌─────────────────────────────────────────────────────────┐
│ 1. EXPORT (via Claude Code or manual) │
│ "Export all markdown files from docs/ and the │
│ main README to a single combined-docs.md file." │
│ │
│ → Output: combined-docs.md (50K tokens) │
└───────────────────────────┬─────────────────────────────┘
↓ Upload to NotebookLM
┌─────────────────────────────────────────────────────────┐
│ 2. NOTEBOOKLM │
│ - Add combined-docs.md as source │
│ - Click "Generate Audio Overview" │
│ - Wait 3-5 minutes for generation │
│ │
│ → Output: 12-minute audio explaining your system │
└───────────────────────────┬─────────────────────────────┘
↓ Listen during commute
┌─────────────────────────────────────────────────────────┐
│ 3. BACK TO CLAUDE CODE │
│ "Based on my notes from the audio overview: │
│ [paste notes] │
│ Help me understand the auth flow in more detail." │
│ │
│ → Output: Contextual deep-dive │
└─────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────┐
│ NOTEBOOKLM │
│ Upload multiple sources: │
│ - Your codebase docs (combined-docs.md) │
│ - Framework documentation (Next.js docs PDF) │
│ - Related articles (URLs or PDFs) │
│ │
│ Ask: "How does our auth implementation compare to │
│ Next.js best practices?" │
│ │
│ → Output: Comparative analysis with citations │
└─────────────────────────────────────────────────────────┘

After NotebookLM synthesis, export key insights to your project:

## Architecture Insights (from NotebookLM synthesis)
### Key Patterns
- Service layer uses repository pattern
- Auth flow follows OAuth2 with PKCE
- State management via React Query
### Potential Issues Identified
- Token refresh logic not documented
- Missing error boundaries in critical paths
### Recommendations
- Add token refresh documentation
- Implement error boundary audit

Available since: Claude Code v2.1+ with MCP support

What it does: Query your NotebookLM notebooks directly from Claude Code, maintaining conversation context across multiple questions.

Terminal window
# Install NotebookLM MCP server
claude mcp add notebooklm npx notebooklm-mcp@latest
# Configure profile (optional, add to ~/.zshrc or ~/.bashrc)
export NOTEBOOKLM_PROFILE=standard # minimal (5 tools) | standard (10 tools) | full (16 tools)
# Verify installation
claude mcp list
# Should show: notebooklm: npx notebooklm-mcp@latest - ✓ Connected

Profile comparison:

ProfileToolsUse Case
minimal5Basic queries, token-constrained environments
standard10Recommended - Queries + library management
full16Advanced (browser control, cleanup, re-auth)

Detailed tool breakdown:

ToolminimalstandardfullDescription
ask_questionQuery notebooks with conversation context
add_notebookAdd notebook to library
list_notebooksList all notebooks in library
get_notebookGet notebook details by ID
setup_authInitial Google authentication
select_notebookSet active notebook
update_notebookUpdate notebook metadata
search_notebooksSearch library by keywords
list_sessionsList active conversation sessions
get_healthCheck auth status and config
remove_notebookRemove notebook from library
re_authSwitch Google account
cleanup_dataClear browser data and sessions
get_browser_stateManual browser state inspection
execute_browser_actionManual browser control
wait_for_elementManual browser element waiting

Important: NotebookLM MCP uses isolated Chrome profile, separate from your main browser session.

Terminal window
# In Claude Code, first-time setup:
"Log me in to NotebookLM"
# Browser opens automatically for Google authentication
# Select your Google account (pro tip: use authuser=1 for secondary accounts)
# Session persists in: ~/Library/Application Support/notebooklm-mcp/

Multi-account setup:

If you have multiple Google accounts and want to use a specific one:

  1. Pre-configure in browser: Open https://notebooklm.google.com/?authuser=1 (change number for different accounts)
  2. Sign in with desired account
  3. Then run authentication in Claude Code

The MCP stores credentials in an isolated Chrome profile, so your main browser cookies don’t affect it.

Verify authentication:

Terminal window
"Check NotebookLM health status"
# Expected output after successful auth:
# {
# "authenticated": true,
# "account": "your-email@gmail.com",
# "notebooks": <count>
# }

Unlike the web UI, the MCP works with share links rather than auto-syncing all notebooks.

Add a notebook:

Terminal window
# 1. In NotebookLM web UI:
# - Open notebook
# - Click "Share" → "Anyone with the link"
# - Copy share URL
# 2. In Claude Code:
"Add notebook: https://notebooklm.google.com/notebook/abc123...
Name: LLM Engineer Handbook
Description: Comprehensive guide on LLM engineering practices
Topics: LLM, fine-tuning, RAG, deployment"
# Minimal metadata required - the MCP will analyze content automatically

List your library:

Terminal window
"List my NotebookLM notebooks"
# Shows all added notebooks with topics, use cases, last used

Search library:

Terminal window
"Search NotebookLM library for: React patterns"
# Returns relevant notebooks based on name, description, topics

Direct query (specify notebook):

Terminal window
"In LLM Engineer Handbook, how do I implement RAG with embeddings?"
# Claude will:
# 1. Select the specified notebook
# 2. Query NotebookLM with your question
# 3. Return answer with precise citations
# 4. Maintain session_id for follow-up questions

Contextual conversation:

Terminal window
# First question
"In Building Large-Scale Web Apps notebook, what are the caching strategies?"
# Follow-up (uses same session_id)
"How would that apply to a Next.js application?"
# Another follow-up
"What about Redis vs in-memory cache trade-offs?"
# Session context is maintained across all queries

Select active notebook:

Terminal window
"Select LLM Engineer Handbook as active notebook"
# Now you can ask without specifying notebook each time
"What are the fine-tuning techniques?"
"How does DPO compare to RLHF?"

Multi-notebook research:

Terminal window
# Compare insights across notebooks
"What does LLM Engineer Handbook say about embeddings?"
"Now check Playwright Automation guide for testing strategies"
"How can I combine these approaches?"

Update notebook metadata:

Terminal window
# As you use notebooks, refine their metadata
"Update LLM Engineer Handbook:
- Add topic: prompt engineering
- Add use case: When designing LLM architectures"
# This helps Claude auto-select the right notebook for future queries

Session management:

Terminal window
"List active NotebookLM sessions"
# Shows all conversation sessions with message counts, age
# Useful to resume previous research threads
FeatureMCP IntegrationWeb UI
Access from Claude Code✅ Direct❌ Manual copy-paste
Conversation context✅ Persistent session_id⚠️ Web chat only
Multi-notebook queries✅ Switch seamlessly⚠️ Manual navigation
Audio generation❌ Use web UI✅ Native
Share notebooks✅ Via library✅ Native
Query speed✅ Instant⚠️ Browser navigation

Best practice: Use MCP for queries during development, web UI for audio generation during onboarding.

IssueSolution
notebooklm: not connectedRun source ~/.zshrc (or restart terminal), then restart Claude Code
Empty notebook list after authYou’re authenticated but haven’t added notebooks yet - use share links workflow
Wrong Google accountClear auth: delete ~/Library/Application Support/notebooklm-mcp/chrome_profile/, re-authenticate
”Tool not found”Check NOTEBOOKLM_PROFILE variable is set correctly
Rate limit errorsWait 24h or re-authenticate with different Google account

Check MCP configuration:

Terminal window
# View your .claude.json MCP config
cat ~/.claude.json | jq '.mcpServers.notebooklm'
# Should show:
# {
# "type": "stdio",
# "command": "npx",
# "args": ["notebooklm-mcp@latest"],
# "env": {}
# }
Terminal window
# Day 1: Setup
"Log me in to NotebookLM"
"Add notebook: <share-link-1> - Codebase Architecture"
"Add notebook: <share-link-2> - API Documentation"
# Day 2: Research
"In Codebase Architecture, what's the auth flow?"
"How does that integrate with the API docs?"
"Select API Documentation notebook"
"What are the rate limiting strategies?"
# Week 2: Advanced
"Search library for: database patterns"
"In Database Patterns notebook, explain connection pooling"
"How would I implement this in our codebase?"

When to use full profile:

  • Need to switch Google accounts frequently (re_auth)
  • Want to clean up MCP data without manual file deletion (cleanup_data)
  • Need to remove notebooks from library (remove_notebook)
  • Advanced debugging requiring manual browser control

Enable full profile:

Terminal window
# Add to ~/.zshrc or ~/.bashrc
export NOTEBOOKLM_PROFILE=full
# Restart Claude Code
Terminal window
"Remove notebook: LLM Engineer Handbook"
# Or by ID:
"Remove notebook with ID: llm-engineer-handbook"

Use case: Declutter library, remove outdated notebooks, fix duplicate entries.

Scenario: You want to switch from personal Google account to work account.

Terminal window
"Re-authenticate NotebookLM with different account"
# Browser opens, select different Google account
# New credentials saved, old session cleared

Difference vs setup_auth:

  • setup_auth: First-time authentication
  • re_auth: Switch accounts (clears existing session)

Important: After re-auth, your notebook library is preserved (stored locally), but you’ll need to verify access to notebooks (they must be shared with new account).

Scenario: Start fresh, clear all MCP data (auth, library, browser profile).

Terminal window
"Clean up NotebookLM MCP data"
# Options:
# - preserve_library: Keep notebook metadata (default: false)
# - confirm: Safety confirmation (default: false)

What gets deleted:

  • Browser profile (~/Library/Application Support/notebooklm-mcp/chrome_profile/)
  • Authentication cookies
  • Active sessions
  • Notebook library (unless preserve_library=true)

When to use:

  • Authentication issues not resolved by re-auth
  • Browser conflicts or corruption
  • Starting fresh after testing
  • Before uninstalling MCP

Example:

Terminal window
"Clean NotebookLM data but keep my library"
# → cleanup_data(preserve_library=true, confirm=true)
"Completely reset NotebookLM MCP"
# → cleanup_data(preserve_library=false, confirm=true)

Advanced debugging tools (full profile only):

1. Get browser state:

Terminal window
"Show NotebookLM browser state"
# Returns: current_url, cookies, local_storage, session_storage

2. Execute browser action:

Terminal window
"Navigate NotebookLM browser to specific notebook URL"
"Click element in NotebookLM browser"
"Type text in NotebookLM browser"

3. Wait for element:

Terminal window
"Wait for element to load in NotebookLM browser"

Use case: Debugging authentication issues, inspecting browser state during failures, manual notebook navigation.


Control browser behavior for queries and authentication.

{
// Visibility
"headless": true, // Run without visible window (default: true)
"show": false, // Show browser window (default: false)
// Performance
"timeout_ms": 30000, // Operation timeout (default: 30000)
// Viewport
"viewport": {
"width": 1920, // Default: 1920
"height": 1080 // Default: 1080
},
// Stealth mode (human-like behavior)
"stealth": {
"enabled": true, // Master switch (default: true)
"human_typing": true, // Simulate typing speed (default: true)
"random_delays": true, // Random pauses (default: true)
"mouse_movements": true, // Realistic mouse moves (default: true)
"typing_wpm_min": 160, // Min typing speed (default: 160)
"typing_wpm_max": 240, // Max typing speed (default: 240)
"delay_min_ms": 100, // Min delay between actions (default: 100)
"delay_max_ms": 400 // Max delay between actions (default: 400)
}
}

Debug authentication visually:

Terminal window
"Log me in to NotebookLM with visible browser"
# Claude calls: setup_auth(show_browser=true)

Custom timeout for slow connections:

Terminal window
"Ask NotebookLM (with 60s timeout): What are the main concepts?"
# Claude calls: ask_question(timeout_ms=60000, ...)

Disable stealth for faster queries (if rate limits not a concern):

Terminal window
# Advanced: requires direct tool call (not natural language)
ask_question(
question="...",
browser_options={
"stealth": {"enabled": false},
"timeout_ms": 10000
}
)

When to customize:

  • Show browser: Debugging auth issues, verifying account selection
  • Increase timeout: Slow network, large notebooks, complex queries
  • Disable stealth: Local testing, debugging, speed priority
  • Custom viewport: Testing responsive notebook UI (rare)

NotebookLM MCP maintains conversation context across queries via session_id.

Terminal window
# First query → Creates session
"In LLM Engineer Handbook, what is RAG?"
# → Returns session_id: "abc123"
# Follow-up → Uses same session
"How does it compare to fine-tuning?"
# → Uses session_id: "abc123" automatically
# Another notebook → New session
"In Playwright Guide, how do I test?"
# → New session_id: "xyz789"

Session properties:

  • Automatic: Claude manages session_id for follow-up questions
  • Scoped: One session per notebook per conversation
  • Timeout: 15 minutes of inactivity (configurable)
  • Max sessions: 10 concurrent (configurable)
Terminal window
"List my active NotebookLM sessions"
# Returns:
# - session_id
# - notebook_name
# - age_seconds
# - message_count
# - last_activity (timestamp)

Use case: Resume previous research threads, understand query history, debug context issues.

Resume specific session:

Terminal window
"Continue NotebookLM session abc123 with question: What about embeddings?"
# Claude calls: ask_question(session_id="abc123", question="...")

Force new session (ignore context):

Terminal window
"Ask NotebookLM in fresh session: What is RAG?"
# Claude omits session_id to create new session

Session cleanup:

Sessions auto-expire after 15 minutes. Manual cleanup via cleanup_data.


Naming conventions:

Terminal window
# Good: Descriptive, searchable
"LLM Engineer Handbook"
"Playwright Testing Guide"
"Next.js Architecture Patterns"
# Bad: Vague, unhelpful
"Notebook 1"
"My Docs"
"Tech Stuff"

Topics strategy:

Terminal window
# Specific, hierarchical
topics: ["RAG", "embeddings", "vector databases", "LLM fine-tuning"]
# Too broad
topics: ["AI", "programming"]

Use cases (helps Claude auto-select):

Terminal window
# Action-oriented
use_cases: [
"When implementing RAG systems",
"For fine-tuning LLM models",
"To understand embeddings architecture"
]

After using a notebook, refine its metadata:

Terminal window
# Initial add (minimal)
"Add notebook: <url>
Name: TypeScript Guide
Description: TypeScript best practices
Topics: TypeScript, types"
# After usage (refine)
"Update TypeScript Guide:
- Add topic: generics
- Add topic: utility types
- Add use case: When designing type-safe APIs
- Add tag: advanced"

Keyword search:

Terminal window
"Search library for: React hooks"
"Search library for: testing"
"Search library for: architecture patterns"

Smart selection (Claude decides):

Terminal window
"Which notebook should I consult about database design?"
# Claude searches library, proposes best match
"I need help with TypeScript generics"
# Claude auto-selects TypeScript Guide if metadata matches
Terminal window
# 1. Add
"Add notebook: <url> - Name: X, Description: Y, Topics: Z"
# 2. Use
"In X notebook, ask: ..."
# 3. Refine
"Update X: Add topic: ..., Add use case: ..."
# 4. Archive (full profile)
"Remove notebook: X" # If outdated or duplicate

Free: NotebookLM (including MCP integration) is free with Google account

Limits:

  • Free tier: 100 notebooks, 50 sources per notebook, 500K words, 50 daily queries
  • Google AI Premium/Ultra: 5x higher limits

5. Voice-to-Text Tools (Wispr Flow, Superwhisper)

Section titled “5. Voice-to-Text Tools (Wispr Flow, Superwhisper)”

Philosophy: “Vibe coding” — dictate intent, let AI implement

Voice input delivers ~4x typing speed (~150 WPM vs ~40 WPM) with richer context. You say more when you don’t have to type it.

ToolProcessingLatencyPrivacyPricePlatform
Wispr FlowCloud~500msSOC 2 certified$12/moMac, Win, iOS
SuperwhisperLocal1-2s100% offline~$50 one-timeMac only
MacWhisperLocalVariable100% offline$49 one-timeMac only
ScenarioWhy voice wins
Long context dumpsYou naturally include constraints, edge cases, business context
BrainstormingLess self-filtering, more raw ideas
Multi-agent managementDictate to 3-4 Claude sessions simultaneously
AccessibilityRSI, mobility constraints, eye strain
  1. Open Claude Code or Cursor
  2. Activate voice (Wispr hotkey or system dictation)
  3. Dictate naturally: “I need a component that shows user stats, it should have pagination because we have thousands of users, and sorting by name or signup date, use our existing Tailwind setup”
  4. Let Claude process the verbose input
  5. Iterate vocally: “Add loading state and error handling”
AdvantageLimitation
~4x faster input~3x more verbose output
Richer contextCloud privacy (Wispr)
Flow state preserved~800MB RAM overhead
Natural expressionTechnical terms need training
ProfileTool
Productivity-firstWispr Flow Pro ($12/mo)
Privacy-requiredSuperwhisper (Mac)
Budget-consciousMacWhisper ($49 one-time)
Windows userWait for Wispr stability improvements

Pro tip: For complex prompts, consider a “refine” step to compress verbose voice input into structured prompts before sending to Claude. See /voice-refine skill template in examples/skills/.


Philosophy: Audible narration frees your eyes for multitasking

Text-to-speech adds audio narration to Claude Code responses, enabling:

  • Code reviews while multitasking (listen while reviewing diffs visually)
  • Long debugging sessions (audio notifications keep you informed)
  • Accessibility (visual impairment, eye strain, RSI)
  • Background monitoring (alerts for errors/completion)

Status: Optional integration (not official Claude Code feature) Cost: 100% free (offline TTS) Maintenance: Community-driven (Paul Preibisch)

FeatureValue
ProviderPiper TTS (offline neural) + macOS Say (native)
Voices15+ (12 English, 4 French including 124 multi-speakers)
Quality⭐️⭐️⭐️⭐️ (Piper medium), ⭐️⭐️⭐️⭐️⭐️ (Piper high)
Latency~280ms (Piper medium), ~50ms (macOS Say)
Disk Space~1.3GB (Piper + voices + audio effects)
Installation~18 minutes (5 phases, interactive)
ScenarioBenefit
Code reviewsListen to Claude’s analysis while viewing code
Long-running tasksAudio notification when tests/builds complete
Debugging sessionsError alerts without constant screen checking
Learning modeDual-language narration (main + target language)
Pair programmingOne person codes, both hear Claude’s feedback
AdvantageLimitation
100% offlineNo cloud-quality voices (vs ElevenLabs)
Zero cost~280ms latency (vs instant macOS Say)
Multi-language (50+)~1GB disk space for voice models
124 voice varietyInstallation requires Homebrew, Bash 5.x

Installation: TTS Setup Workflow (18 min)

Basic usage:

Terminal window
# In Claude Code
/agent-vibes:whoami # Check current voice & provider
/agent-vibes:list # List all 15 voices
/agent-vibes:switch fr_FR-tom-medium # French male voice
# Test
> "Say hello in French" # Audio narration plays

Mute temporarily:

Terminal window
/agent-vibes:mute # Silent work
# ... focus time ...
/agent-vibes:unmute # Re-enable
ProfileSetup
Code reviewer✅ Install with fr_FR-tom-medium, verbosity: low
Focus worker⚠️ Install but mute by default, unmute for notifications
Battery-consciousUse macOS Say provider (instant, lower quality)
Public workspace❌ Skip TTS (audio distraction to others)

Resources:


6. IDE-Based Tools (Cursor, Windsurf, Cline)

Section titled “6. IDE-Based Tools (Cursor, Windsurf, Cline)”

Technical Comparison: For an objective comparison of Claude Code vs 22+ alternatives across 11 criteria (MCP support, Skills, Commands, Subagents, Plan Mode), see the AI Coding Agents Matrix (updated Jan 2026).

ScenarioUse IDE ToolUse Claude Code
Quick inline edits✅ Faster⚠️ Context switch
Autocomplete while typing✅ Essential❌ Not available
Multi-file refactoring⚠️ Limited✅ Superior
Understanding large codebase⚠️ Limited✅ Better context
CI/CD automation❌ Manual✅ Native

Morning session (strategic):

Terminal window
claude "Review the auth module and suggest improvements"
# Claude analyzes, suggests multi-file refactoring plan

During coding (tactical):

# In Cursor/VS Code with Copilot
# Quick autocomplete, inline suggestions
# Small function implementations

Before commit (validation):

Terminal window
claude "Review my changes and suggest tests"
# Claude reviews diff, generates comprehensive tests

Real-World Migration Path: Cursor → Windsurf → Claude Code

Section titled “Real-World Migration Path: Cursor → Windsurf → Claude Code”

Source: Zadig&Voltaire Engineering Blog — Benjamin Calef, Feb 2026

A 6-person team at Zadig&Voltaire documented their sequential tool adoption during a 6-month e-commerce rebuild (July 2025 – January 2026):

PhaseToolObservation
July 2025CursorCo-building workflow, inline suggestions
Aug 2025WindsurfSimilar paradigm, slightly different UX
Aug 2025Claude CodeContextual understanding of entire codebase — pivot moment
Nov 2025Claude Opus 4.5Model comprehension leap, reliable code generation

The team reported the pivot to Claude Code was driven by codebase-level context rather than file-level editing. They then integrated custom skills (zv-commit, zv-code-review, zv-jira, zv-jira-qa) and community skills from skills.sh to standardize their workflows.

Caveat: Performance gains reported (-33% LOC, -63% LCP) are primarily attributable to the Nuxt 3 migration itself, not the AI tooling. The tool migration path is the transferable insight.

Cursor’s .cursor/rules can mirror your CLAUDE.md:

.cursor/rules
# Mirror from CLAUDE.md for consistency
## Conventions
- Use TypeScript strict mode
- Prefer named exports
- Test files: *.test.ts
## Patterns
- Services use dependency injection
- Components use render props for flexibility

When your team uses multiple AI coding tools (Claude Code + Cursor + Copilot), maintaining consistent conventions across all tools becomes a challenge.

ToolConfig FileFormat
Claude CodeCLAUDE.mdMarkdown + @imports
Cursor.cursorrulesPlain markdown
Codex/ChatGPTAGENTS.mdAGENTS.md standard
Copilot.github/copilot-instructions.mdGitHub-specific

Without sync: Each file drifts independently → inconsistent AI behavior across tools.

Section titled “Solution 1: Native @import (Recommended for Claude Code)”

Claude Code supports @path/to/file.md imports natively:

CLAUDE.md
@docs/conventions/coding-standards.md
@docs/conventions/architecture.md

Pros: Native, no build step, maintained by Anthropic Cons: Cursor/.cursorrules doesn’t support @import

Solution 2: Script-Based Generation (Multi-IDE Teams)

Section titled “Solution 2: Script-Based Generation (Multi-IDE Teams)”

For teams needing identical conventions across all IDEs:

docs/ai-instructions/ # Source of truth
├── core.md # Shared conventions
├── claude-specific.md # Claude Code additions
├── cursor-specific.md # Cursor additions
└── codex-specific.md # AGENTS.md additions
↓ sync script (bash/node)
CLAUDE.md = core + claude-specific
.cursorrules = core + cursor-specific
AGENTS.md = core + codex-specific

Example sync script (bash):

#!/bin/bash
CORE="docs/ai-instructions/core.md"
cat "$CORE" > CLAUDE.md
echo -e "\n---\n" >> CLAUDE.md
cat "docs/ai-instructions/claude-specific.md" >> CLAUDE.md
cat "$CORE" > .cursorrules
echo -e "\n---\n" >> .cursorrules
cat "docs/ai-instructions/cursor-specific.md" >> .cursorrules

When to use this approach:

  • Team with mixed IDE preferences (Claude Code + Cursor + VS Code)
  • Need to enforce identical conventions across all tools
  • CI/CD validation of AI instructions

Claude Code does NOT natively support AGENTS.md (GitHub issue #6235, 171 comments, still open as of Feb 2026).

Workaround: Symlink ln -s AGENTS.md .claude/CLAUDE.md

The AGENTS.md standard is supported by: Cursor, Windsurf, Cline, GitHub Copilot. See AI Coding Agents Matrix for full compatibility.

When you need Claude’s deeper analysis:

  1. Select code in IDE
  2. Copy with context (file path, line numbers)
  3. Paste in Claude with: “Analyze this and suggest architectural improvements”

Source: Google Codelabs, Google Cloud Blog, community reviews (Feb 2026)

Google Antigravity is an agent-first IDE (VS Code fork) launched late 2025. Unlike traditional IDE tools that add AI to an editor, Antigravity makes autonomous agents the primary interface — developers supervise through a mission control-style UI rather than writing code directly.

Claude Code vs Antigravity: Two Philosophies

Section titled “Claude Code vs Antigravity: Two Philosophies”
DimensionClaude CodeGoogle Antigravity
ParadigmTerminal-first, CLI-nativeAgent-first, IDE-native
Developer controlExplicit approval per editHigher agent autonomy
Context modelCodebase-level via CLAUDE.mdMulti-surface (editor + browser + terminal)
Multi-agentAgent Teams (v2.1+)Built-in multi-agent orchestration
CI/CDNative (headless, pipelines)Not mature yet
Risk profilePredictable, conservativeHigher autonomy = higher overstep risk
Skills format.claude/skills/ (YAML frontmatter)Directory-based, different ecosystem
ModelsClaude (Anthropic)Multi-model (Gemini, Claude, Liquid AI)

A community npm package exposes an Anthropic-compatible API backed by Antigravity’s Cloud Code service. This lets developers use Claude models through Antigravity’s interface, or chain both tools in a single workflow.

ScenarioRecommendation
Rapid prototyping (“vibe coding”)Antigravity (higher autonomy, visual feedback)
Production code with CI/CDClaude Code (predictable, headless, pipeline-native)
Multi-model experimentationAntigravity (~150 models via OpenRouter)
Team standardizationClaude Code (CLAUDE.md, skills, hooks ecosystem)
Non-CLI developersAntigravity (IDE-native, less terminal friction)

Antigravity strengths: Broader visual context (agents “see” browser + editor), parallel agent orchestration, lower barrier for non-CLI developers.

Antigravity weaknesses: Higher cognitive overhead (monitoring multiple agents), less predictable behavior, CI/CD not mature, destructive operations risk when agents act autonomously.

Bottom line: Claude Code optimizes for predictability and integration with existing developer workflows. Antigravity optimizes for maximum agent autonomy with experimental trade-offs. They serve different philosophies — choose based on your risk tolerance and workflow preferences.


ScenarioUse PrototyperUse Claude Code
”Build a landing page”✅ v0 (visual)⚠️ No preview
”Add form to existing app”⚠️ Context needed✅ Has context
”Rapid UI iteration”✅ Live preview⚠️ Slower
”Match design system”⚠️ Generic✅ Reads your tokens
ToolStrengthsStackBest For
v0.devShadcn/TailwindReactComponent prototypes
Bolt.newFull app scaffoldVariousQuick MVPs
LovableDesign-to-codeReactDesigner handoff
WebSimExperimental UIWebCreative exploration
┌─────────────────────────────────────────────────────────┐
│ 1. V0.DEV │
│ Prompt: "A user profile card with avatar, │
│ stats, and action buttons" │
│ │
│ → Output: React + Shadcn component preview │
│ → Export: Copy code │
└───────────────────────────┬─────────────────────────────┘
↓ Paste to clipboard
┌─────────────────────────────────────────────────────────┐
│ 2. CLAUDE CODE │
│ "Adapt this v0 component for our Next.js app: │
│ - Use our existing Button, Avatar components │
│ - Add TypeScript types matching User interface │
│ - Connect to getUserProfile API endpoint │
│ - Add loading and error states" │
│ │
│ → Output: Production-ready integrated component │
└─────────────────────────────────────────────────────────┘

For maximum efficiency, chain tools in this order:

┌─────────────────────────────────────────────────────────────────────┐
│ PLANNING PHASE │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ [PERPLEXITY] [GEMINI] [NOTEBOOKLM] │
│ Deep Research Diagram Analysis Doc Synthesis │
│ "Best practices for..." Upload architecture Upload all docs │
│ ↓ ↓ ↓ │
│ spec.md mermaid + plan audio overview │
│ │
└────────────────────────────────┬────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────┐
│ IMPLEMENTATION PHASE │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ [CLAUDE CODE] [IDE + COPILOT] │
│ Multi-file implementation Inline autocomplete │
│ "Implement per spec.md..." Quick edits while typing │
│ ↓ ↓ │
│ Working code + tests Polished code │
│ │
└────────────────────────────────┬────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────┐
│ DELIVERY PHASE │
├─────────────────────────────────────────────────────────────────────┤
│ │
│ [CLAUDE CODE] [KIMI] │
│ PR description Stakeholder deck │
│ /release-notes "Create slides from..." │
│ ↓ ↓ │
│ GitHub PR presentation.pptx │
│ │
└─────────────────────────────────────────────────────────────────────┘
Terminal window
# 1. Research (Perplexity - 10 min)
# "Best practices for WebSocket implementation in Next.js 15"
# → Export to websocket-spec.md
# 2. Implementation (Claude Code - 40 min)
claude
> "Implement WebSocket following websocket-spec.md.
Add to src/lib/websocket/. Include reconnection logic."
# 3. Stakeholder update (Kimi - 5 min)
# Upload: changes + demo screenshots
# → Generate 5-slide update deck
Terminal window
# 1. UI Prototype (v0 - 10 min)
# Generate dashboard layout
# 2. Visual refinement (Gemini - 5 min)
# Upload Figma polish → Get final code
# 3. Integration (Claude Code - 30 min)
claude
> "Integrate this dashboard component.
Connect to our data fetching hooks.
Add proper TypeScript types."
Terminal window
# 1. Audio overview (NotebookLM - 15 min)
# Upload all docs → Generate audio → Listen
# 2. Deep questions (Claude Code - 20 min)
claude
> "I just listened to an overview of this codebase.
Help me understand the payment flow in detail."
# 3. First contribution (Claude Code - 30 min)
claude
> "Add a new endpoint to the payments API.
Follow the patterns I see in existing endpoints."

When scaling beyond single Claude Code sessions, external orchestration systems coordinate multiple concurrent agents.

SystemPurposeBackendMaturityMonitoring
Gas TownMulti-agent workspace managerClaude Code instancesExperimentalagent-chat (SSE + SQLite)
multiclaudeSelf-hosted agent spawnerClaude Code agentsActive dev (383⭐)agent-chat (JSON logs)
agent-chatReal-time monitoring UIN/A (reads logs)Early (v0.2.0)Dashboard

What it is: Orchestrator managing dozens of Claude Code instances with Mad Max-inspired roles:

  • Mayor: Central coordinator, generates work, delegates tasks
  • Polecats: Ephemeral worker jobs performing coding tasks
  • Witness: Supervises workers, helps when stuck
  • Refinery: Manages merge queue, resolves conflicts

Key points:

  • ✅ Unlocks multi-agent orchestration for Claude Code
  • ⚠️ Extremely expensive (creator needed 2nd Anthropic account for spending limits)
  • ❌ Experimental, not production-grade
  • 🔗 GitHub repo

When to use: Complex, high-level tasks requiring parallel agent work (not granular tasks)

What it is: Self-hosted system spawning autonomous Claude Code agents:

  • Each agent: separate tmux window + git worktree + branch
  • Auto-creates PRs, CI = ratchet (passing PRs auto-merge)
  • Agent types: worker, supervisor, merge-queue, PR shepherd, reviewer

Key points:

  • ✅ Self-hosting since day one (multiclaude builds itself)
  • ✅ Extensible via Markdown agent definitions
  • ✅ Public Go packages: pkg/tmux, pkg/claude
  • 🔗 GitHub repo

When to use: Teams wanting full control over agent orchestration, on-prem/airgap environments

What it is: Real-time monitoring UI (Slack-like) for agent communications:

  • Reads Gas Town’s beads.db (SQLite) and multiclaude’s JSON message files
  • SSE for live updates, workspace channels, unread indicators
  • Zero-config defaults, dark theme

Key points:

  • ✅ Unified view across multiple orchestration systems
  • ⚠️ Very new (48h old, v0.2.0)
  • ⚠️ Not compatible with standalone Claude Code (needs Gas Town/multiclaude)
  • 🔗 GitHub repo

Architecture pattern (transposable to Claude Code):

1. Hook logs Task agent spawns → SQLite
2. Parent/child relationships tracked
3. SSE endpoint streams updates
4. Dashboard UI consumes stream

See: guide/observability.md for native Claude Code session monitoring

Entire CLI: Governance-First Orchestration

Section titled “Entire CLI: Governance-First Orchestration”

What it is: Agent-native platform focused on governance + sequential handoffs vs pure parallel coordination.

Launched: February 2026 by Thomas Dohmke (ex-CEO GitHub), $60M funding

Architecture difference:

AspectGas Town / multiclaudeEntire CLI
ParadigmCoordination (tmux multiplexing)Governance (approval gates)
Agent spawningManual (tmux/worktrees)Automatic (handoff protocol)
ParallelizationYes (5+ agents)No (sequential handoffs)
Context preservationManual (shared files)Automatic (checkpoints)
Audit trailNoneBuilt-in (compliance-ready)
RewindNoYes (restore to checkpoints)

Key points:

  • ✅ Full audit trail: prompts → reasoning → outputs (SOC2, HIPAA compliance)
  • ✅ Agent handoffs with context (Claude → Gemini → Claude)
  • ✅ Approval gates before deploy (human-in-loop)
  • ⚠️ No parallel execution (sequential only)
  • ⚠️ Very new (launched Feb 10-12, 2026) - limited production feedback
  • 🔗 GitHub repo / entire.io

Agent handoff flow (how context actually passes between agents):

Claude Code Gemini CLI Entire
----------- ---------- ------
works on feature
"blocked on X,
delegate to Gemini" ---------> hook PreToolUse[Task]
(captures the handoff)
|
receives full |
context: |
- reasoning trace |
- files touched |
- decisions made |
- rejected approaches|
|
works... |
completes |
v
hook PostToolUse[Task]
(captures result)
Result: each agent in the chain sees the reasoning of previous agents.
No "cold start" — full context preserved across agent switches.

When to use Entire CLI:

Terminal window
# Use Case 1: Compliance-critical workflows
entire capture --agent="claude-code" --require-approval="security-team"
[... Claude makes changes ...]
# Changes blocked until security-team approves via: entire approve
# Use Case 2: Sequential agent handoff (Claude → Gemini)
entire capture --agent="claude-code" --task="architecture"
[... Claude designs system ...]
entire handoff --to="gemini" --task="visual-design"
# Gemini receives full context from Claude's session
# Use Case 3: Debugging with rewind
entire log # See all decision checkpoints
entire rewind --to="before-refactor" # Restore exact state

Complementarity matrix:

Use CaseBest Tool
Parallel features (5+ agents)Gas Town
Visual monitoringagent-chat
macOS parallel with GUIConductor
Sequential handoffs + governanceEntire CLI
Single agent + cost trackingNative Claude Code + ccusage

Practical workflow (hybrid approach):

Terminal window
# 1. Use Gas Town for parallel feature work
gastown spawn --agents=5 --tasks="auth, tests, docs, refactor, deploy"
# 2. Use Entire for sequential refinement with governance
entire capture --agent="claude-code"
[... implement critical feature ...]
entire checkpoint --name="feature-complete"
entire handoff --to="gemini" --task="ui-polish" --require-approval

Status: Production v1.0+ (macOS/Linux, Windows via WSL)

Full docs: AI Traceability Guide, Third-Party Tools

Before using external orchestrators:

RiskMitigation
Cost explosionSet Anthropic spending limits, use Haiku for workers
Lost work”Vibe coding” accepts work loss for throughput - have rollback plan
Experimental statusNot for production critical paths, test in staging first
Context leakageLogs may contain sensitive data - review before enabling monitoring UI

If you’re not using Gas Town/multiclaude, you can still:

  1. Log multi-instance sessions via hooks (see examples/hooks/session-logger.sh)
  2. Track --delegate operations with custom hook logging Task agent spawns
  3. Build lightweight dashboard using SSE pattern from agent-chat

Conceptual architecture:

.claude/hooks/multi-agent-logger.sh
# Triggered on PostToolUse when tool="Task"
# Logs: timestamp, parent_session_id, child_agent_id, task_description
# Dashboard: Simple Go HTTP server streaming logs via SSE
# UI: React/HTML consuming SSE stream

Use single Claude Code session when:

  • Task is <3 steps or affects <5 files
  • You need full control/oversight of every change
  • Budget constraints prevent multi-agent costs
  • Codebase is simple enough for sequential work

Use orchestrators when:

  • Task naturally parallelizes (multiple independent features)
  • You have budget for parallel agents (multiply costs by N agents)
  • Experimentation tolerance is high (work may be lost/redone)
  • Team has SRE capacity to monitor/intervene

Beyond general-purpose coding assistants, specialized frameworks target specific use cases with built-in context, evaluation, and deployment patterns.

URL: github.com/getnao/nao | Stack: TypeScript 58.9%, Python 38.5%

What it is: Open-source framework for building and deploying analytics agents. Two-step architecture: build agent context via CLI (databases, docs, metadata) → deploy chat UI for natural language data queries.

Key features:

  • Database agnostic (PostgreSQL, BigQuery, Snowflake, Databricks)
  • Built-in evaluation framework with unit testing
  • Native data visualization in chat interface
  • Self-hosted deployment with Docker
  • Stack: Fastify, Drizzle ORM, tRPC, React, shadcn UI

Relevance to Claude Code: While nao deploys agents as standalone services (not Claude Code plugins), its patterns are transposable:

  • Context builder architecture: Structuring complex agent context (similar to .claude/agents/ best practices)
  • Evaluation framework: Measuring agent quality through metrics, unit tests, and feedback loops (gap in current Claude Code workflows)
  • Database integrations: Patterns for injecting database context into agent prompts

When to use: Data teams building conversational analytics interfaces for business users. For Claude Code users, nao serves as reference architecture for agent evaluation and database context patterns.

Status: Active open-source project, production-ready, well-documented


ToolFree TierPro CostBest For
Claude CodePay-per-use~$20-50/month typicalPrimary dev tool
Perplexity5 Pro searches/day$20/monthResearch-heavy work
GeminiGood free tier$19.99/monthVisual work
NotebookLMFreeFreeDocumentation
KimiGenerous freeFreePresentations
v0.devLimited$20/monthUI prototyping
CursorFree tier$20/monthIDE integration

Minimal Stack ($40-70/month):

  • Claude Code (pay-per-use) - $20-50
  • Perplexity Pro - $20
  • Everything else: Free tiers

Balanced Stack ($80-110/month):

  • Claude Code - $30-50
  • Perplexity Pro - $20
  • Gemini Advanced - $20
  • Cursor Pro - $20
  • Free: NotebookLM, Kimi

Power Stack ($120-150/month):

  • Claude Code (heavy usage) - $50-80
  • Perplexity Pro - $20
  • Gemini Advanced - $20
  • Cursor Pro - $20
  • v0 Pro - $20
  • Free: NotebookLM, Kimi
  1. Use Claude Code’s Haiku model for simple tasks (/model haiku)
  2. Batch research sessions in Perplexity to maximize Deep Research
  3. Use free tiers for Gemini Flash, NotebookLM, Kimi
  4. Check context usage regularly (/status) to avoid waste
  5. Use Opus sparingly - only for architectural decisions

Research Preview (January 2026) — Limited documentation, expect bugs, local-only access. No production use recommended yet.

Cowork extends Claude’s agentic capabilities to non-technical users via the Claude Desktop app. Instead of terminal commands, it accesses local folders to manipulate files.

Official source: claude.com/blog/cowork-research-preview

AspectClaude CodeCoworkProjects
TargetDevelopersKnowledge workersEveryone
InterfaceTerminal/CLIDesktop appChat
AccessShell + codeFolder sandboxDocuments
Execute codeYesNoNo
OutputsCode, scriptsExcel, PPT, docsConversations
MaturityProductionPreviewProduction
ConnectorsMCP serversLocal onlyIntegrations
PlatformAllmacOS onlyAll
SubscriptionUsage-basedPro or MaxAll tiers
Need code execution? → Claude Code
File/doc manipulation? → Cowork (if local files)
Cloud files/collaboration? → Wait (no connectors yet)
Ideation/planning? → Projects
Use CaseInputOutput
File organizationMessy Downloads folderStructured folders by type/date
Expense trackingReceipt screenshotsExcel with formulas + totals
Report synthesisScattered notes + PDFsFormatted Word/PDF document
Meeting prepCompany docs + LinkedInBriefing document

No official security documentation exists yet.

Best practices:

  1. Create dedicated ~/Cowork-Workspace/ folder — never grant access to Documents/Desktop
  2. Review task plans before execution (especially file deletions/moves)
  3. Avoid files with instruction-like text from unknown sources
  4. No credentials, API keys, or sensitive data in workspace
  5. Backup before destructive operations

Risk matrix:

RiskLevelMitigation
Prompt injection via filesHIGHDedicated folder, no untrusted content
Browser action abuseHIGHReview each web action
Local file exposureMEDIUMMinimal permission scope

Pattern: Dev specs in Claude Code → PM review in Cowork

┌─────────────────────────────────────────────────────────────┐
│ DEVELOPER (Claude Code) │
│ > "Generate a technical spec. Output to ~/Shared/specs/" │
└──────────────────────────────┬──────────────────────────────┘
┌─────────────────────────────────────────────────────────────┐
│ PROJECT MANAGER (Cowork) │
│ > "Create stakeholder summary from ~/Shared/specs/. │
│ Output as Word doc with timeline and risks." │
└─────────────────────────────────────────────────────────────┘

Shared context via ~/Shared/CLAUDE.md file.

AspectStatus
SubscriptionPro ($20/mo) or Max ($100-200/mo)
PlatformmacOS only (Windows planned, Linux not announced)
StabilityResearch preview

Deep Dive: For complete security practices, troubleshooting, and detailed use cases, see guide/cowork.md.


Research [TECHNOLOGY/PATTERN] implementation best practices in [FRAMEWORK].
Requirements:
- Production-ready patterns only (no experimental)
- Include security considerations
- Compare top 3 library options with pros/cons
- Include code examples where helpful
- Cite all sources
Output format: Markdown spec I can feed to a coding assistant.
Convert this UI screenshot to a [FRAMEWORK] component using [STYLING].
Requirements:
- Use semantic HTML
- Include responsive breakpoints (mobile/tablet/desktop)
- Extract color values as CSS variables
- Add accessibility attributes (aria labels, roles)
- Include hover/focus states visible in the design
Output: Complete component code ready to paste.
Create a [N]-slide presentation from this technical content.
Audience: [TECHNICAL/NON-TECHNICAL]
Purpose: [STAKEHOLDER UPDATE/TRAINING/PITCH]
Requirements:
- One key message per slide
- Include code snippets where relevant (syntax highlighted)
- Add speaker notes for each slide
- Business-friendly language for non-tech audiences
- Include a summary/next steps slide
Output: Downloadable PPTX file.

After uploading documentation:

Based on all sources, explain:
1. The overall architecture pattern used
2. How data flows through the system
3. Key integration points with external services
4. Potential areas of technical debt or complexity
5. How authentication/authorization works
Format as a structured summary I can add to my CLAUDE.md file.
I have [DESCRIBE SOURCE] from [TOOL].
Context: [PASTE CONTENT]
Integrate this into our project:
- Location: [TARGET DIRECTORY/FILE]
- Adapt to our patterns (check CLAUDE.md)
- Add TypeScript types matching our interfaces
- Connect to existing [STATE/API/HOOKS]
- Add tests following our testing patterns
Validate against existing code before implementing.

I need to…Use
Implement a featureClaude Code
Research before implementingPerplexity Deep Research
Convert design to codeGemini → Claude
Create a presentationClaude → Kimi
Understand new codebaseNotebookLM → Claude
Rapid UI prototypev0/Bolt → Claude
Quick inline editsIDE + Copilot
Research → Code: Perplexity → Claude Code
Visual → Code: Gemini → Claude Code
Prototype → Prod: v0/Bolt → Claude Code
Code → Slides: Claude Code → Kimi
Docs → Understanding: NotebookLM → Claude Code

URL: coding-agents-matrix.dev | GitHub: PackmindHub/coding-agents-matrix | License: Apache-2.0

Maintainers: Packmind (Cédric Teyton, Arthur Magne)

An interactive comparison matrix of 23 AI coding agents across 11 technical criteria:

CategoryCriteria
IdentityOpen Source status, GitHub stars, first release date
PackagingCLI, Dedicated IDE, IDE Extension, BYO LLM, MCP Support
FeaturesCustom Rules, AGENTS.md, Skills, Commands, Subagents, Plan Mode

Agents compared: Aider, Claude Code, Cursor, GitHub Copilot, Continue, Goose, Windsurf, and 16 others.

Discovery tool: When you’re choosing which coding agent to adopt, the Matrix helps you filter by specific technical requirements:

  • “Show me open source CLI agents with MCP support”
  • “Which agents support the AGENTS.md standard?”
  • “Compare Claude Code vs Cursor features side-by-side”

Objective data: No marketing fluff, just feature presence/absence (Yes/No/Partial). Community-driven updates via GitHub issue templates.

Matrix (Discovery)This Guide (Mastery)
“Which agents exist?""How to use Claude Code effectively?”
Feature comparison (11 criteria)Workflows, architecture, TDD/SDD methodologies
23 agents × shallow1 agent × deep (19K lines)
Technical specsPractical templates (120), quiz (264 questions)

Use case: Use Matrix to discover and compare → Choose Claude Code → Use this guide to master it.

  • Sortable columns: Click any criterion to sort ascending/descending
  • Multi-filter: Combine filters with AND logic (e.g., “Open Source + MCP Support + Plan Mode”)
  • Search: Find agents by name, type, or description
  • Community-driven: Propose new agents/criteria via GitHub issues
  • Snapshot, not live: Agents evolve, criteria change. Verify data freshness (last updated: Jan 19, 2026).
  • Presence/absence only: Doesn’t explain how features work or quality differences.
    • Example: “Claude Code has Plan Mode” (Yes) vs “How Plan Mode works in practice” (not covered)
  • No workflows: Doesn’t teach you how to use the agents effectively (that’s what this guide does).
  • No performance metrics: Doesn’t benchmark speed, accuracy, or cost.
  • Packmind: Context engineering & governance for AI coding agents
  • Packmind OSS: Framework for versioning AI coding context
  • Context-Evaluator (GitHub): Open-source scanner for CLAUDE.md / AGENTS.md / copilot-instructions.md — 17 evaluators (13 error detectors + 4 suggestion generators), supports Claude Code, Cursor, Copilot, OpenCode, Codex. CLI + web UI. Apache-2.0, v0.3.0 (Feb 2026).
  • Claude Code Templates: 200+ templates for Claude Code (17k⭐)
  • Awesome Claude Code: Curated tool library

Positioning: Matrix complements this guide by helping you choose the right agent. Once you choose Claude Code, this guide teaches you how to master it.


11.1 Goose: Open-Source Alternative (Block)

Section titled “11.1 Goose: Open-Source Alternative (Block)”

For developers hitting Claude Code’s subscription limits or needing model flexibility, Goose is a notable open-source alternative worth understanding.

An on-machine AI coding agent developed by Block (formerly Square), released under Apache 2.0 license. Unlike Claude Code, Goose runs entirely locally and is model-agnostic—it can use Claude, GPT, Gemini, Groq, or any LLM provider.

MetricValue (Jan 2026)
GitHub Stars15,400+
Contributors350+
Releases100+ since Jan 2025
LicenseApache 2.0 (permissive)
Primary LanguageRust (64%) + TypeScript (26%)
AspectClaude CodeGoose
LLM FlexibilityClaude onlyAny LLM (GPT, Gemini, Claude, Groq, local models)
DeploymentCloud (Anthropic servers)Local only (on your machine)
Cost ModelSubscription ($20-$200/mo)Free + your LLM API costs
Rate LimitsAnthropic’s weekly/5-hour capsYour LLM provider’s limits
Token VisibilityOpaque (no per-prompt tracking)Full transparency
MCP SupportNative (growing ecosystem)3,000+ MCP servers available
Setup ComplexitySimple (npm install)Moderate (Rust toolchain, API keys)

Good fit:

  • You’re hitting Claude Code’s weekly limits frequently
  • You need model flexibility (e.g., GPT for some tasks, Claude for others)
  • You require full cost visibility and control
  • You work with large, multi-language codebases requiring aggressive refactoring
  • You want offline capability (with local models like Ollama)

Poor fit:

  • You want simplicity over flexibility
  • You prefer fixed monthly cost vs. variable API billing
  • You value Claude’s specific reasoning capabilities and can’t substitute
  • You don’t want to manage LLM API credentials

Both Claude Code and Goose support the Agent Skills open standard (agentskills.io). Skills you create with SKILL.md are portable across 26+ platforms including Cursor, VS Code, GitHub, OpenAI Codex, and Gemini CLI. Claude Code-specific fields (context, agent) are ignored by other platforms but don’t break compatibility.

Goose AdvantageGoose Limitation
No subscription limitsLLM API costs can escalate unpredictably
Model choiceRequires self-managed API keys
Full token transparencyNo built-in cross-session memory
Open source (contribute back)Smaller user base, fewer tutorials
Offline with local modelsLocal models inferior for complex tasks

Goose itself is lightweight (Rust binary). The requirements depend on your LLM choice:

LLM TypeRequirements
Cloud APIs (Claude, GPT, Gemini)Minimal (just network access)
Local models (Ollama, etc.)16-32GB RAM, GPU recommended for larger models
Terminal window
# macOS
brew install goose
# Or via cargo
cargo install goose-cli
# Configure LLM provider
goose configure

See Goose Quickstart for detailed setup.

Goose is not a replacement for Claude Code—it’s an alternative with different trade-offs. The right choice depends on your priorities:

PriorityChoose
Simplicity, Claude’s reasoningClaude Code
Cost control, model flexibilityGoose
Fixed monthly budgetClaude Code subscription
Pay-per-use, no limitsGoose + API

For most developers already invested in Claude Code workflows, the switching cost is significant. Goose is most valuable for teams needing model diversity or developers frequently hitting Claude Code’s limits.


External resources from experienced practitioners that validate and extend the patterns documented in this guide.

URL: davevanveen.com/blog/agentic_coding/

Author credentials:

  • PhD in Machine Learning, Stanford University (2021-2024)
  • Principal AI Scientist at HOPPR (TB-scale medical AI pipelines)
  • Co-author: “Agentic Systems in Radiology” (ArXiv 2025)

Content summary: Production-grade agentic coding workflow with 6 guardrails:

  • TDD (Test-Driven Development)
  • Simplicity first / YAGNI
  • Reuse before rewriting
  • Worktree safety (git isolation)
  • Manual commits only (human authorship boundary)

Alignment with this guide: All patterns are covered in our documentation (often with more depth):

Van Veen PatternThis Guide Reference
TDD guardrailguide/methodologies.md (TDD, Verification Loops)
Git worktreesexamples/commands/git-worktree.md (+ DB branching)
Planning phasePlan Mode (Section 3.3)
Manual commitsGit best practices (Section 9.9)

Value: Independent validation from a Stanford PhD practitioner that the patterns in this guide are production-ready. Useful for readers seeking multiple authoritative sources.

Note: The phrase “English is the new programming language” (sometimes attributed to this article) originates from Andrej Karpathy and Bindu Reddy, not Van Veen.

URL: adventures.nodeland.dev/archive/the-human-in-the-loop/

Author credentials:

  • Chair of the Node.js Technical Steering Committee
  • Maintainer: Fastify, Pino, Undici (17B downloads/year)
  • Co-Founder & CTO at Platformatic
  • PhD in IoT Application Platforms (2014)

Context: Response to Mike Arnaldi’s “The Death of Software Development” (January 2026)

Content summary: The bottleneck shift thesis — AI changes what we do, not whether we’re needed:

  • AI implements, humans review — judgment becomes the limiting factor
  • “I review every single change. Every behavior modification. Every line that ships.”
  • Cultural warning: “AI wrote it” must never become an excuse to skip understanding
  • Industrial Revolution analogy: new scale → new failure modes → new safety practices

Key data points (from broader research):

  • Review time +91% in 2025 (CodeRabbit)
  • 96% developers don’t trust AI code (Sonar 2026)
  • Creation:review ratio = 1:12 (7 min vs 85 min)

Key quote:

“The human in the loop isn’t a limitation. It’s the point.”

Alignment with this guide:

Collina PointThis Guide Reference
Verification as bottleneckTrust Calibration (Section 2.5)
Review every changeGolden Rules (Rule #1)
Senior judgment criticalVerification Spectrum (line 1077)
Cultural accountabilityVibe Coding Trap (learning-with-ai.md:81)

Value: First-hand perspective from a major open source maintainer. Validates that code review culture — already essential in open source — transfers directly to AI-assisted development. Powerful authority for convincing skeptical teams.

Debate context: Collina’s article directly responds to Arnaldi (Effect/Effectful CEO) who argued “software development is dead.” The Collina-Arnaldi exchange became a defining moment in the January 2026 discourse on AI and developer roles.

Peter Steinberger (PSPDFKit Founder, Moltbot Creator)

Section titled “Peter Steinberger (PSPDFKit Founder, Moltbot Creator)”

URL: Shipping at Inference-Speed

Author credentials:

  • Founded PSPDFKit (document processing SDK, 60+ employees, clients: Dropbox, DocuSign, SAP)
  • Creator of Moltbot (formerly Clawdbot), open-source AI personal assistant
  • Documented workflow evolution in Dec 2025 blog post

Content summary (model-agnostic patterns only):

  • Stream monitoring: Shift from reading code line-by-line to watching the AI generation stream, intervening only on key components
  • Multi-project juggling: 3-8 concurrent projects with linear commits and cross-project knowledge transfer via file references
  • Fresh context per task: Validates the fresh context pattern (Section 2.2) from production experience
  • Iterative exploration: Build → test feel → refine, rather than exhaustive upfront planning

Alignment with this guide:

Steinberger PatternThis Guide Reference
Fresh context per taskSection 2.2 Fresh Context Pattern (line 1525)
Multi-project workflowsSection 9.13 Multi-Instance Workflows (line 9583)
Iterative explorationWorkflows: Iterative Refinement

Value: Production-scale perspective on AI-assisted workflow patterns from an experienced toolmaker. Validates fresh context and multi-instance approaches already documented in this guide.

Note: Steinberger is the creator of Moltbot (see ClawdBot FAQ). His observations originate from a non-Claude workflow; patterns should be validated in Claude Code context before adoption.

URL: The 80% Problem in Agentic Coding

Author credentials:

  • Engineering leader at Google Chrome team
  • Bestselling author, 600K+ newsletter readers
  • Published January 28, 2026

Content summary: Synthesis of the “80% problem” — when AI generates 80%+ of code, developers face three new failure modes (overengineering, assumption propagation, sycophantic agreement) and risk “comprehension debt” distinct from technical debt. Aggregates DORA, Stack Overflow, and industry research on the productivity paradox (+98% PRs, +91% review time, but no overall workload reduction).

Key data points (cited from external research):

  • 44% developers write <10% code manually (Ronacher poll)
  • 48% only review AI code systematically before commit (SonarSource)
  • 66% frustrated with “almost right” AI solutions (Stack Overflow 2025)
  • 99% report 10+ hours saved weekly, yet no workload reduction (Atlassian 2025)

Alignment with this guide:

Osmani ConceptThis Guide Reference
Comprehension debtVibe Coding Trap (learning-with-ai.md:81)
Review as bottleneckTrust Calibration (ultimate-guide.md:1061)
Orchestrator rolePlan Mode + Task tool workflows
+91% review timeAlready cited (line 1977 above)

Value: Well-articulated synthesis introducing the “80% problem” framework. Useful secondary source for reinforcing concepts already documented in this guide with primary sources.

Note: Article aggregates existing research. For primary data, see DORA Report 2025, Stack Overflow 2025, and Matteo Collina insights documented above.

Alan Engineering (Charles Gorintin, Maxime Le Bras)

Section titled “Alan Engineering (Charles Gorintin, Maxime Le Bras)”

URL: Le principe de la Tour Eiffel (et Ralph Wiggum)

Author credentials:

  • Charles Gorintin: Co-founder & CTO at Alan (15K+ companies, 300K+ members, €500M raised), ex-Facebook/Instagram/Twitter data science, Mistral AI board member
  • Maxime Le Bras: Talent Lead at Alan, pioneer in AI-assisted recruitment in France
  • Published: February 2, 2026 (Newsletter “Intelligence Humaine”, 3,897 followers)

Content summary: Paradigm shift framework for AI-assisted engineering through two core concepts:

  1. Eiffel Tower Principle: AI tools fundamentally transform what’s architecturally possible (like elevators enabled Eiffel Tower’s shape), not just acceleration of old tasks
  2. Ralph Wiggum Programming Model: Agentic loops where engineers become architects/editors rather than sole creators (reference to Simpsons character “helping” assemble furniture)
  3. Verification Paradox: When AI succeeds 99% of the time, human vigilance becomes unreliable for catching the 1% errors — solution: automated guardrails over manual review
  4. Precision as Currency: Clear specification (WHAT/WHERE/HOW) becomes engineer’s new superpower, replacing implementation speed
  5. Ambition Scaling: Pursue previously impossible ambitions enabled by new tools, not just faster execution of old tasks

Key quote:

“L’intelligence est la faculté de fabriquer des objets artificiels, en particulier des outils à faire des outils.” — Henri Bergson, L’évolution créatrice (1907)

Alignment with this guide:

Alan ConceptThis Guide Reference
Verification ParadoxProduction Safety Rule 7 (production-safety.md:639)
Precision requirementsPrompting WHAT/WHERE/HOW/VERIFY (ultimate-guide.md:1512)
Ralph Wiggum loopsIterative Refinement workflows (workflows/iterative-refinement.md:107)
Engineer → Architect shiftMental Model: orchestrator pattern (ultimate-guide.md:1189)
Eiffel Tower PrincipleTransformation vs acceleration (implicit in paradigm shift)

Value: Production-scale validation from major French tech company operating in heavily regulated industry (health insurance, GDPR, health data compliance). First clear articulation of “Verification Paradox” as distinct concept. Demonstrates that paradigm shift concepts apply beyond Silicon Valley startups to established European companies.

Context: Article includes interview with Stanislas Polu (Dust co-founder, ex-OpenAI) mentioning Mirakl achievement (75% of employees became agent builders using Dust platform). Validates that “engineer → orchestrator” transformation is happening across industry, not just early adopters.

Language note: Original article in French; concepts and quotes translated for this guide.

Zadig&Voltaire Engineering (Benjamin Calef)

Section titled “Zadig&Voltaire Engineering (Benjamin Calef)”

URL: tech.zadig-et-voltaire.com/blog/migration-nuxt/

Author credentials:

  • Technical Project Manager at Zadig&Voltaire (luxury fashion e-commerce)
  • Led 6-person team through complete frontend migration (July 2025 – January 2026)
  • Published: February 2, 2026

Content summary: First external (non-Anthropic) team productivity data with a temporal adoption curve. During a Vue Storefront → Nuxt 3 migration, the team tracked AI-assisted merge request velocity across 6 months:

MonthMRs/weekAI-assisted
July 2025~730%
Nov 2025~1570%
Jan 2026~2790%+

4x acceleration over 6 months, with AI assistance growing from 30% to 90%+.

Alignment with this guide:

Z&V InsightThis Guide Reference
Tool migration pathIDE-Based Tools (Section 6 above)
Orchestrator mindset shiftMental Model (ultimate-guide.md:2360)
Custom skills in productionSkills (Section 5.5 in ultimate-guide.md)
Team-wide adoption curveAdoption Approaches (adoption-approaches.md)

Value: Complements Anthropic’s internal metrics (+67% PRs/engineer/day) with external team data showing a progressive adoption trajectory. The temporal dimension (30% → 90% over 6 months) is unique — most case studies report before/after snapshots, not the journey.

Caveat: Performance metrics reported (-63% LCP, -33% LOC) are attributable to the Nuxt 3 migration, not Claude Code. The productivity trajectory is the transferable insight. Article is self-published by the team (no third-party validation).

Outcome Engineering — o16g Manifesto (Cory Ondrejka)

Section titled “Outcome Engineering — o16g Manifesto (Cory Ondrejka)”

URL: o16g.com

Author credentials:

  • CTO at Onebrief (military command AI platform)
  • Co-creator of Second Life (Linden Lab CTO)
  • Former VP Google Experience (1,500+ engineers, advisor to Sundar Pichai)
  • Former VP Mobile Engineering at Meta
  • Published: February 13, 2026

Content summary: Philosophical manifesto proposing 16 principles for shifting from “software engineering” to “outcome engineering” — prioritizing measurable results over code output. Organized in two parts:

  1. Goals (1-8): Human intent guides agents, verified reality over metrics, budget-based management replacing backlogs, creation over tedium, map context before dispatch, build aggressively to test hypotheses, analyze failures as learning artifacts
  2. Building (9-16): Agent orchestration, constitutional encoding, knowledge graphs, priority systems, documentation, continuous improvement, risk gates, outcome auditing

Cultural positioning: The naming “o16g” follows the numeronym pattern (i18n, k8s, a11y) — designed for community adoption. Honeycomb cited it in their 10-year manifesto. Talent500 picked up the term on publication day. Posted on Hacker News. Positions itself as a successor framework to software engineering for the agentic era, comparable in ambition to the Agile Manifesto (2001) for its era.

Alignment with this guide:

o16g ConceptThis Guide Reference
Engineer → outcome architectMental Model: orchestrator pattern (ultimate-guide.md:2360)
Risk gates blocking deliveryProduction Safety rules (production-safety.md)
Agent orchestration principlesAgent Teams (workflows/agent-teams.md)
Map context before dispatchCLAUDE.md + Plan Mode (Sections 3.1, 2.3)
Verified reality over metricsTrust Calibration (ultimate-guide.md:1039)

Value: Not a Claude Code-specific resource — no commands, configurations, or actionable patterns. Value is cultural: a credible industry leader articulating the philosophical shift that underpins all patterns in this guide. If “outcome engineering” gains traction as a term (like “vibe coding” did), this manifesto is the primary source.

Status: Emerging (day-1 publication). On watch list for community adoption tracking.


For most developers, Claude Code CLI provides the right balance of power and simplicity. But understanding when to use pre-built agents versus building custom agents helps you choose the right tool for your needs.

Claude Code, Cursor, Windsurf, Goose: Ready-to-use CLI or GUI tools optimized for coding workflows. Install and start working immediately.

Use when:

  • You need a coding assistant now
  • Standard workflows (implementation, debugging, refactoring)
  • Want managed updates and community support
  • Prefer fixed costs (subscriptions) over usage-based pricing

Google ADK, LangChain, Vercel AI SDK: Code-first toolkits for building custom agents from scratch.

Key features:

  • Multi-LLM support: Use Claude, GPT, Gemini, or local models (often via unified APIs)
  • MCP-compatible: Consume the same MCP servers as Claude Code (3,000+ available)
  • Custom workflows: Design agent behavior for domain-specific tasks
  • Embedable: Integrate agents into your applications

Use when:

  • Building a product around AI agents (not just using one)
  • Need multi-LLM fallback strategies (e.g., Claude for code, GPT for other tasks)
  • Require custom execution flows beyond coding assistance
  • Want full control over prompts, memory, and orchestration
FrameworkFocusClaude SupportMaturity
Google ADKMulti-language (TypeScript, Python, Go, Java)✅ NativeProduction (17.6K⭐, Renault/Box)
LangChainPython/JS ecosystem, largest community✅ Via @anthropic-ai/sdkMature (100K+⭐)
Vercel AI SDKEdge/streaming, React-first✅ Native providerActive (15K+⭐)

Anthropic API, OpenAI API: Raw LLM access without agent scaffolding.

Use when:

  • Building simple chatbots or single-purpose bots
  • Maximum flexibility, minimal dependencies
  • You’re handling tool calls, memory, and orchestration yourself
Need coding assistant? → Claude Code
Building agent product? → ADK/LangChain
Simple chatbot only? → Direct API
Multi-LLM required? → Framework (ADK/LangChain)
Custom workflow logic? → Framework
Standard dev tasks? → Pre-built agent

All frameworks (Claude Code, ADK, LangChain) support the Model Context Protocol (MCP). This means:

  • MCP servers you build work across tools
  • 3,000+ MCP servers available ecosystem-wide
  • Tools, prompts, and resources are portable

Example: A mcp-server-github works with Claude Code, ADK-built agents, and LangChain agents identically.

Resources:


For discovering and distributing agent skills beyond local creation:

URL: skills.sh | GitHub: vercel-labs/agent-skills | Launched: January 21, 2026

What it is: Centralized marketplace for agent skills with one-command installation. Provides leaderboard, trending view, and 200+ skills from Vercel, Anthropic, Supabase, and community contributors.

Installation:

Terminal window
npx add-skill vercel-labs/agent-skills # React/Next.js (35K+ installs)
npx add-skill supabase/agent-skills # Postgres patterns
npx add-skill anthropics/skills # Frontend design + skill-creator
npx add-skill anthropics/claude-plugins-official # CLAUDE.md auditor + plugin dev tools

Supported agents: 20+ including Claude Code, Cursor, GitHub Copilot, Windsurf, Cline, Goose

Status: Community project (Vercel Labs), very recent (Jan 2026), rapid adoption but early stage

Format: 100% compatible with Claude Code’s .claude/skills/ structure (SKILL.md + YAML frontmatter)

URL: github.com/davila7/claude-code-templates | Stars: 17K+

What it is: GitHub-based distribution of full workflows (agents + commands + hooks + skills). Focuses on complete project templates rather than individual skills.

Installation: Clone and copy templates manually

Status: Established community resource, broader scope than skills.sh (includes entire .claude/ configurations)

URL: skillsmp.com

What it is: Community-driven index of 7000+ skills with AI-evaluated rankings (S/A/B/C tiers)

Focus: Discovery and cataloging, broader ecosystem than just Claude Code

Use CasePlatform
Discover popular framework skillsskills.sh (leaderboard)
One-command install official skillsskills.sh (Vercel React, Supabase)
Full workflow templatesclaude-code-templates
Team-specific/internal skillsGitHub repos (custom)
Enterprise custom skillsLocal .claude/skills/

See Section 5.5: Skills Marketplace for:

  • Detailed installation instructions
  • Top skills by category (Frontend, Database, Auth, Testing)
  • Format compatibility details
  • Trade-offs and recommendations

When working with LLMs on large codebases, context packing refers to techniques for extracting and feeding relevant code context to the model efficiently.

Claude Code automatically reads files as needed, but external tools exist for:

  • Pre-session preparation: Dump relevant code before starting
  • Cross-tool workflows: Feed context to models outside Claude Code
  • Offline analysis: Prepare context for later use
ToolPurposeHow It Works
gitingestRepo → text dumpExtracts relevant files into a single text file for LLM consumption
repo2txtRepo → formatted contextSimilar to gitingest, with formatting options
Context7 MCPDocs lookupFetches library documentation on-demand (see MCP section)
ScenarioBest Approach
Working in Claude CodeLet Claude read files naturally — no pre-dumping needed
Feeding context to ChatGPT/Geminigitingest/repo2txt useful
Preparing spec for team reviewExport relevant files to share
Very large monorepo (>1M LOC)May help with selective extraction

Note: Claude Code’s native file access is usually sufficient. These tools are most useful for cross-tool workflows or when working with models that don’t have file system access.

Architecture Diagrams as Context (Advanced Pattern)

Section titled “Architecture Diagrams as Context (Advanced Pattern)”

For large OOP codebases, research confirms LLMs struggle with polymorphism and dependency reasoning when processing files in chunks (ACM 2024: “LLMs Still Can’t Avoid Instanceof”).

Problem: File chunking loses structural relationships (class hierarchies, interface implementations, cross-module dependencies).

Solution: Include architecture diagrams in project context to provide explicit relationships.

ApproachMaintenanceToken CostBest For
Archy MCPZero (auto-gen)On-demandGitHub repos with class hierarchies
Inline MermaidManual200-500 tokensCustom architectural views
PlantUML refManualMinimalEnterprise/IDE integration

Archy MCP (phxdev1, April 2025):

Mermaid MCP (hustcc, 61.4K users):

  • Custom themes, background colors
  • Real-time rendering

Blueprint MCP (ArcadeAI):

  • Text descriptions → technical diagrams
  • Async job management
## Architecture Overview
\`\`\`mermaid
classDiagram
class UserService {
+authenticate()
+getProfile()
}
class AuthProvider {
<<interface>>
+validate()
}
UserService --> AuthProvider
\`\`\`
  • OOP codebases >20 modules with complex inheritance
  • Java/Spring projects with deep polymorphism
  • When Serena symbol overview is insufficient
  1. Try Serena first: get_symbols_overview + find_symbol (zero maintenance)
  2. If insufficient: Use Archy MCP to auto-generate class diagrams
  3. Last resort: Manual inline Mermaid for custom views

“Context structure matters more than context size” — Explicit relationships improve LLM reasoning on OOP architectures.

Source: LinkedIn discussion (Jan 2026)

Note: Pattern reported on Java/Spring project. Not validated at scale. Alternative Serena + grepai achieves similar results with zero maintenance.


Alternative Providers (Community Workarounds)

Section titled “Alternative Providers (Community Workarounds)”

⚠️ Disclaimer: This section documents techniques that exist in the community for completeness only. These methods are:

  • Not tested by the guide author
  • Not recommended for production use
  • Not supported by Anthropic
  • Subject to ToS restrictions from various providers

Our recommendation: Use Claude Code with Claude models as intended, or use tools designed for multi-provider support (Aider, Continue.dev).

Claude Code reads ANTHROPIC_BASE_URL from environment variables, following Anthropic SDK conventions. This is intended for enterprise gateways but can technically point to any Anthropic-compatible API proxy.

VariablePurposeStatus
ANTHROPIC_BASE_URLAPI endpoint overrideUndocumented for CC
ANTHROPIC_MODELDefault model nameSemi-documented
ANTHROPIC_AUTH_TOKENAPI authenticationOfficial
  1. Feature degradation: WebSearch, MCP, extended thinking modes are optimized for Claude and degrade with other models
  2. ToS risks: Reverse-engineering proxies (e.g., for GitHub Copilot) explicitly violate provider terms
  3. No support: Anthropic cannot help debug non-Claude setups
  4. Maintenance burden: Proxies break when providers change APIs
  5. Misleading outputs: Non-Claude responses may not match expected behavior

If you need local models or multi-provider flexibility:

NeedRecommended Tool
Local models (Ollama, vLLM)Aider
Multi-provider IDEContinue.dev
Claude + local flexibilityAider (supports both)

For those who understand the risks and want to explore anyway:

  • Community discussions on r/LocalLLaMA
  • LiteLLM documentation for proxy setups
  • GitHub search: “claude-code proxy”

We intentionally do not provide step-by-step instructions.


Back to Ultimate Guide | Main README