MCPcopy Index your code
hub / github.com/eastlondoner/vibe-tools

github.com/eastlondoner/vibe-tools @main sqlite

repository ↗ · DeepWiki ↗
656 symbols 1,402 edges 110 files 59 documented · 9%
README

Give AI Agents an AI team and advanced skills

Summary Prompt it
Essential information to understand what vibe-tools is and how to get started using it
Overview of available commands and their basic functionality
Browser automation commands and capabilities
LLM provider integration and configuration
Model Context Protocol (MCP) commands and tools
Testing framework and capabilities
Configuration options and customization
Telemetry implementation and infrastructure
Example usage

Table of Contents

The AI Team

  • Perplexity to search the web and perform deep research
  • Gemini 2.0 for huge whole-codebase context window, search grounding and reasoning
  • Stagehand for browser operation to test and debug web apps (uses Anthropic, OpenAI, Gemini, or OpenRouter models)
  • OpenRouter for access to a variety of models through a unified API (for MCP commands)

New Skills for your existing Agent

  • Work with GitHub Issues and Pull Requests
  • Access Linear issues with full context and comments
  • Generate local agent-accessible documentation for external dependencies
  • Analyze YouTube videos to extract insights, summaries, and implementation plans

vibe-tools is optimized for Cursor Composer Agent but it can be used by any coding agent that can execute commands

How do I use it?

After installation, to see AI teamwork in action just ask Cursor Composer to use Perplexity or Gemini. Here are two examples:

<h3>Asking Perplexity to carry out web research</h3>






<img width="350" alt="image" src="https://github.com/user-attachments/assets/d136c007-387b-449c-9737-553b34e71bbd" />

see what happens next...

<img width="350" alt="image" src="https://github.com/user-attachments/assets/06566162-fbaa-492a-8ce8-1a51e0713ee8" />

see what happens next...

  <img width="350" alt="image" src="https://github.com/user-attachments/assets/fbca8d46-0e0e-4752-922e-62cceec6c12b" />

see what happens next...

    <img width="1172" alt="image" src="https://github.com/user-attachments/assets/4bdae605-6f6c-43c3-b10c-c0263060033c" />









see the spec composer and perplexity produced together:
<a href="https://github.com/eastlondoner/pac-man/blob/main/specs/pac-man-spec.md">pac-man-spec.md</a> (link out to the example repo)



















<h3>Asking Gemini for a plan</h3>






<img width="350" src="https://github.com/user-attachments/assets/816daee4-0a31-4a6b-8aac-39796cb03b51" />

see what happens next...

<img width="350" alt="image" src="https://github.com/user-attachments/assets/b44c4cc2-6498-42e8-bda6-227fbfed0a7c" />

see what happens next...

  <img width="350" alt="image" src="https://github.com/user-attachments/assets/dcfcac67-ce79-4cd1-a66e-697c654ee986" />

see what happens next...

    <img width="350" alt="image" src="https://github.com/user-attachments/assets/8df7d591-f48b-463d-8d9b-f7e9c1c9c95b" />









see the spec composer and perplexity produced together:
<a href="https://github.com/eastlondoner/pac-man/blob/main/specs/pac-man-plan.md">pac-man-plan.md</a> (link out to the example repo)

What is vibe-tools

vibe-tools provides a CLI that your AI agent can use to expand its capabilities. vibe-tools is designed to be installed globally, providing system-wide access to its powerful features. When you run vibe-tools install, it configures instruction files tailored to your chosen development environment:

  • Supported IDEs/Environments: Cursor, Claude Code, Codex, Windsurf, Cline, Roo.
  • Instruction File Setup: The installer automatically creates or updates relevant configuration files:
  • For Cursor: .cursorrules or .cursor/rules/vibe-tools.mdc.
  • For Claude Code: CLAUDE.md (local or global ~/.claude/CLAUDE.md).
  • For Codex: codex.md (local or global ~/.codex/instructions.md).
  • For Windsurf: .windsurfrules.
  • For Cline/Roo: .clinerules directory (with vibe-tools.md) or legacy file.

vibe-tools supports multiple AI instruction sources including Claude code, Codex, and IDE-specific rules, ensuring compatibility across various AI-powered development setups.

vibe-tools integrates with multiple AI providers including OpenAI, Anthropic, Gemini, Perplexity, OpenRouter, ModelBox, and xAI (Grok).

