Commit graph

360 commits

Author SHA1 Message Date
johnfrum1234
86e5b8febf Add web GUI: FastAPI API + Vue 3 frontend with dark theme
API (web/api.py):
  GET  /api/projects, /api/projects/{id}, /api/tasks/{id}
  GET  /api/decisions?project=X, /api/cost?days=7, /api/support/tickets
  POST /api/projects, /api/tasks, /api/decisions, /api/bootstrap
  CORS for localhost:5173, all queries via models.py

Frontend (web/frontend/):
  Vue 3 + TypeScript + Vite + Tailwind CSS v3
  Dashboard: project cards with task counters, cost, status badges
  ProjectView: tabs for Tasks/Decisions/Modules with filters
  Modals: Add Project, Add Task, Add Decision, Bootstrap
  Dark theme, monospace font, minimal clean design

Startup:
  API:  cd web && uvicorn api:app --reload --port 8420
  Web:  cd web/frontend && npm install && npm run dev

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:50:15 +02:00
johnfrum1234
b95db7c7d6 bootstrap: vdol project loaded with real data 2026-03-15 13:40:58 +02:00
johnfrum1234
e5444114bd Fix bootstrap: deep scan, CLAUDE.md fallback, noise filtering
1. Tech stack: recursive file search (depth 3) + CLAUDE.md text fallback
   when config files are on remote server (detects nodejs, postgresql, etc.)
2. Modules: scan */src/ patterns in top-level dirs (frontend/src/, backend-pg/src/)
3. Decisions: filter out unrelated sections (Jitsi, Nextcloud, Prosody, GOIP),
   filter noise (commit hashes, shell commands, external service paths).
   Noise filtering also applied to Obsidian decisions.

Tested on vdolipoperek: 4 tech, 5 modules, 9 clean decisions, 24 Obsidian tasks.
61 tests, all passing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:37:42 +02:00
johnfrum1234
da4a8aae72 Add bootstrap command — auto-detect project stack, modules, decisions
kin bootstrap <path> --id <id> --name <name> [--vault <path>]

Detects: package.json, requirements.txt, go.mod, config files → tech_stack.
Scans src/app/lib/frontend/backend dirs → modules with type detection.
Parses CLAUDE.md for GOTCHA/WORKAROUND/FIXME/ВАЖНО → decisions.
Scans Obsidian vault for kanban tasks, checkboxes, and decisions.
Preview before save, -y to skip confirmation.
18 bootstrap tests, 57 total passing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:29:01 +02:00
johnfrum1234
432cfd55d4 Add CLI (cli/main.py) — click-based interface for all core operations
Commands: project (add/list/show), task (add/list/show),
decision (add/list), module (add/list), status, cost.
Auto-generated task IDs (PROJ-001). DB at ~/.kin/kin.db or $KIN_DB.
pyproject.toml with `kin` entry point. 18 CLI tests, 39 total passing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:20:57 +02:00
johnfrum1234
3db73332ad Add core/models.py — data access functions for all 9 tables
20 functions covering: projects, tasks, decisions, modules,
agent_logs, pipelines, support tickets, and dashboard stats.
Parameterized queries, JSON encode/decode, no ORM.
21 tests, all passing.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:16:12 +02:00
johnfrum1234
d7491705d9 Add core/db.py — SQLite schema with all 9 tables from DESIGN.md 3.5
Tables: projects, tasks, decisions, agent_logs, modules, pipelines,
project_links, support_tickets, support_bot_config.
WAL mode, foreign keys enabled, idempotent init.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:12:54 +02:00
johnfrum1234
bdb9fb4a65 Add CLAUDE.md — project-level instructions for Kin
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:10:47 +02:00
johnfrum1234
f5a0e2f0b9 Add DESIGN.md — main architecture document for Kin agent orchestrator
Copied from agent-orchestrator-research.md as the foundational design reference.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-15 13:10:10 +02:00
58ce85495d Initial commit 2026-03-15 12:09:02 +01:00