Kanban-style web application for OpenCode session management.
Kanbanomo provides a visual interface to track and manage tasks across multiple OpenCode projects. It integrates with the oh-my-openagent ecosystem to automatically discover sessions, extract TODOs from plan files, and display them in an intuitive Kanban board.
- Multi-Project Support: Automatically discover all OpenCode projects from the SQLite database
- Kanban Board: 5-column board (Todo, Backlog, In Progress, Review, Done) with drag-and-drop
- Plan Integration: Automatically extract TODOs from
.sisyphus/plans/*.mdfiles - Session Tracking: View active sessions and their metadata
- Task Management: Create, update, and manage tasks with rich markdown support
- Real-Time Updates: Auto-refresh every 5 seconds to sync with backend changes
- Python 3.11+ - For backend development
- Node.js 18+ - For frontend development
- uv - Python package manager (install from astral.sh)
- npm - Node.js package manager
git clone https://github.com/mte90/Kanbanomo.git
cd Kanbanomouv syncThis will create a .venv virtual environment and install all Python dependencies listed in pyproject.toml.
cd frontend
npm install
cd ..Create a .env file in the project root:
PORT=8888
OPENCODE_DB_PATH=/home/mte90/.local/share/opencode/opencode.dbNote: Update OPENCODE_DB_PATH to match your OpenCode database location.
Use the provided startup script:
./start.shThis will:
- Start the FastAPI backend on port 8888
- Start the Vue dev server on port 5173
Backend only:
cd backend
uvicorn app.main:app --reload --port 8888Frontend only:
cd frontend
npm run devFor development with hot-reload for both frontend and backend, use the DEV_MODE environment variable:
DEV_MODE=1 ./start.shThis will:
- Start the Vue dev server on port 5173 with hot-reload
- Start the FastAPI backend on port 8888 with logging enabled
- Allow you to access the app at
http://localhost:5173 - Show detailed logs from both servers
Note: In dev mode, access the app at http://localhost:5173 (not 8888), as the frontend dev server proxies API requests to the backend.
GET /api/projects- List all discovered projectsGET /api/projects/info?project={path}- Get project info with plan progress
GET /api/tasks?project={path}- List all tasks for a projectPOST /api/tasks- Create a new taskPATCH /api/tasks/{id}- Update a task
GET /api/sessions?project={path}- List active sessions for a project
GET /health- Health check endpoint
Note: Full API documentation is available at http://localhost:8888/docs (FastAPI auto-generated).
| Variable | Description | Default |
|---|---|---|
PORT |
Backend server port | 8888 |
OPENCODE_DB_PATH |
Path to OpenCode SQLite database | /home/mte90/.local/share/opencode/opencode.db |
