{"_id":"@aicoders/vibe-code","_rev":"2-8cf62b02c1c3a1e1cdaacf8a9db612b3","name":"@aicoders/vibe-code","dist-tags":{"latest":"7.0.1"},"versions":{"7.0.0":{"name":"@aicoders/vibe-code","version":"7.0.0","keywords":["claude","claude-code","teaching","learning","mcp","ai","code-explanation"],"author":{"name":"Vibe Code Team"},"license":"MIT","_id":"@aicoders/vibe-code@7.0.0","maintainers":[{"name":"aicoders","email":"shawn14@gmail.com"}],"homepage":"https://github.com/shawn14/vibe-code#readme","bugs":{"url":"https://github.com/shawn14/vibe-code/issues"},"bin":{"vibe-code":"bin/vibe-code.js"},"dist":{"shasum":"f81e84d939058fc3fd742956c46bfe240a62a40f","tarball":"https://registry.npmjs.org/@aicoders/vibe-code/-/vibe-code-7.0.0.tgz","fileCount":32,"integrity":"sha512-Eqae7dC657fm/U300QXh1pX34ns7KCdgSiRMhRG+qLcw+rDBLsoju/XtKuQoC6YKJNV0OeziCMpGxTmQYnZxhw==","signatures":[{"sig":"MEUCIQDb6j+10I8QM+PiC0RUeVtJtXkiDVv2xnm6nxCvw4xJRAIgA9Z22LymxWmgbCfRjmXihH6sXHc2n6WqvvGnoLbnUgc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":254733},"main":"src/index.js","type":"module","engines":{"node":">=16.0.0"},"gitHead":"234582418cc476aef168b9dbeae62f709b563a1f","scripts":{"serve":"node src/mcp-server.js","start":"node bin/vibe-code.js","bridge":"node -e \"import('./src/communication-bridge.js').then(({CommunicationBridge}) => new CommunicationBridge().start())\"","dialogue":"node demo-dialogue.js"},"_npmUser":{"name":"aicoders","email":"shawn14@gmail.com"},"repository":{"url":"git+https://github.com/shawn14/vibe-code.git","type":"git"},"_npmVersion":"10.9.2","description":"Real-time code monitoring with teaching explanations, CLAUDE.md compliance checking, and interactive chat","directories":{},"_nodeVersion":"22.17.1","dependencies":{"ws":"^8.16.0","ora":"^8.0.1","diff":"^5.1.0","chalk":"^5.3.0","chokidar":"^3.5.3","inquirer":"^9.2.12","commander":"^11.1.0"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/vibe-code_7.0.0_1753130083737_0.7484123394542082","host":"s3://npm-registry-packages-npm-production"}},"7.0.1":{"name":"@aicoders/vibe-code","version":"7.0.1","description":"Real-time code monitoring with teaching explanations, CLAUDE.md compliance checking, and interactive chat","type":"module","main":"src/index.js","bin":{"vibe-code":"bin/vibe-code.js"},"scripts":{"start":"node bin/vibe-code.js","serve":"node src/mcp-server.js","dialogue":"node demo-dialogue.js","bridge":"node -e \"import('./src/communication-bridge.js').then(({CommunicationBridge}) => new CommunicationBridge().start())\""},"keywords":["claude","claude-code","teaching","learning","mcp","ai","code-explanation"],"author":{"name":"Vibe Code Team"},"license":"MIT","engines":{"node":">=16.0.0"},"dependencies":{"chalk":"^5.3.0","chokidar":"^3.5.3","commander":"^11.1.0","inquirer":"^9.2.12","ws":"^8.16.0","diff":"^5.1.0","ora":"^8.0.1"},"repository":{"type":"git","url":"git+https://github.com/shawn14/vibe-code.git"},"bugs":{"url":"https://github.com/shawn14/vibe-code/issues"},"homepage":"https://github.com/shawn14/vibe-code#readme","_id":"@aicoders/vibe-code@7.0.1","gitHead":"234582418cc476aef168b9dbeae62f709b563a1f","_nodeVersion":"22.17.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-h966U1S6zhS0QXegGdVBX66DnDOFhGdxxu52CQrkF5KhbpxirrY0WK3W9egOoIFvMqrCrn0nhgJIklACu8ysCg==","shasum":"fee3abb34b4d4863a29c1a4d1eefb66abb04c89d","tarball":"https://registry.npmjs.org/@aicoders/vibe-code/-/vibe-code-7.0.1.tgz","fileCount":32,"unpackedSize":254733,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCICoTAzCtbSMAaICcybJkDhhTtiANWgXeySWnRo/ED6CuAiEAtigdwg2uK3LBxCvezJeoORo7qPjIsu97hsLhTmPomoo="}]},"_npmUser":{"name":"aicoders","email":"shawn14@gmail.com"},"directories":{},"maintainers":[{"name":"aicoders","email":"shawn14@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vibe-code_7.0.1_1753130172654_0.5114907168098741"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-21T20:34:43.654Z","modified":"2025-07-21T20:36:13.048Z","7.0.0":"2025-07-21T20:34:44.063Z","7.0.1":"2025-07-21T20:36:12.839Z"},"bugs":{"url":"https://github.com/shawn14/vibe-code/issues"},"author":{"name":"Vibe Code Team"},"license":"MIT","homepage":"https://github.com/shawn14/vibe-code#readme","keywords":["claude","claude-code","teaching","learning","mcp","ai","code-explanation"],"repository":{"type":"git","url":"git+https://github.com/shawn14/vibe-code.git"},"description":"Real-time code monitoring with teaching explanations, CLAUDE.md compliance checking, and interactive chat","maintainers":[{"name":"aicoders","email":"shawn14@gmail.com"}],"readme":"# Vibe Code\n\nReal-time code monitoring tool that teaches you while you code. Features three powerful modes switchable with Shift+Tab: Diff Mode with teaching explanations, Rules Mode for CLAUDE.md compliance, and Chat Mode for interactive Q&A.\n\n## Quick Start\n\n```bash\nnpx vibe-code\n```\n\nOr install globally:\n\n```bash\nnpm install -g vibe-code\nvibe-code\n```\n\n## Features\n\n### 🎓 One Unified Monitor with Three Modes\n\nSwitch between modes instantly using **Shift+Tab**:\n\n#### 1. 🔍 **Diff Mode** - Code Changes with Teaching\n- Shows exact git diff for every file change\n- Provides AI-powered explanations of what changed\n- Teaches programming concepts related to the changes\n- Helps you understand the \"why\" behind code modifications\n\n#### 2. 📋 **Rules Mode** - CLAUDE.md Compliance & Best Practices\n- Monitors code against your project's CLAUDE.md guidelines\n- Real-time security vulnerability detection\n- Performance issue identification\n- Best practice enforcement\n- Architectural pattern checking\n\n#### 3. 💬 **Chat Mode** - Interactive Q&A\n- Ask questions while coding\n- Get explanations about recent changes\n- Learn programming concepts on demand\n- Context-aware responses based on your code\n\n## Usage\n\n### Start Monitoring\n\n```bash\nnpx vibe-code\n```\n\nChoose \"Start Monitoring\" from the menu, and the unified monitor will begin watching your files.\n\n### Mode Switching\n\nOnce monitoring starts, press **Shift+Tab** at any time to cycle through the three modes:\n\n```\n🎓 Vibe Code\n─────────────────────────────────────────────────\n🔄 Available Modes:\n  • Diff - Code changes with teaching explanations\n  • Rules - Monitor CLAUDE.md compliance\n  • Chat - Interactive Q&A\n─────────────────────────────────────────────────\n\n✨ Switched to: 🔍 Diff Mode - See code changes with teaching explanations\nPress Shift+Tab to switch modes • Ctrl+C to exit\n```\n\n### Watch a Specific Directory\n\n```bash\nnpx vibe-code watch /path/to/project\n```\n\n### Initialize for Claude Code Integration\n\n```bash\nnpx vibe-code init\n```\n\n## Mode Examples\n\n### Diff Mode Example\n\n```\n🔍 Vibe Code - Diff Mode\n══════════════════════════════════════════════════\n📌 UPDATE #1 | 2:45:32 PM\n══════════════════════════════════════════════════\n📝 auth-service.js\n\nChanges:\n@@ -15,6 +15,8 @@\n   const existingUser = await this.userRepository.findByEmail(email);\n   if (existingUser) {\n     throw new ValidationError('User already exists');\n   }\n+  \n+  // Add rate limiting\n+  await this.checkRateLimit(email);\n\n🎓 What this change does:\nThis change modifies auth-service.js with 2 additions and 0 deletions. \nKey changes: Function implementation changed.\n\n💡 Teaching: This uses async/await for handling asynchronous operations, \nmaking the code more readable than callbacks or promise chains.\n```\n\n### Rules Mode Example\n\n```\n📋 Vibe Code - Rules Mode\n─────────────────────────────────────────────────\n📝 payment-handler.js 2:46:15 PM\n\n🚨 Rule Violations:\n  🚨 Hardcoded secrets detected! Use environment variables instead.\n     Line 5\n  🚨 SQL injection vulnerability! Use parameterized queries.\n     Line 12\n\n💡 Suggestions:\n  💡 Use const/let instead of var for better scoping.\n  💡 Consider adding \"use strict\" for safer JavaScript.\n\n🧙 Senior Dev Suggestions:\n  ⚠️ Synchronous file operations block the event loop. Use async versions.\n```\n\n### Chat Mode Example\n\n```\n🎓 Vibe Code - Chat Mode\n─────────────────────────────────────────────────\n📁 Recent Changes:\n  📝 auth-service.js 2:45:32 PM\n  ✅ auth-service.test.js 2:46:15 PM\n\n💬 Chat:\n─────────────────────────────────────────────────\nYou: What changed in the auth service?\n\nTeacher: File auth-service.js was modified.\n\nThis change modifies auth-service.js with 2 additions and 0 deletions.\nKey changes: Function implementation changed.\n\n💡 Teaching: This uses async/await for handling asynchronous operations,\nmaking the code more readable than callbacks or promise chains.\n\nYou: What is rate limiting?\n\nTeacher: Rate limiting is like a bouncer at a club - it controls how many \nrequests someone can make in a given time period. It prevents attackers \nfrom trying thousands of passwords quickly!\n─────────────────────────────────────────────────\n💬 \n```\n\n## CLAUDE.md Integration\n\nThe Rules Mode automatically reads your project's `CLAUDE.md` file to understand:\n- Project-specific commands\n- Architecture patterns to enforce\n- Security requirements\n- Performance guidelines\n\nIf no CLAUDE.md exists, it uses sensible defaults for security and best practices.\n\n## Chat Commands\n\nIn Chat Mode, you can use these commands:\n- `/help` - Show available commands\n- `/clear` - Clear chat history\n- `/quit` - Exit the program\n\n## Development\n\n```bash\n# Clone the repo\ngit clone https://github.com/yourusername/vibe-code.git\ncd vibe-code\n\n# Install dependencies\nnpm install\n\n# Run locally\nnpm start\n```\n\n## License\n\nMIT","readmeFilename":"README.md"}