Context7 MCP.md 2.5 KB


inclusion: always

Context7 MCP Integration Guide

Mandatory Documentation Lookup

MUST use Context7 MCP before implementing:

  • Binary execution (child_process.spawn, execFile)
  • Electron IPC patterns (main ↔ renderer communication)
  • File system operations (downloads, path validation)
  • Video processing (yt-dlp/ffmpeg command construction)
  • URL parsing and validation logic
  • Error handling patterns for async operations

Library Resolution

Required Context7 library searches:

  • Electron: Search "electron" → Use exact library ID for IPC/security docs
  • Node.js: Search "node" → Core modules (fs, child_process, path, url, stream)
  • yt-dlp: Search "yt-dlp" → Command options, output formats, error codes
  • ffmpeg: Search "ffmpeg" → Codec parameters, conversion options

Implementation Protocol

  1. Documentation first: Query Context7 before writing any code
  2. Security validation: Look up input sanitization patterns
  3. Error boundaries: Research exception handling for subprocess operations
  4. Platform compatibility: Verify cross-platform behavior (Windows/macOS/Linux)
  5. Performance patterns: Check async/await best practices

Critical Documentation Areas

Process Management

  • spawn() vs execFile() selection criteria
  • stdio pipe configuration (['pipe', 'pipe', 'pipe'])
  • Process lifecycle (spawn → monitor → cleanup)
  • Signal handling and graceful termination
  • Command injection prevention

Electron Architecture

  • Preload script security (contextIsolation, nodeIntegration: false)
  • IPC channel design (ipcMain.handle, ipcRenderer.invoke)
  • Renderer sandboxing and privilege escalation prevention
  • File access through main process only

Binary Integration

  • yt-dlp format codes (-f "best[height<=720]")
  • ffmpeg codec selection (-c:v libx264, -c:a aac)
  • Progress monitoring (stdout parsing, regex patterns)
  • Metadata extraction (--dump-json, --no-download)
  • Cookie file handling for authentication

Error Handling

  • Process exit codes and stderr parsing
  • Network timeout handling (5s max for API calls)
  • Graceful degradation when binaries missing
  • User-friendly error message mapping

Query Optimization

Effective searches:

  • "electron contextIsolation preload security"
  • "child_process spawn stdio error handling node"
  • "yt-dlp format selection quality options"
  • "ffmpeg mp4 conversion parameters"

Avoid generic terms:

  • "electron basics"
  • "node subprocess"
  • "video download"