Add vibe-kanban
This commit is contained in:
125
docs/ENV_FILE_SETUP.md
Normal file
125
docs/ENV_FILE_SETUP.md
Normal file
@@ -0,0 +1,125 @@
|
||||
# .env File Setup
|
||||
|
||||
## Overview
|
||||
|
||||
A `.env` file has been created at the project root to store environment variables **primarily for Vibe Kanban worktrees**. The .NET API optionally loads this file using the `DotNetEnv` package.
|
||||
|
||||
**Note**: `.env` file loading is **optional** - if the file doesn't exist, the application will continue normally using system environment variables and `appsettings.json`. This is expected behavior for normal operation.
|
||||
|
||||
## What Was Done
|
||||
|
||||
1. **Created `.env` file** at project root with all environment variables
|
||||
2. **Added DotNetEnv package** to `Managing.Api.csproj`
|
||||
3. **Updated `Program.cs`** to automatically load `.env` file before configuration
|
||||
4. **Updated `.gitignore`** to exclude `.env` files from version control
|
||||
|
||||
## File Locations
|
||||
|
||||
- **`.env`**: Project root (`/Users/oda/Desktop/Projects/managing-apps/.env`)
|
||||
- **Configuration**: `src/Managing.Api/Program.cs` (lines 34-58)
|
||||
|
||||
## How It Works
|
||||
|
||||
The `Program.cs` file **optionally** searches for a `.env` file in multiple locations:
|
||||
1. Current working directory
|
||||
2. Executable directory
|
||||
3. Project root (relative to bin/Debug/net8.0)
|
||||
4. Current directory (absolute path)
|
||||
|
||||
When found, it loads the environment variables before `WebApplication.CreateBuilder` is called, ensuring they're available to the configuration system.
|
||||
|
||||
**Important**: If no `.env` file is found, the application continues normally without any warnings. This is expected behavior - the `.env` file is only needed for Vibe Kanban worktrees.
|
||||
|
||||
## Environment Variables Included
|
||||
|
||||
The `.env` file contains:
|
||||
- Database connection strings (PostgreSQL, Orleans)
|
||||
- InfluxDB configuration
|
||||
- JWT secrets
|
||||
- Privy configuration
|
||||
- Admin users and authorized addresses
|
||||
- Feature flags
|
||||
- Discord, N8n, Sentry, Flagsmith configurations
|
||||
- Orleans configuration
|
||||
|
||||
## Usage
|
||||
|
||||
### Local Development
|
||||
|
||||
When running the API locally (outside Docker), the `.env` file will be **optionally** loaded if it exists:
|
||||
|
||||
```bash
|
||||
cd src/Managing.Api
|
||||
dotnet run
|
||||
```
|
||||
|
||||
If `.env` exists, you'll see: `✅ Loaded .env file from: [path] (optional - for Vibe Kanban worktrees)`
|
||||
|
||||
If `.env` doesn't exist, the application runs normally using system environment variables and `appsettings.json` (no message is shown).
|
||||
|
||||
### Vibe Kanban Worktrees
|
||||
|
||||
When Vibe Kanban creates a worktree, configure it to copy the `.env` file:
|
||||
|
||||
**In Vibe Kanban Settings → Copy Files:**
|
||||
```
|
||||
.env
|
||||
```
|
||||
|
||||
The API will automatically find and load the `.env` file from the worktree root.
|
||||
|
||||
### Docker Containers
|
||||
|
||||
Docker containers continue to use environment variables set in `docker-compose.yml` files. The `.env` file is not used in Docker (environment variables are passed directly to containers).
|
||||
|
||||
## Security
|
||||
|
||||
⚠️ **Important**: The `.env` file contains sensitive information and is excluded from git via `.gitignore`.
|
||||
|
||||
**Never commit the `.env` file to version control!**
|
||||
|
||||
## Updating Environment Variables
|
||||
|
||||
To update environment variables:
|
||||
|
||||
1. Edit `.env` file at project root
|
||||
2. Restart the application
|
||||
3. The new values will be loaded automatically
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### .env file not found
|
||||
|
||||
**This is normal!** The `.env` file is optional and only needed for Vibe Kanban worktrees. If no `.env` file is found, the application will:
|
||||
- Continue normally
|
||||
- Use system environment variables
|
||||
- Use `appsettings.json` files
|
||||
- No error or warning is shown (this is expected behavior)
|
||||
|
||||
If you need the `.env` file for Vibe Kanban:
|
||||
- Ensure `.env` exists at the project root
|
||||
- Configure Vibe Kanban to copy it in "Copy Files" settings
|
||||
|
||||
### Variables not loading
|
||||
|
||||
- Ensure `.env` file is at project root
|
||||
- Check file format (KEY=VALUE, one per line)
|
||||
- Verify no syntax errors in `.env` file
|
||||
- Restart the application after changes
|
||||
|
||||
### Priority Order
|
||||
|
||||
Configuration is loaded in this order (later sources override earlier ones):
|
||||
1. `.env` file (via DotNetEnv)
|
||||
2. `appsettings.json`
|
||||
3. `appsettings.{Environment}.json`
|
||||
4. System environment variables
|
||||
5. User Secrets (Development only)
|
||||
|
||||
## Related Files
|
||||
|
||||
- `src/Managing.Api/Program.cs` - Loads .env file
|
||||
- `src/Managing.Api/Managing.Api.csproj` - Contains DotNetEnv package reference
|
||||
- `.gitignore` - Excludes .env files
|
||||
- `scripts/create-task-compose.sh` - Docker environment variables (separate from .env)
|
||||
|
||||
283
docs/INSTALL_VIBE_KANBAN_AND_DEV_MANAGER.md
Normal file
283
docs/INSTALL_VIBE_KANBAN_AND_DEV_MANAGER.md
Normal file
@@ -0,0 +1,283 @@
|
||||
# Installation Guide: Vibe Kanban & dev-manager-mcp
|
||||
|
||||
This guide will help you install and configure Vibe Kanban and dev-manager-mcp for managing your development workflow with isolated test environments.
|
||||
|
||||
## Prerequisites
|
||||
|
||||
- Node.js >= 18 (or Bun)
|
||||
- Docker installed and running
|
||||
- PostgreSQL client (psql) installed
|
||||
- Main database running on localhost:5432
|
||||
|
||||
## Part 1: Install dev-manager-mcp
|
||||
|
||||
dev-manager-mcp is a daemon that manages multiple dev servers in parallel, allocating unique ports to avoid collisions.
|
||||
|
||||
### Installation
|
||||
|
||||
**Option 1: Use via npx (Recommended - No Installation Needed)**
|
||||
|
||||
No installation required! Just use `npx`:
|
||||
|
||||
```bash
|
||||
# Start the daemon
|
||||
npx -y dev-manager-mcp daemon
|
||||
```
|
||||
|
||||
**Option 2: Install Globally**
|
||||
|
||||
```bash
|
||||
npm install -g dev-manager-mcp
|
||||
# or
|
||||
bun install -g dev-manager-mcp
|
||||
```
|
||||
|
||||
### Start the Daemon
|
||||
|
||||
Open a terminal and keep it running:
|
||||
|
||||
```bash
|
||||
npx -y dev-manager-mcp daemon
|
||||
```
|
||||
|
||||
You should see output indicating the daemon is running. Keep this terminal open.
|
||||
|
||||
### Verify Installation
|
||||
|
||||
In another terminal, test the MCP connection:
|
||||
|
||||
```bash
|
||||
# Check if daemon is accessible
|
||||
npx dev-manager-mcp status
|
||||
```
|
||||
|
||||
## Part 2: Install Vibe Kanban
|
||||
|
||||
Vibe Kanban is a task management system that integrates with coding agents and can automatically start dev environments.
|
||||
|
||||
### Installation
|
||||
|
||||
**Option 1: Use via npx (Recommended - No Installation Needed)**
|
||||
|
||||
```bash
|
||||
# Just run it - no installation needed
|
||||
npx vibe-kanban
|
||||
```
|
||||
|
||||
**Option 2: Install Globally**
|
||||
|
||||
```bash
|
||||
npm install -g vibe-kanban
|
||||
# or
|
||||
bun install -g vibe-kanban
|
||||
```
|
||||
|
||||
### First Run
|
||||
|
||||
1. **Start Vibe Kanban:**
|
||||
|
||||
```bash
|
||||
npx vibe-kanban
|
||||
```
|
||||
|
||||
2. **Authenticate with your coding agent:**
|
||||
- Vibe Kanban will prompt you to authenticate
|
||||
- Follow the instructions for your agent (Claude, Codex, etc.)
|
||||
|
||||
3. **Access the UI:**
|
||||
- Vibe Kanban will start a web server
|
||||
- Open the URL shown in the terminal (usually http://localhost:3000)
|
||||
|
||||
### Configure MCP Integration
|
||||
|
||||
1. **Open Vibe Kanban Settings:**
|
||||
- In the Vibe Kanban UI, go to Settings
|
||||
- Find "MCP Servers" or "Agent Configuration"
|
||||
|
||||
2. **Add dev-manager-mcp:**
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
"dev-manager": {
|
||||
"command": "npx",
|
||||
"args": ["dev-manager-mcp", "stdio"]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
3. **Configure QA Automation:**
|
||||
- In Settings, find "QA" or "Testing" section
|
||||
- Enable "Auto-start dev environments"
|
||||
- Set script path: `scripts/start-task-docker.sh`
|
||||
- Set health check URL: `http://localhost:{port}/health`
|
||||
|
||||
## Part 3: Configure for Your Project
|
||||
|
||||
### Create Vibe Kanban Configuration
|
||||
|
||||
**Recommended: At Projects level** (to manage all projects):
|
||||
|
||||
Create a `.vibe-kanban` directory in your Projects folder:
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects
|
||||
mkdir -p .vibe-kanban
|
||||
```
|
||||
|
||||
Create `/Users/oda/Desktop/Projects/.vibe-kanban/config.json`:
|
||||
|
||||
```json
|
||||
{
|
||||
"projectRoot": "/Users/oda/Desktop/Projects",
|
||||
"mcpServers": {
|
||||
"dev-manager": {
|
||||
"command": "npx",
|
||||
"args": ["dev-manager-mcp", "stdio"]
|
||||
}
|
||||
},
|
||||
"qa": {
|
||||
"enabled": true,
|
||||
"autoStartDevEnv": true,
|
||||
"devEnvScript": "managing-apps/scripts/start-task-docker.sh",
|
||||
"healthCheckUrl": "http://localhost:{port}/health",
|
||||
"dashboardUrl": "http://localhost:{port}"
|
||||
},
|
||||
"tasks": {
|
||||
"statuses": {
|
||||
"ready-for-qa": {
|
||||
"autoStartDevEnv": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Note**: The `devEnvScript` path is relative to the Projects folder. For managing-apps, it's `managing-apps/scripts/start-task-docker.sh`. For other projects, configure project-specific scripts in Vibe Kanban's project settings.
|
||||
|
||||
### Update Your MCP Configuration
|
||||
|
||||
If you're using Cursor or another editor with MCP support, add to your MCP config (usually `~/.cursor/mcp.json` or similar):
|
||||
|
||||
```json
|
||||
{
|
||||
"mcpServers": {
|
||||
"dev-manager": {
|
||||
"command": "npx",
|
||||
"args": ["dev-manager-mcp", "stdio"]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Part 4: Usage Workflow
|
||||
|
||||
### For Development (Agent)
|
||||
|
||||
1. **Make code changes**
|
||||
2. **Start test environment:**
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects/managing-apps
|
||||
bash scripts/start-dev-env.sh DEV-A3X9
|
||||
```
|
||||
3. **Test your changes** at the provided URLs
|
||||
4. **Stop when done:**
|
||||
```bash
|
||||
bash scripts/stop-task-docker.sh DEV-A3X9
|
||||
```
|
||||
|
||||
### For QA (Vibe Kanban)
|
||||
|
||||
1. **Move task to "Ready for QA" status**
|
||||
2. **Vibe Kanban automatically:**
|
||||
- Starts a Docker environment
|
||||
- Copies the database
|
||||
- Provides test URLs
|
||||
3. **Test the task**
|
||||
4. **Move to "Done" or "Needs Changes"**
|
||||
5. **Vibe Kanban automatically stops the environment**
|
||||
|
||||
### Manual Management
|
||||
|
||||
**Start an environment:**
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects/managing-apps
|
||||
bash scripts/start-task-docker.sh TASK-123 0
|
||||
```
|
||||
|
||||
**Check status:**
|
||||
```bash
|
||||
npx dev-manager-mcp status
|
||||
```
|
||||
|
||||
**View logs:**
|
||||
```bash
|
||||
docker logs managing-api-TASK-123
|
||||
```
|
||||
|
||||
**Stop an environment:**
|
||||
```bash
|
||||
bash scripts/stop-task-docker.sh TASK-123
|
||||
```
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### dev-manager-mcp Issues
|
||||
|
||||
**Daemon not starting:**
|
||||
- Check Node.js version: `node --version` (needs >= 18)
|
||||
- Try: `npx -y dev-manager-mcp daemon --verbose`
|
||||
|
||||
**Cannot connect to daemon:**
|
||||
- Make sure daemon is running in another terminal
|
||||
- Check if port is already in use
|
||||
- Restart the daemon
|
||||
|
||||
### Vibe Kanban Issues
|
||||
|
||||
**Cannot start:**
|
||||
- Check Node.js version: `node --version` (needs >= 18)
|
||||
- Try: `npx vibe-kanban --verbose`
|
||||
|
||||
**MCP not working:**
|
||||
- Verify dev-manager-mcp daemon is running
|
||||
- Check MCP configuration in Vibe Kanban settings
|
||||
- Restart Vibe Kanban
|
||||
|
||||
**Auto-start not working:**
|
||||
- Check script path in configuration
|
||||
- Verify script is executable: `chmod +x scripts/start-task-docker.sh`
|
||||
- Check Vibe Kanban logs
|
||||
|
||||
### Docker Issues
|
||||
|
||||
**Port conflicts:**
|
||||
- Use different port offset: `bash scripts/start-task-docker.sh TASK-123 10`
|
||||
- Check what's using ports: `lsof -i :5000`
|
||||
|
||||
**Database copy fails:**
|
||||
- Verify main database is running: `docker ps | grep postgres`
|
||||
- Check PostgreSQL client: `which psql`
|
||||
- Verify connection: `PGPASSWORD=postgres psql -h localhost -p 5432 -U postgres -d managing -c '\q'`
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. ✅ Install dev-manager-mcp (via npx)
|
||||
2. ✅ Install Vibe Kanban (via npx)
|
||||
3. ✅ Start dev-manager-mcp daemon
|
||||
4. ✅ Start Vibe Kanban
|
||||
5. ✅ Configure MCP integration
|
||||
6. ✅ Test with a sample task
|
||||
|
||||
## Resources
|
||||
|
||||
- [Vibe Kanban GitHub](https://github.com/BloopAI/vibe-kanban)
|
||||
- [Vibe Kanban Documentation](https://www.vibekanban.com/vibe-guide)
|
||||
- [dev-manager-mcp GitHub](https://github.com/BloopAI/dev-manager-mcp)
|
||||
- [MCP Documentation](https://modelcontextprotocol.io/)
|
||||
|
||||
## Support
|
||||
|
||||
- Vibe Kanban: [GitHub Discussions](https://github.com/BloopAI/vibe-kanban/discussions)
|
||||
- dev-manager-mcp: [GitHub Issues](https://github.com/BloopAI/dev-manager-mcp/issues)
|
||||
|
||||
177
docs/TASK_ENVIRONMENTS_SETUP.md
Normal file
177
docs/TASK_ENVIRONMENTS_SETUP.md
Normal file
@@ -0,0 +1,177 @@
|
||||
# Task Environments Setup with Docker Compose
|
||||
|
||||
This document explains how to use Docker Compose to create isolated test environments for each development task.
|
||||
|
||||
## Overview
|
||||
|
||||
Each task gets its own isolated Docker Compose environment with:
|
||||
- ✅ Isolated PostgreSQL database (copy of main database)
|
||||
- ✅ Isolated Redis instance
|
||||
- ✅ API and Workers containers
|
||||
- ✅ Uses main InfluxDB instance (shared)
|
||||
- ✅ Unique ports per task to avoid conflicts
|
||||
|
||||
## Quick Start
|
||||
|
||||
### Start a Test Environment
|
||||
|
||||
```bash
|
||||
# Simple way (auto-generates task ID)
|
||||
bash scripts/start-dev-env.sh
|
||||
|
||||
# With specific task ID
|
||||
bash scripts/start-dev-env.sh TASK-123
|
||||
|
||||
# With specific task ID and port offset
|
||||
bash scripts/start-dev-env.sh TASK-123 10
|
||||
```
|
||||
|
||||
### Stop a Test Environment
|
||||
|
||||
```bash
|
||||
bash scripts/stop-task-docker.sh TASK-123
|
||||
```
|
||||
|
||||
## Scripts
|
||||
|
||||
### `scripts/start-task-docker.sh`
|
||||
Main script that:
|
||||
1. Creates task-specific Docker Compose file
|
||||
2. Starts PostgreSQL and Redis
|
||||
3. Copies database from main repo
|
||||
4. Starts API and Workers
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
bash scripts/start-task-docker.sh <TASK_ID> <PORT_OFFSET>
|
||||
```
|
||||
|
||||
### `scripts/stop-task-docker.sh`
|
||||
Stops and cleans up a task environment.
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
bash scripts/stop-task-docker.sh <TASK_ID>
|
||||
```
|
||||
|
||||
### `scripts/copy-database-for-task.sh`
|
||||
Copies database from main repo to task-specific PostgreSQL instance.
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
bash scripts/copy-database-for-task.sh <TASK_ID> <SOURCE_HOST> <SOURCE_PORT> <TARGET_HOST> <TARGET_PORT>
|
||||
```
|
||||
|
||||
### `scripts/create-task-compose.sh`
|
||||
Generates a Docker Compose file for a specific task.
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
bash scripts/create-task-compose.sh <TASK_ID> <PORT_OFFSET>
|
||||
```
|
||||
|
||||
### `scripts/start-dev-env.sh`
|
||||
Simple wrapper for dev agents to start environments.
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
bash scripts/start-dev-env.sh [TASK_ID] [PORT_OFFSET]
|
||||
```
|
||||
|
||||
## Port Allocation
|
||||
|
||||
Default ports (offset 0):
|
||||
- PostgreSQL: 5433
|
||||
- API: 5000
|
||||
- Redis: 6379
|
||||
- InfluxDB: 8086 (uses main instance)
|
||||
|
||||
With offset 10:
|
||||
- PostgreSQL: 5442
|
||||
- API: 5010
|
||||
- Redis: 6389
|
||||
- InfluxDB: 8086 (uses main instance)
|
||||
|
||||
## Database Setup
|
||||
|
||||
Each task environment:
|
||||
- Gets a fresh copy of the main database
|
||||
- Has isolated databases: `managing_{task_id}` and `orleans_{task_id}`
|
||||
- Changes don't affect the main database
|
||||
- Can be reset by stopping and restarting
|
||||
|
||||
## Integration with Vibe Kanban
|
||||
|
||||
When a task moves to "Ready for QA":
|
||||
1. Vibe Kanban calls `scripts/start-task-docker.sh`
|
||||
2. Environment is created with database copy
|
||||
3. Test URLs are provided
|
||||
4. When done, Vibe Kanban calls `scripts/stop-task-docker.sh`
|
||||
|
||||
## Integration with dev-manager-mcp
|
||||
|
||||
dev-manager-mcp can manage multiple environments:
|
||||
- Start: `npx dev-manager-mcp start --command "bash scripts/start-task-docker.sh TASK-123 0"`
|
||||
- Status: `npx dev-manager-mcp status`
|
||||
- Stop: `npx dev-manager-mcp stop --session-key <KEY>`
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Port Conflicts
|
||||
Use a different port offset:
|
||||
```bash
|
||||
bash scripts/start-task-docker.sh TASK-123 10
|
||||
```
|
||||
|
||||
### Database Copy Fails
|
||||
1. Verify main database is running: `docker ps | grep postgres`
|
||||
2. Check connection: `PGPASSWORD=postgres psql -h localhost -p 5432 -U postgres -d managing -c '\q'`
|
||||
3. Ensure PostgreSQL client is installed: `which psql`
|
||||
|
||||
### Services Don't Start
|
||||
Check logs:
|
||||
```bash
|
||||
docker logs managing-api-TASK-123
|
||||
docker logs managing-workers-TASK-123
|
||||
```
|
||||
|
||||
### Clean Up All Task Environments
|
||||
```bash
|
||||
# List all task containers
|
||||
docker ps -a | grep -E "postgres-|managing-api-|managing-workers-|redis-"
|
||||
|
||||
# Stop and remove all task containers
|
||||
docker ps -a | grep -E "postgres-|managing-api-|managing-workers-|redis-" | awk '{print $1}' | xargs docker rm -f
|
||||
|
||||
# Remove all task volumes
|
||||
docker volume ls | grep -E "postgresdata_|redis_data_" | awk '{print $2}' | xargs docker volume rm
|
||||
```
|
||||
|
||||
## Best Practices
|
||||
|
||||
1. **Use descriptive task IDs**: `TASK-123`, `FEATURE-456`, `BUGFIX-789`
|
||||
2. **Stop environments when done**: Frees up resources
|
||||
3. **Use port offsets for parallel testing**: Test multiple tasks simultaneously
|
||||
4. **Check port availability**: Before starting, verify ports aren't in use
|
||||
5. **Monitor resource usage**: Each environment uses memory and CPU
|
||||
|
||||
## Architecture
|
||||
|
||||
```
|
||||
Main Environment (localhost:5432)
|
||||
├── PostgreSQL (main database)
|
||||
└── InfluxDB (shared)
|
||||
|
||||
Task Environment (offset ports)
|
||||
├── PostgreSQL (isolated, copied from main)
|
||||
├── Redis (isolated)
|
||||
├── API Container (connects to task PostgreSQL, main InfluxDB)
|
||||
└── Workers Container (connects to task PostgreSQL, main InfluxDB)
|
||||
```
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. Install Vibe Kanban: See `docs/INSTALL_VIBE_KANBAN_AND_DEV_MANAGER.md`
|
||||
2. Install dev-manager-mcp: See `docs/INSTALL_VIBE_KANBAN_AND_DEV_MANAGER.md`
|
||||
3. Configure agent command: See `.cursor/commands/start-dev-env.md`
|
||||
|
||||
89
docs/VIBE_KANBAN_DEV_SERVER_SETUP.md
Normal file
89
docs/VIBE_KANBAN_DEV_SERVER_SETUP.md
Normal file
@@ -0,0 +1,89 @@
|
||||
# Vibe Kanban Dev Server Script Configuration
|
||||
|
||||
## The Problem
|
||||
|
||||
Vibe Kanban runs the dev server script from a different working directory than expected, causing "No such file or directory" errors.
|
||||
|
||||
## Solution: Use Absolute Path
|
||||
|
||||
In the Vibe Kanban dev server script field, use the **absolute path** to the wrapper script:
|
||||
|
||||
```bash
|
||||
bash /Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
## Alternative: If Relative Path is Required
|
||||
|
||||
If Vibe Kanban requires a relative path and you know it runs from `/Users/oda/Desktop`, use:
|
||||
|
||||
```bash
|
||||
bash Projects/managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
## What the Wrapper Script Does
|
||||
|
||||
The `vibe-dev-server.sh` wrapper script:
|
||||
|
||||
1. ✅ Uses absolute paths internally
|
||||
2. ✅ Changes to the correct project directory
|
||||
3. ✅ Handles task ID parameters
|
||||
4. ✅ Works regardless of Vibe Kanban's working directory
|
||||
5. ✅ Provides debug output to help troubleshoot
|
||||
|
||||
## Testing the Script
|
||||
|
||||
You can test the script manually:
|
||||
|
||||
```bash
|
||||
# From any directory
|
||||
bash /Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh TEST-001 0
|
||||
```
|
||||
|
||||
## Debug Output
|
||||
|
||||
The script includes debug output that shows:
|
||||
- Current working directory
|
||||
- Script path being used
|
||||
- Task ID and port offset
|
||||
|
||||
This helps identify if Vibe Kanban is running from an unexpected directory.
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Error: "Script not found"
|
||||
|
||||
1. Verify the script exists:
|
||||
```bash
|
||||
ls -la /Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
2. Check permissions:
|
||||
```bash
|
||||
chmod +x /Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
3. Try running it directly:
|
||||
```bash
|
||||
bash /Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh TEST-001
|
||||
```
|
||||
|
||||
### Error: "Cannot change to project root"
|
||||
|
||||
- Verify the project root exists: `/Users/oda/Desktop/Projects/managing-apps`
|
||||
- Check directory permissions
|
||||
|
||||
## Configuration in Vibe Kanban
|
||||
|
||||
**Dev Server Script Field:**
|
||||
```
|
||||
bash /Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
**Health Check URL:**
|
||||
```
|
||||
http://localhost:{port}/health
|
||||
```
|
||||
|
||||
**Port Detection:**
|
||||
Vibe Kanban should detect the port from the script output or you may need to configure it manually.
|
||||
|
||||
125
docs/VIBE_KANBAN_PROJECT_SETTINGS.md
Normal file
125
docs/VIBE_KANBAN_PROJECT_SETTINGS.md
Normal file
@@ -0,0 +1,125 @@
|
||||
# Vibe Kanban Project Settings Configuration
|
||||
|
||||
## Settings URL
|
||||
http://127.0.0.1:63100/settings/projects?projectId=1a4fdbff-8b23-49d5-9953-2476846cbcc2
|
||||
|
||||
## Configuration Steps
|
||||
|
||||
### 1. MCP Servers Configuration
|
||||
|
||||
In the **MCP Servers** section, add or verify:
|
||||
|
||||
**Server Name:** `dev-manager`
|
||||
|
||||
**Configuration:**
|
||||
```json
|
||||
{
|
||||
"command": "npx",
|
||||
"args": ["dev-manager-mcp", "stdio"]
|
||||
}
|
||||
```
|
||||
|
||||
This enables Vibe Kanban to use dev-manager-mcp for managing multiple dev server instances.
|
||||
|
||||
### 2. QA / Testing Configuration
|
||||
|
||||
In the **QA** or **Testing** section, configure:
|
||||
|
||||
**Enable QA Automation:** ✅ Checked
|
||||
|
||||
**Dev Environment Script:**
|
||||
```
|
||||
managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
**Or use absolute path:**
|
||||
```
|
||||
/Users/oda/Desktop/Projects/managing-apps/scripts/vibe-dev-server.sh
|
||||
```
|
||||
|
||||
**Note:** This path is relative to `/Users/oda/Desktop/Projects` (the Projects folder root)
|
||||
|
||||
**Health Check URL:**
|
||||
```
|
||||
http://localhost:{port}/health
|
||||
```
|
||||
|
||||
**Dashboard URL (optional):**
|
||||
```
|
||||
http://localhost:{port}
|
||||
```
|
||||
|
||||
### 3. Task Status Configuration
|
||||
|
||||
Configure which task statuses should auto-start dev environments:
|
||||
|
||||
**Status:** `ready-for-qa`
|
||||
|
||||
**Auto-start dev environment:** ✅ Enabled
|
||||
|
||||
This means when a task moves to "Ready for QA" status, Vibe Kanban will automatically:
|
||||
1. Call `managing-apps/scripts/start-task-docker.sh` with the task ID
|
||||
2. Wait for the environment to be ready
|
||||
3. Provide the test URLs
|
||||
4. Stop the environment when the task is completed
|
||||
|
||||
### 4. Project Root
|
||||
|
||||
**Project Root Path:**
|
||||
```
|
||||
/Users/oda/Desktop/Projects/managing-apps
|
||||
```
|
||||
|
||||
This should be automatically detected from the `.vibe-kanban/config.json` file location.
|
||||
|
||||
## Complete Configuration Summary
|
||||
|
||||
Here's what should be configured:
|
||||
|
||||
### MCP Servers
|
||||
- ✅ `dev-manager` → `npx dev-manager-mcp stdio`
|
||||
|
||||
### QA Settings
|
||||
- ✅ Auto-start dev environments: **Enabled**
|
||||
- ✅ Script: `managing-apps/scripts/start-task-docker.sh`
|
||||
- ✅ Health check: `http://localhost:{port}/health`
|
||||
- ✅ Dashboard: `http://localhost:{port}`
|
||||
|
||||
### Task Statuses
|
||||
- ✅ `ready-for-qa` → Auto-start dev environment: **Enabled**
|
||||
|
||||
## Verification
|
||||
|
||||
After configuration, test by:
|
||||
|
||||
1. **Create a test task** in managing-apps project
|
||||
2. **Move it to "Ready for QA"** status
|
||||
3. **Verify** that Vibe Kanban automatically:
|
||||
- Starts a Docker environment
|
||||
- Copies the database
|
||||
- Provides test URLs
|
||||
- Shows the environment status
|
||||
|
||||
## Troubleshooting
|
||||
|
||||
### Script Not Found
|
||||
- Verify the script path is relative to Projects folder: `managing-apps/scripts/start-task-docker.sh`
|
||||
- Check that the script is executable: `chmod +x managing-apps/scripts/start-task-docker.sh`
|
||||
|
||||
### MCP Server Not Working
|
||||
- Ensure dev-manager-mcp daemon is running: `npm run dev-manager:start` (in Projects folder)
|
||||
- Check MCP server configuration matches exactly
|
||||
|
||||
### Environment Not Starting
|
||||
- Check Docker is running
|
||||
- Verify main database is accessible at localhost:5432
|
||||
- Check script logs in Vibe Kanban
|
||||
|
||||
## Script Path Reference
|
||||
|
||||
Since Vibe Kanban runs from `/Users/oda/Desktop/Projects`, all script paths should be relative to that:
|
||||
|
||||
- ✅ `managing-apps/scripts/start-task-docker.sh`
|
||||
- ✅ `managing-apps/scripts/stop-task-docker.sh`
|
||||
- ✅ `managing-apps/scripts/copy-database-for-task.sh`
|
||||
|
||||
99
docs/VIBE_KANBAN_QUICK_START.md
Normal file
99
docs/VIBE_KANBAN_QUICK_START.md
Normal file
@@ -0,0 +1,99 @@
|
||||
# Vibe Kanban Quick Start
|
||||
|
||||
Quick reference for using Vibe Kanban with managing-apps.
|
||||
|
||||
## Installation
|
||||
|
||||
No installation needed! Vibe Kanban runs via `npx`.
|
||||
|
||||
## Starting Vibe Kanban
|
||||
|
||||
**From Projects folder** (recommended - manages all projects):
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects
|
||||
npm run vibe-kanban
|
||||
```
|
||||
|
||||
Or directly:
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects
|
||||
npx vibe-kanban
|
||||
```
|
||||
|
||||
**Alternative: From managing-apps folder** (project-specific):
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects/managing-apps
|
||||
npx vibe-kanban
|
||||
```
|
||||
|
||||
## First Time Setup
|
||||
|
||||
1. **Start Vibe Kanban:**
|
||||
```bash
|
||||
npm run vibe-kanban
|
||||
```
|
||||
|
||||
2. **Complete setup dialogs:**
|
||||
- Configure your coding agent (Claude, Codex, etc.)
|
||||
- Set editor preferences
|
||||
- Configure GitHub integration (optional)
|
||||
|
||||
3. **Access the UI:**
|
||||
- Vibe Kanban will print a URL in the terminal
|
||||
- Usually: http://localhost:3000 (or random port)
|
||||
- Automatically opens in your default browser
|
||||
|
||||
## Configuration
|
||||
|
||||
Project-specific configuration is in `.vibe-kanban/config.json`:
|
||||
|
||||
- **MCP Servers**: dev-manager-mcp integration
|
||||
- **QA Automation**: Auto-start dev environments
|
||||
- **Task Statuses**: Configure when to auto-start environments
|
||||
|
||||
## Using with Dev Environments
|
||||
|
||||
When a task moves to "Ready for QA":
|
||||
|
||||
1. Vibe Kanban automatically calls `scripts/start-task-docker.sh`
|
||||
2. Creates isolated Docker environment
|
||||
3. Copies database from main repo
|
||||
4. Provides test URLs
|
||||
5. When done, automatically stops the environment
|
||||
|
||||
## Commands
|
||||
|
||||
```bash
|
||||
# Start Vibe Kanban
|
||||
npm run vibe-kanban
|
||||
|
||||
# Start dev-manager-mcp daemon (in separate terminal)
|
||||
npm run dev-manager:start
|
||||
|
||||
# Check dev-manager status
|
||||
npm run dev-manager:status
|
||||
|
||||
# Start dev environment manually
|
||||
npm run dev-env:start
|
||||
|
||||
# Stop dev environment
|
||||
npm run dev-env:stop TASK-123
|
||||
```
|
||||
|
||||
## Fixed Port
|
||||
|
||||
To use a fixed port:
|
||||
|
||||
```bash
|
||||
PORT=8080 npm run vibe-kanban
|
||||
```
|
||||
|
||||
## Resources
|
||||
|
||||
- [Official Documentation](https://www.vibekanban.com/docs/getting-started)
|
||||
- [GitHub Repository](https://github.com/BloopAI/vibe-kanban)
|
||||
- [MCP Integration Guide](docs/INSTALL_VIBE_KANBAN_AND_DEV_MANAGER.md)
|
||||
|
||||
73
docs/VIBE_KANBAN_SETUP_SUMMARY.md
Normal file
73
docs/VIBE_KANBAN_SETUP_SUMMARY.md
Normal file
@@ -0,0 +1,73 @@
|
||||
# Vibe Kanban Setup Summary
|
||||
|
||||
## ✅ Setup Complete!
|
||||
|
||||
Vibe Kanban is configured at the **Projects level** to manage multiple projects (managing-apps, kaigen-web, gmx-interface, etc.).
|
||||
|
||||
## File Locations
|
||||
|
||||
- **Config**: `/Users/oda/Desktop/Projects/.vibe-kanban/config.json`
|
||||
- **Package.json**: `/Users/oda/Desktop/Projects/package.json`
|
||||
- **Run from**: `/Users/oda/Desktop/Projects`
|
||||
|
||||
## Quick Start
|
||||
|
||||
### Start Vibe Kanban (from Projects folder)
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects
|
||||
npm run vibe-kanban
|
||||
```
|
||||
|
||||
This will:
|
||||
- Auto-discover all projects in `/Users/oda/Desktop/Projects`
|
||||
- Show managing-apps, kaigen-web, gmx-interface, etc.
|
||||
- Allow you to manage tasks across all projects
|
||||
|
||||
### Start dev-manager-mcp (in separate terminal)
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects
|
||||
npm run dev-manager:start
|
||||
```
|
||||
|
||||
## Benefits of Projects-Level Setup
|
||||
|
||||
✅ **Access all projects** from one Vibe Kanban instance
|
||||
✅ **Centralized configuration** for MCP servers
|
||||
✅ **Cross-project task management**
|
||||
✅ **Unified QA workflow** across projects
|
||||
✅ **Auto-discovery** of all git projects
|
||||
✅ **Project-specific dev environments** - Each project can have its own dev environment setup
|
||||
|
||||
## Project-Specific Scripts
|
||||
|
||||
For managing-apps specific tasks, scripts are in the project:
|
||||
|
||||
```bash
|
||||
cd /Users/oda/Desktop/Projects/managing-apps
|
||||
npm run dev-env:start # Start dev environment
|
||||
npm run dev-env:stop # Stop dev environment
|
||||
```
|
||||
|
||||
## Configuration
|
||||
|
||||
The Projects-level config references project-specific scripts:
|
||||
|
||||
```json
|
||||
{
|
||||
"projectRoot": "/Users/oda/Desktop/Projects",
|
||||
"devEnvScript": "managing-apps/scripts/start-task-docker.sh"
|
||||
}
|
||||
```
|
||||
|
||||
When Vibe Kanban starts a dev environment for a managing-apps task, it uses the script path relative to the Projects folder.
|
||||
|
||||
For other projects, you can configure project-specific dev environment scripts in Vibe Kanban's project settings.
|
||||
|
||||
## Next Steps
|
||||
|
||||
1. ✅ Vibe Kanban config created at Projects level
|
||||
2. ✅ Package.json created with convenience scripts
|
||||
3. ✅ Auto-discovery enabled for all projects
|
||||
4. 🚀 **Start Vibe Kanban**: `cd /Users/oda/Desktop/Projects && npm run vibe-kanban`
|
||||
Reference in New Issue
Block a user