nicholai 0b0a1ff312 feat: implement LangGraph.js agentic framework with OpenRouter integration
- Add complete LangGraph state machine with 4 nodes (plan, execute, validate, advance)
- Integrate OpenRouter API with dynamic model fetching (321+ models)
- Implement Durable Object for state management and WebSocket server
- Create SSH proxy service with full LangGraph agent (deployed to Fly.io)
- Add beautiful retro terminal UI with split-pane layout
- Implement agent control panel with model selection and run controls
- Create API routes for agent lifecycle (start, pause, resume, command, status)
- Add WebSocket integration with auto-reconnect
- Implement proper event streaming following context7 best practices
- Deploy complete stack to Cloudflare Workers + Fly.io

Features:
- Multi-LLM testing via OpenRouter (GPT-4o, Claude, Llama, DeepSeek, etc.)
- Real-time agent reasoning display
- SSH integration with OverTheWire Bandit server
- Pause/resume functionality for manual intervention
- Error handling with retry logic
- Cost tracking infrastructure
- Level-by-level progress tracking (0-33)

Infrastructure:
- Cloudflare Workers: UI, Durable Objects, API routes
- Fly.io: SSH proxy + LangGraph agent runtime
- Full TypeScript throughout
- Comprehensive documentation (10 guides, 2,500+ lines)

Status: 95% complete, production-deployed, fully functional
2025-10-09 07:03:29 -06:00

33 lines
590 B
TOML

# Fly.io configuration for SSH Proxy
app = 'bandit-ssh-proxy'
primary_region = 'ord' # Chicago - change to your preferred region
[build]
[http_service]
internal_port = 3001
force_https = true
auto_stop_machines = 'stop'
auto_start_machines = true
min_machines_running = 0
processes = ['app']
[[http_service.checks]]
grace_period = '10s'
interval = '30s'
method = 'GET'
timeout = '5s'
path = '/ssh/health'
[[vm]]
memory = '256mb'
cpu_kind = 'shared'
cpus = 1
[env]
PORT = '3001'
MAX_CONNECTIONS = '100'
CONNECTION_TIMEOUT_MS = '3600000'