feat: implement skeleton phase

This commit is contained in:
h
2026-05-19 14:19:15 +02:00
parent 75a23d231e
commit 221e660c5c
21 changed files with 586 additions and 3 deletions
+18
View File
@@ -0,0 +1,18 @@
# Stub user config for the Phase 0 DoD.
#
# Loader (beaver_gateway/config_loader.py) execs this file with
# ClaudeAgent, RaycastAgent, McpServer, ExposedMcp, Gateway already
# bound. The top-level `gateway = Gateway(...)` is what gets picked up.
gateway = Gateway( # type: ignore[name-defined] # noqa: F821
agents=[
ClaudeAgent( # type: ignore[name-defined] # noqa: F821
name="stub",
model="claude-sonnet-4-5",
system_prompt="You are a stub agent used to validate the Phase 0 skeleton.",
cwd="/tmp",
),
],
mcps=[],
frontends=[],
)
+20
View File
@@ -0,0 +1,20 @@
# Minimal compose for the Phase 0 DoD: build the image, mount a
# single-file user config, watch the process print its summary line
# and exit cleanly.
#
# Real deployments add a postgres service, raycast-config.json bind,
# ~/.config/claude bind, etc. — Phase 5 lives in a separate example
# repo (see PLAN §5.1).
services:
gateway:
build:
context: ..
dockerfile: Dockerfile
environment:
DATABASE_URL: "sqlite:///./gateway.db"
ADMIN_USER: "admin"
ADMIN_PASS: "change-me"
SESSION_SECRET: "dev-secret-change-me"
volumes:
- ./config.py:/config/config.py:ro