Commit graph

5 commits

Author SHA1 Message Date
Cole Medin
9c58a2ecdf SQL, documentation, and Docker touch ups 2025-12-05 07:12:12 -06:00
Rasmus Widing
8e80bf3bfc Fix WORKSPACE_PATH for Docker containers
Override host-side WORKSPACE_PATH with /workspace inside containers.
The .env value (e.g., ./workspace) is for volume mounting, but container
code needs the mount point path (/workspace).

Fixes /repos and other workspace commands failing in Docker.
2025-12-01 20:09:54 +02:00
Wirasm
7428a47cfa
Improve clone URL handling and fix docker config (#4)
* Improve clone URL handling and fix docker config

- Normalize URLs by stripping trailing slashes
- Convert SSH URLs (git@github.com:) to HTTPS format
- Check if directory exists before cloning to prevent errors
- Fix container PORT env var for consistent mapping
- Update postgres volume path

Co-Authored-By: Claude <noreply@anthropic.com>

* fix: Make PORT fully configurable in Docker

Use ${PORT:-3000}:${PORT:-3000} mapping so the same PORT env var
controls both external and internal ports. This allows PORT to be
configured via .env instead of being hardcoded.

Applied to both app and app-with-db services for consistency.

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-12-01 11:45:54 +02:00
Rasmus Widing
e1543585cb Add separate app services for external and Docker DB modes
- Add app-with-db service with DATABASE_URL override for Docker networking
- Add external-db profile for app service (Supabase, Neon users)
- Add with-db profile for Docker postgres + app-with-db
- Add dynamic port mapping (PORT, POSTGRES_PORT env vars)
- Add depends_on with health check for Docker DB mode

Usage:
  External DB: docker-compose --profile external-db up
  Docker DB:   docker-compose --profile with-db up
2025-11-28 10:22:27 +02:00
Cole Medin
41415d7e7f feat: implement telegram + claude mvp with generic architecture
- Add generic IPlatformAdapter and IAssistantClient interfaces for extensibility
- Implement TelegramAdapter with streaming/batch modes
- Implement ClaudeClient with session persistence and resume capability
- Create TestAdapter for autonomous validation via HTTP endpoints
- Add PostgreSQL database with 3-table schema (conversations, codebases, sessions)
- Implement slash command system (/clone, /status, /getcwd, /setcwd, /reset, /help)
- Add Docker containerization with docker-compose (with-db profile for local PostgreSQL)
- Fix Claude Agent SDK spawn error (install bash, pass PATH environment variable)
- Fix workspace volume mount to use /workspace in container
- Add comprehensive documentation and health check endpoints

Architecture highlights:
- Platform-agnostic design allows adding Slack, GitHub, etc. via IPlatformAdapter
- AI-agnostic design allows adding Codex, etc. via IAssistantClient
- Orchestrator uses dependency injection with interface types
- Session persistence survives container restarts
- Working directory + codebase context determine Claude behavior

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-10 19:35:50 -06:00