vibe-tools requires a Perplexity API key and a Google AI API key.

vibe-tools is a node package that should be installed globally.

Installation

Install vibe-tools globally:

npm install -g vibe-tools

Then run the setup:

vibe-tools install .

This command will:

  1. Guide you through API key configuration for the AI providers you choose.
  2. Automatically install Playwright browsers (Chromium) for browser automation commands.
  3. Create or update AI instruction files based on your selected IDE (e.g., setting up .cursorrules for Cursor, CLAUDE.md for Claude Code, .windsurfrules for Windsurf, etc.).

Non-Interactive Installation (CI/CD)

For automated environments, vibe-tools install automatically detects CI environments and runs in non-interactive mode:

# CI environments - automatically detected and runs without prompts
CI=true vibe-tools install .

# Or explicitly set non-interactive mode
NONINTERACTIVE=true vibe-tools install .

In non-interactive mode, vibe-tools will: - Auto-detect your package manager and IDE environment - Use existing configurations (local takes precedence over global) - Apply sensible defaults for new installations - Skip writing API keys to files (uses environment variables only) - Enable telemetry by default (can be disabled with VIBE_TOOLS_NO_TELEMETRY=1)

Requirements

  • Node.js 18 or later
  • Perplexity API key
  • Google Gemini API key
  • For browser commands:
  • Playwright browsers are automatically installed during vibe-tools install
  • OpenAI API key or Anthropic API key (for act, extract, and observe commands)

vibe-tools uses Gemini-2.5 models by default, which provide excellent performance with large context windows up to 2 million tokens - enough to handle an entire codebase in one shot. Available Gemini models include gemini-2.5-flash (default for speed), gemini-2.5-pro (default for quality), and gemini-2.5-flash-lite-preview-06-17 (lightweight option). Gemini models are currently free to use on Google and you need a Google Cloud project to create an API key.

vibe-tools uses Perplexity because Perplexity has the best web search api and indexes and it doe

Extension points exported contracts — how you extend this code

Command (Interface)
(no doc) [65 implementers]
src/types.ts
RunCommandFlags (Interface)
* Command-specific flags and options
src/commands/xcode/run.ts
BaseModelProvider (Interface)
(no doc) [1 implementers]
src/providers/base.ts
Env (Interface)
(no doc)
infra/env.ts
CLIOptions (Interface)
(no doc)
src/index.ts
Stagehand (Interface)
(no doc)
src/types/browser/browser.ts
VersionInfo (Interface)
(no doc)
src/utils/versionUtils.ts
DiagnosticsData (Interface)
(no doc)
src/telemetry/index.ts

Core symbols most depended-on inside this repo

fetch
called by 25
infra/app/index.ts
debugLog
called by 17
src/config.ts
generateRules
called by 14
src/vibe-rules.ts
ensureDirectoryExists
called by 14
src/utils/installUtils.ts
appendToBuffer
called by 14
src/commands/test/executor-new.ts
once
called by 13
src/utils/once.ts
executePrompt
called by 12
src/providers/base.ts
createProvider
called by 12
src/providers/base.ts

Shape

Method 226
Function 210
Class 143
Interface 76
Enum 1

Languages

TypeScript100%

Modules by API surface

src/providers/base.ts99 symbols
src/errors.ts34 symbols
src/utils/tool-enabled-llm/unified-client.ts27 symbols
src/commands/browser/stagehand/stagehandUtils.ts25 symbols
src/commands/mcp/client/errors.ts19 symbols
src/utils/installUtils.ts15 symbols
src/telemetry/index.ts14 symbols
src/types/browser/browser.ts13 symbols
src/commands/xcode/run.ts12 symbols
src/types.ts11 symbols
src/commands/mcp/marketplace.ts11 symbols
src/commands/test/command-utils.ts10 symbols

Dependencies from manifests, versioned

@anthropic-ai/sdk0.56.0 · 1×
@browserbasehq/sdk2.6.0 · 1×
@cloudflare/workers-types4.20250506.0 · 1×
@eslint/js9.31.0 · 1×
@modelcontextprotocol/sdk1.15.1 · 1×
@nuxt/eslint1.4.0 · 1×
@playwright/test1.54.1 · 1×
@types/bun1.2.18 · 1×
@types/node24.0.14 · 1×
@typescript-eslint/eslint-plugin8.37.0 · 1×

For agents

$ claude mcp add vibe-tools \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact