From 7f67547459c671266dbc28a57f2c1028a20660ff Mon Sep 17 00:00:00 2001 From: h Date: Tue, 2 Jun 2026 02:13:41 +0200 Subject: [PATCH] feat: add beavergram to default config --- .env.example | 2 ++ config.py | 34 ++++++++++++++++++++++------------ 2 files changed, 24 insertions(+), 12 deletions(-) diff --git a/.env.example b/.env.example index df5385c..c7daa1c 100644 --- a/.env.example +++ b/.env.example @@ -25,6 +25,8 @@ FIREFLY_PAT=changeme # example: CALENDAR_MCPS=work=https://calendar-mcp.com/mcp/AAAA,home=https://calendar-mcp.com/mcp/BBBB CALENDAR_MCPS= +BEAVERGRAM_MCP= + PORT_MESSAGES=62990 PORT_MCP=62991 PORT_ADMIN=62992 diff --git a/config.py b/config.py index 31cf2b7..e81cf4f 100644 --- a/config.py +++ b/config.py @@ -21,7 +21,11 @@ CHATS_DIR = VAULT / "💬 чаты" def chat_log_path(record: TurnRecord, vault: Path) -> Path: today = date.today() topic = slugify(record.first_user_text, maxlen=60) - rel = CHATS_DIR.relative_to(vault) / f"{today:%Y-%m}" / f"{today:%Y-%m-%d} - {topic}.md" + rel = ( + CHATS_DIR.relative_to(vault) + / f"{today:%Y-%m}" + / f"{today:%Y-%m-%d} - {topic}.md" + ) return vault / rel @@ -68,6 +72,7 @@ mcps = [ ], lenient=True, ), + McpServer.http(name="telegram", url=os.environ["BEAVERGRAM_MCP"]), *calendar_mcps, ] @@ -89,7 +94,11 @@ def claude(name: str, model: str, effort: str | None = None) -> ClaudeAgent: system_prompt=CBO_PROMPT, cwd=VAULT, options=ClaudeCodeOptions(effort=effort, extra_args=("--remote-control",)), - expose_mcps=(ExposedMcp(name="firefly"), *calendar_exposed), + expose_mcps=( + ExposedMcp(name="firefly"), + ExposedMcp(name="telegram"), + *calendar_exposed, + ), ) @@ -104,19 +113,24 @@ def raycast(name: str, model: str, reasoning_effort: str | None = None) -> Rayca expose_mcps=( ExposedMcp(name="obsidian-fs"), ExposedMcp(name="firefly"), + ExposedMcp(name="telegram"), *calendar_exposed, ), ) agents = [ - claude("beaver-opus-high", "claude-opus-4-8", effort="high"), + claude("beaver-opus-high", "claude-opus-4-8", effort="high"), raycast("beaver-gemini-pro-high", "google-gemini-3.1-pro", reasoning_effort="high"), claude("beaver-opus-medium", "claude-opus-4-8", effort="medium"), - claude("beaver-opus-xhigh", "claude-opus-4-8", effort="xhigh"), + claude("beaver-opus-xhigh", "claude-opus-4-8", effort="xhigh"), raycast("beaver-gemini-pro-low", "google-gemini-3.1-pro", reasoning_effort="low"), - raycast("beaver-gemini-flash-high", "google-gemini-3.5-flash", reasoning_effort="high"), - raycast("beaver-gemini-flash-low", "google-gemini-3.5-flash", reasoning_effort="low"), + raycast( + "beaver-gemini-flash-high", "google-gemini-3.5-flash", reasoning_effort="high" + ), + raycast( + "beaver-gemini-flash-low", "google-gemini-3.5-flash", reasoning_effort="low" + ), ] PUBLIC_BASE_URL = os.environ.get("PUBLIC_BASE_URL", "").rstrip("/") @@ -130,12 +144,8 @@ frontends = [ AnthropicMessagesFrontend( host="0.0.0.0", port=62990, public_base_url=_public("/anthropic") ), - McpServerFrontend( - host="0.0.0.0", port=62991, public_base_url=_public("/mcp") - ), - AdminFrontend( - host="0.0.0.0", port=62992, public_base_url=_public("/admin") - ), + McpServerFrontend(host="0.0.0.0", port=62991, public_base_url=_public("/mcp")), + AdminFrontend(host="0.0.0.0", port=62992, public_base_url=_public("/admin")), MarkdownFrontend( host="0.0.0.0", port=62993,