Sign inSign up

wandb/catnip

By wandb

•Updated 9 months ago

Like catnip, a highly addictive agentic coding tool

Image
0

10K+

wandb/catnip repository overview

⁠🐱 CatNip

The developer environment that's like catnip for agentic programming

CatNip transforms the way you work with AI coding assistants by providing a sandboxed, containerized environment that's designed from the ground up for seamless human-AI collaboration. Think of it as your AI pair programmer's dream workspace.

ā šŸš€ Why CatNip?

Traditional development environments force AI assistants to work blind, making assumptions about your setup and struggling with context. CatNip flips this paradigm by providing:

  • šŸ”’ Isolated Sandbox: Every coding session runs in a pristine, containerized environment
  • šŸ’» Full Terminal Access: Real PTY sessions with bash, not simulated command execution
  • 🌐 Universal Access: Works locally via Docker or in the cloud with Cloudflare Containers
  • šŸ”„ Live Collaboration: Real-time WebSocket connections between your AI and the environment
  • šŸ“Š Rich Observability: Built-in logging, metrics, and debugging tools for AI workflows

⁠✨ Features

ā šŸŽÆ Current Features
  • āœ… Full PTY Access: Complete terminal sessions via xterm.js
  • āœ… Git Integration: Advanced git operations with worktree support
  • āœ… Multi-Project Support: Work on multiple repositories simultaneously
  • āœ… API Documentation: Comprehensive OpenAPI specs with interactive UI
  • āœ… Dark/Light Theme: Beautiful UI with ShadCN components
⁠🚧 Coming Soon
  • šŸ” Credential Persistence: Seamless authentication for Claude Code and GitHub CLI
  • šŸŒ HTTP Git Server: Fetch changes across branches and worktrees
  • šŸ”— Auto Port Forwarding: Automatic proxy setup for development servers
  • 🌐 Browser MCP Server: Puppeteer-like automation directly in the browser
  • šŸ“ˆ Log Aggregation: Centralized logging for easier debugging
  • šŸ”’ SSH Access: Full remote VSCode integration
  • šŸ› ļø Custom Startup Scripts: Personalized environment configuration

ā šŸƒā€ā™‚ļø Quick Start

⁠Local Development
# Clone the repository
git clone https://github.com/your-org/catnip.git
cd catnip

# Install dependencies
pnpm install

# Start the development server
pnpm dev

Visit http://localhost:3000 to access the CatNip interface.

⁠Cloud Deployment

Deploy to Cloudflare Containers for global access:

# Build and deploy
pnpm deploy

ā šŸ—ļø Architecture

CatNip is built with a modern, scalable architecture:

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”    ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”    ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│   React/Vite    │    │ Cloudflare      │    │   Go Container  │
│   Frontend      │◄──►│ Worker (Hono)   │◄──►│   Environment   │
│                 │    │                 │    │                 │
│ • ShadCN UI     │    │ • WebSocket     │    │ • PTY Sessions  │
│ • TanStack      │    │ • Container     │    │ • Git Server    │
│ • Tailwind      │    │   Management    │    │ • API Endpoints │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜    ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜    ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

ā šŸ› ļø Development

⁠Prerequisites
  • Node.js 18+ and pnpm
  • Docker and Docker Compose
  • Go 1.21+ (for container development)
⁠Development Commands
# Frontend development
pnpm dev              # Start Vite dev server
pnpm dev:cf          # Start with Cloudflare Workers
pnpm build           # Build for production
pnpm typecheck       # Type checking
pnpm lint            # ESLint

# Container development
cd container
go run cmd/server/main.go  # Start Go server
⁠Working with the Container
# Execute commands in the dev container
docker exec -it catnip-dev bash --login -c 'your-command'

# Check logs
docker logs --tail 200 catnip-dev

ā šŸ“š Documentation

ā šŸ¤ Contributing

We welcome contributions! CatNip is designed to make agentic programming more powerful and accessible.

  1. Fork the repository
  2. Create a feature branch
  3. Make your changes
  4. Add tests if applicable
  5. Submit a pull request

ā šŸ“„ License

This project is licensed under the MIT License - see the LICENSE⁠ file for details.

⁠🌟 Why "CatNip"?

Just like how catnip makes cats go crazy with excitement, CatNip makes AI coding assistants incredibly productive and effective. It's the perfect environment for unleashing the full potential of agentic programming!


Ready to supercharge your AI coding workflows? Give CatNip a try and experience the future of collaborative development! šŸš€

Tag summary

Content type

Image

Digest

sha256:ad62f5d76…

Size

1.3 GB

Last updated

9 months ago

docker pull wandb/catnip