feat: add web interface with real-time streaming and timed runs

- Add Fastify-based web server with SSE for real-time updates
- Create responsive dark-themed UI with:
  - Prompt input with directory and duration options
  - Live countdown timer for timed runs
  - Real-time output streaming
  - Collapsible sessions panel
  - Cost and task tracking
- Support timed runs that repeat prompts for specified duration
- Add /api endpoints for sessions, scheduled runs, and status
- Update Session class to parse Claude CLI JSON output
- Add 'claudeman web' command to start the interface

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
arkon
2026-01-18 05:14:34 +01:00
co-authored by Claude Opus 4.5
parent e1bb800473
commit c4aae98a01
9 changed files with 2835 additions and 65 deletions
+4 -1
View File
@@ -8,9 +8,10 @@
"claudeman": "./dist/index.js"
},
"scripts": {
"build": "tsc",
"build": "tsc && mkdir -p dist/web && cp -r src/web/public dist/web/",
"start": "node dist/index.js",
"dev": "tsx src/index.ts",
"web": "node dist/index.js web",
"clean": "rm -rf dist"
},
"keywords": [
@@ -22,8 +23,10 @@
"author": "",
"license": "MIT",
"dependencies": {
"@fastify/static": "^8.0.0",
"chalk": "^5.3.0",
"commander": "^12.1.0",
"fastify": "^5.1.0",
"uuid": "^10.0.0"
},
"devDependencies": {