From 1c270fb9e70423c385eae8fb2aa287015865bf0f Mon Sep 17 00:00:00 2001 From: CrazyBoyM Date: Sun, 25 Jan 2026 00:38:32 +0800 Subject: [PATCH] feat: support MODEL_ID env var for configurable model All agents now read MODEL_ID from .env (defaults to claude-sonnet-4-5-20250929). Co-Authored-By: Claude Opus 4.5 --- .env.example | 3 +++ v0_bash_agent.py | 2 +- v0_bash_agent_mini.py | 2 +- v1_basic_agent.py | 2 +- v2_todo_agent.py | 2 +- v3_subagent.py | 2 +- v4_skills_agent.py | 2 +- 7 files changed, 9 insertions(+), 6 deletions(-) diff --git a/.env.example b/.env.example index e2625c5..c767dd7 100644 --- a/.env.example +++ b/.env.example @@ -4,3 +4,6 @@ ANTHROPIC_API_KEY=sk-ant-xxx # Base URL (optional, for API proxies) # ANTHROPIC_BASE_URL=https://api.anthropic.com + +# Model ID (optional, defaults to claude-sonnet-4-5-20250929) +# MODEL_ID=claude-sonnet-4-5-20250929 diff --git a/v0_bash_agent.py b/v0_bash_agent.py index 0471b47..5b730cd 100644 --- a/v0_bash_agent.py +++ b/v0_bash_agent.py @@ -57,7 +57,7 @@ load_dotenv(override=True) # Initialize Anthropic client (uses ANTHROPIC_API_KEY and ANTHROPIC_BASE_URL env vars) client = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")) -MODEL = "claude-sonnet-4-5-20250929" +MODEL = os.getenv("MODEL_ID", "claude-sonnet-4-5-20250929") # The ONE tool that does everything # Notice how the description teaches the model common patterns AND how to spawn subagents diff --git a/v0_bash_agent_mini.py b/v0_bash_agent_mini.py index ce30ffe..f06ebcb 100644 --- a/v0_bash_agent_mini.py +++ b/v0_bash_agent_mini.py @@ -1,7 +1,7 @@ #!/usr/bin/env python """v0_bash_agent_mini.py - Mini Claude Code (Compact)""" from anthropic import Anthropic; from dotenv import load_dotenv; import subprocess as sp, sys, os -load_dotenv(override=True); C = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")); M = "claude-sonnet-4-5-20250929" +load_dotenv(override=True); C = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")); M = os.getenv("MODEL_ID", "claude-sonnet-4-5-20250929") T = [{"name":"bash","description":"Shell cmd. Read:cat/grep/find/rg/ls. Write:echo>/sed. Subagent(for complex subtask): python v0_bash_agent_mini.py 'task'","input_schema":{"type":"object","properties":{"command":{"type":"string"}},"required":["command"]}}] S = f"CLI agent at {os.getcwd()}. Use bash to solve problems. Spawn subagent for complex subtasks: python v0_bash_agent_mini.py 'task'. Subagent isolates context and returns summary. Be concise." diff --git a/v1_basic_agent.py b/v1_basic_agent.py index 6fd12eb..ac1b07e 100644 --- a/v1_basic_agent.py +++ b/v1_basic_agent.py @@ -62,7 +62,7 @@ load_dotenv(override=True) # ============================================================================= WORKDIR = Path.cwd() -MODEL = "claude-sonnet-4-5-20250929" +MODEL = os.getenv("MODEL_ID", "claude-sonnet-4-5-20250929") client = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")) diff --git a/v2_todo_agent.py b/v2_todo_agent.py index 0a77a97..baf5683 100644 --- a/v2_todo_agent.py +++ b/v2_todo_agent.py @@ -74,7 +74,7 @@ load_dotenv(override=True) WORKDIR = Path.cwd() client = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")) -MODEL = "claude-sonnet-4-5-20250929" +MODEL = os.getenv("MODEL_ID", "claude-sonnet-4-5-20250929") # ============================================================================= diff --git a/v3_subagent.py b/v3_subagent.py index 32f24e4..2302640 100644 --- a/v3_subagent.py +++ b/v3_subagent.py @@ -92,7 +92,7 @@ load_dotenv(override=True) WORKDIR = Path.cwd() client = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")) -MODEL = "claude-sonnet-4-5-20250929" +MODEL = os.getenv("MODEL_ID", "claude-sonnet-4-5-20250929") # ============================================================================= diff --git a/v4_skills_agent.py b/v4_skills_agent.py index dc02077..214020d 100644 --- a/v4_skills_agent.py +++ b/v4_skills_agent.py @@ -98,7 +98,7 @@ WORKDIR = Path.cwd() SKILLS_DIR = WORKDIR / "skills" client = Anthropic(base_url=os.getenv("ANTHROPIC_BASE_URL")) -MODEL = "claude-sonnet-4-5-20250929" +MODEL = os.getenv("MODEL_ID", "claude-sonnet-4-5-20250929") # =============================================================================