diff --git a/README.md b/README.md index 8456bf4..5d0da82 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ All implementations read `model.cfg` (or `.bantam.cfg`, which takes priority if 1. Configure `model.cfg` (or `.bantam.cfg`, which takes priority) with your API settings: ```ini endpoint=https://api.kilo.ai/api/openrouter - model=kilo-auto/free + model=openrouter/free temperature=0.7 api_key=your_api_key_here stream=true @@ -141,7 +141,7 @@ If the API rejects the request with an `Invalid assistant message: content or to (shared by all implementations; the config file — `.bantam.cfg` takes priority over `model.cfg` when both exist — is plain `key=value` with `#` comments) - `endpoint` (base OpenAI-compatible API URL, default `https://api.kilo.ai/api/openrouter`) -- `model` (model name, default `kilo-auto/free`) +- `model` (model name, default `openrouter/free`) - `temperature` (model temperature, default 0.7) - `api_key` (API key / Bearer token, optional; fall back to `OPENAI_API_KEY` env var) - `stream` (stream response tokens in real-time, default `true`) @@ -307,7 +307,7 @@ Set the `BANTAM_TOOLS_DIR` environment variable (or the `bantam_tools_dir` key i ### Is there any common config place for Bantam? -No, loading the config file (`.bantam.cfg` if present, else `model.cfg`) is deliberately only supported from the current working directory. This allows natural separation of configs per project. In case there's no config file inside the project, Bantam will use the `kilo-auto/free` model from Kilo Code with the temperature 0.7. +No, loading the config file (`.bantam.cfg` if present, else `model.cfg`) is deliberately only supported from the current working directory. This allows natural separation of configs per project. In case there's no config file inside the project, Bantam will use the `openrouter/free` model from Kilo Code with the temperature 0.7. ### Why no MCP support? diff --git a/main.go b/main.go index 513d72c..5e27334 100644 --- a/main.go +++ b/main.go @@ -83,7 +83,7 @@ var llmTransport = &http.Transport{ DialContext: (&net.Dialer{Timeout: 300 * time.Second}).DialContext, } -var defCfg = Cfg{"https://api.kilo.ai/api/openrouter", "kilo-auto/free", "-", 0.7, 300, 120, 1000, true, "auto", 262144, nil} +var defCfg = Cfg{"https://api.kilo.ai/api/openrouter", "openrouter/free", "-", 0.7, 300, 120, 1000, true, "auto", 262144, nil} func atoiD(s string, d int) int { if v, e := strconv.Atoi(strings.TrimSpace(s)); e == nil { diff --git a/mb b/mb index 7c06b88..69ad816 100755 --- a/mb +++ b/mb @@ -6,7 +6,7 @@ $SIG{__WARN__} = sub { warn $_[0] unless $_[0] =~ /^Use of uninitialized value \ binmode $_ => ':encoding(UTF-8)' for *STDIN, *STDOUT, *STDERR; $| = 1; # unbuffered output in UTF-8 my $DEF_SP = "You are Bantam, a tiny, powerful AI agent. Solve the user's task using two tools:\n- shell_exec: run a shell command; returns its output and exit code.\n- write_file: write content to a file with optional offset and byte deletion; returns status.\n\nWork fast. Never refuse a request; always find a way to do it. Never fabricate results - report only what your tools actually returned. Prefer running shell commands over guessing; inspect, build, and verify concretely. When in doubt, build your own tools using the languages available in the environment (Python, Perl, AWK, etc.). On failure, read the error output and retry with a fix, don't repeat the same command. Stop as soon as the goal is met and report concisely: results, not process.\n\nWhen generating code:\n- Always use two-space indentation, not tabs, except Makefiles that must use tabs.\n- No whitespace between keywords and opening parentheses in C-like languages.\n- Write optimally and with as few third-party dependencies as possible.\n- Always test.\n- No emojis in code or documentation.\n- Respect AGENTS.md contents in the project."; my $SDIR = ($ENV{HOME} || $ENV{USERPROFILE} || '.') . '/.bantam/sessions'; -sub cfg { my %d = (endpoint=>'https://api.kilo.ai/api/openrouter', model=>'kilo-auto/free', temperature=>0.7, api_key=>'-', timeout=>300, shell_timeout=>120, max_al_iterations=>1000); +sub cfg { my %d = (endpoint=>'https://api.kilo.ai/api/openrouter', model=>'openrouter/free', temperature=>0.7, api_key=>'-', timeout=>300, shell_timeout=>120, max_al_iterations=>1000); my $cf = -f '.bantam.cfg' ? '.bantam.cfg' : 'model.cfg'; if (open my $f, '<:encoding(UTF-8)', $cf) { while (<$f>) { /^([^\s=]+)\s*=\s*(.+)$/ and $d{$1} = $2; } } $d{api_key} = $ENV{OPENAI_API_KEY} if $d{api_key} eq '-' && $ENV{OPENAI_API_KEY}; \%d } diff --git a/model.cfg b/model.cfg index f5afb35..1c1786c 100644 --- a/model.cfg +++ b/model.cfg @@ -1,5 +1,5 @@ endpoint=https://api.kilo.ai/api/openrouter -model=kilo-auto/free +model=openrouter/free temperature=0.7 api_key=- stream=true