BugBuster Code 1.2.0
🚀 What's New
See CHANGELOG.md for full details.
Install
# macOS / Linux (download from assets below)
tar xzf bugbuster_1.2.0_*.tar.gz
sudo mv bugbuster /usr/local/bin/
# Or build from source
go install github.com/Cavibora/bugbuster-code/cmd/bugbuster@latestChangelog
- 4f159db: Update LICENSE (Sergey Korotaev siendsi@gmail.com)
- 53dfc6e: chore(agent): session improvements (Sergey Korotaev siendsi@gmail.com)
- 48c726a: chore: add keywords.json and thinking_keywords.json to gitignore (Sergey Korotaev siendsi@gmail.com)
- 3485b47: chore: remove backup file (Sergey Korotaev siendsi@gmail.com)
- 8c3ec69: chore: remove backup file (Sergey Korotaev siendsi@gmail.com)
- 13ff571: chore: remove backup file (Sergey Korotaev siendsi@gmail.com)
- df37351: chore: remove backup file (Sergey Korotaev siendsi@gmail.com)
- 148e598: chore: remove backup files (Sergey Korotaev siendsi@gmail.com)
- 48b2151: chore: remove backup files (Sergey Korotaev siendsi@gmail.com)
- ddc2301: chore: remove backup files (Sergey Korotaev siendsi@gmail.com)
- b98e4c1: chore: remove internal files (ROADMAP.md, AGENT.md) from repo (Sergey Korotaev siendsi@gmail.com)
- 7d0b46c: feat(agent): auto-continue, subagent improvements, and better error hints (Sergey Korotaev siendsi@gmail.com)
- 4b1bf75: feat(agent): tool name normalization with aliases and fuzzy matching (Sergey Korotaev siendsi@gmail.com)
- b2396da: feat(cli): add /provider and /rename commands to TUI, crash handler improvements (Sergey Korotaev siendsi@gmail.com)
- 6d82260: feat(cli): add task_keywords.json config for TUI task type detection (Sergey Korotaev siendsi@gmail.com)
- 96ab153: feat(cli): improve Ctrl+C handling, paste detection, and spinner stats (Sergey Korotaev siendsi@gmail.com)
- 258c7b3: feat(config): add subagent YAML config, auto-continue flag, increase default max_tokens (Sergey Korotaev siendsi@gmail.com)
- 48044dc: feat(i18n): add ctrl_c_hint, rule11 (continue working), subagent config strings (Sergey Korotaev siendsi@gmail.com)
- 45da653: feat: add memory tool (persistent agent memory) and browse tool (headless browser search & content extraction) (Sergey Korotaev siendsi@gmail.com)
- 4c056a6: feat: auto-compact_force on critical slowdown (>3x) — model no longer needs to manually compact when in flow (Sergey Korotaev siendsi@gmail.com)
- dde98db: feat: auto-move timed-out bash processes to background instead of killing (Sergey Korotaev siendsi@gmail.com)
- 056a28b: feat: background process tools (background, ps, logs, kill) (Sergey Korotaev siendsi@gmail.com)
- 492060c: feat: bracketed paste mode — multiline paste now works correctly in CLI (Sergey Korotaev siendsi@gmail.com)
- 2c23a39: feat: granular per-tool permissions + fallback providers (Sergey Korotaev siendsi@gmail.com)
- 55bc2b5: feat: increase default request timeout from 20min to 40min (Sergey Korotaev siendsi@gmail.com)
- 12ee28f: feat: initial public release (alpha) (Sergey Korotaev siendsi@gmail.com)
- aac4751: feat: major stability and UX improvements (Sergey Korotaev siendsi@gmail.com)
- 14d1b8b: feat: memory compression + /rename fix (Sergey Korotaev siendsi@gmail.com)
- 4afbffd: feat: memory tool — project-local storage (Sergey Korotaev siendsi@gmail.com)
- 1bd042a: feat: multimodal support — screenshot, send_file, TTS, STT (Sergey Korotaev siendsi@gmail.com)
- d4fcc28: feat: permanent memory category — protect critical data from deletion (Sergey Korotaev siendsi@gmail.com)
- aca9531: feat: self_info tool — model self-identification (Sergey Korotaev siendsi@gmail.com)
- d554e5b: feat: session names + per-session history (Sergey Korotaev siendsi@gmail.com)
- 998d156: feat: session-scoped memory + configurable browse tool (Sergey Korotaev siendsi@gmail.com)
- 6651166: feat: speed mirror, compact_force, stale process control, system time (Sergey Korotaev siendsi@gmail.com)
- 57886ee: feat: strip ANSI escape sequences from bash output (Sergey Korotaev siendsi@gmail.com)
- 2be6593: feat: user-facing background process management (/ps, /logs, /kill) (Sergey Korotaev siendsi@gmail.com)
- 46c96f7: fix(ci): add build fallback and reduce lint checks (Sergey Korotaev siendsi@gmail.com)
- 5e3e0b5: fix(ci): add debug steps for build failure (Sergey Korotaev siendsi@gmail.com)
- 3b1e271: fix(ci): add go env for debugging (Sergey Korotaev siendsi@gmail.com)
- 4cc6db5: fix(ci): disable CGO for build (Sergey Korotaev siendsi@gmail.com)
- 78598a1: fix(ci): disable CGO for build (Sergey Korotaev siendsi@gmail.com)
- 776e2ac: fix(ci): set GOTOOLCHAIN=auto AFTER setup-go to override its local setting (Sergey Korotaev siendsi@gmail.com)
- e29a7fe: fix(ci): set GOTOOLCHAIN=auto to allow toolchain download (Sergey Korotaev siendsi@gmail.com)
- 08e4240: fix(ci): simplify CI - remove lint job for alpha (Sergey Korotaev siendsi@gmail.com)
- 7475da1: fix(ci): update go.mod to 1.25.10 to match CI toolchain (Sergey Korotaev siendsi@gmail.com)
- 0373120: fix(ci): upgrade setup-go to v6 for Go 1.25 support (Sergey Korotaev siendsi@gmail.com)
- 7fea566: fix(ci): use Go 1.25 for Charm libraries compatibility (Sergey Korotaev siendsi@gmail.com)
- fc127d4: fix(cli): use atomic.Load() for ExitCode to fix go vet copylocks (Sergey Korotaev siendsi@gmail.com)
- 595fe06: fix(provider): serialize tool arguments as JSON string for OpenAI compatibility (Sergey Korotaev siendsi@gmail.com)
- ff97792: fix: Enter not submitting after model response + timeout hang (Sergey Korotaev siendsi@gmail.com)
- 5a3c8fd: fix: IsPermanent only for 'permanent', 'critical' and '!' prefix — not 'credentials' or 'project' (Sergey Korotaev siendsi@gmail.com)
- 919244b: fix: OpenAI streaming usage + edit diff format for model clarity (Sergey Korotaev siendsi@gmail.com)
- 0a7513f: fix: TUI EventToolCallDelta now updates totalGenDur for accurate speed calculation (Sergey Korotaev siendsi@gmail.com)
- 44ecd57: fix: TUI EventUsage should not update genStart/genEnd (Sergey Korotaev siendsi@gmail.com)
- 02224b3: fix: TestFindConfigFile - override HOME to prevent finding config in parent dirs (Sergey Korotaev siendsi@gmail.com)
- 035acb6: fix: UpdateTokens should not update genStart/genEnd (Sergey Korotaev siendsi@gmail.com)
- cf43866: fix: add EnsureToolPairIntegrity to restoreSessionMessages (Sergey Korotaev siendsi@gmail.com)
- 0f2ac3c: fix: add GOTOOLCHAIN=auto to GoReleaser env, remove go mod tidy hook (Sergey Korotaev siendsi@gmail.com)
- 8d7f4a5: fix: add Model() method to all mock providers for interface compliance (Sergey Korotaev siendsi@gmail.com)
- 7201bb6: fix: add cmd/bugbuster/ to git (was ignored by 'bugbuster' pattern in .gitignore) (Sergey Korotaev siendsi@gmail.com)
- 64256ec: fix: ask_user hang, incremental session save, crash recovery (Sergey Korotaev siendsi@gmail.com)
- f82feec: fix: ask_user hangs — use /dev/tty instead of os.Stdin (Sergey Korotaev siendsi@gmail.com)
- e8abe31: fix: audit — ask_user hang, readline timeout, crash recovery safety (Sergey Korotaev siendsi@gmail.com)
- 80e678c: fix: auto-retry on timeout with exponential backoff (Sergey Korotaev siendsi@gmail.com)
- 48f1bdc: fix: bash timeout includes partial output + retry hint, rule9 for retry behavior (Sergey Korotaev siendsi@gmail.com)
- 8f2f15b: fix: bash tool auto-redirects & commands to background tool (Sergey Korotaev siendsi@gmail.com)
- f6cc9b8: fix: bash tool kills entire process group on timeout (Sergey Korotaev siendsi@gmail.com)
- b7b8b0a: fix: block & in bash commands, strip ANSI output, remove request timeout (Sergey Korotaev siendsi@gmail.com)
- a2bb78f: fix: changes.json — per-session + size limits (Sergey Korotaev siendsi@gmail.com)
- 094f4ad: fix: close readline before ask_user to prevent terminal corruption (Sergey Korotaev siendsi@gmail.com)
- faac79b: fix: completely remove .bak file generation from memory tool (Sergey Korotaev siendsi@gmail.com)
- d91a644: fix: cross-platform Dup2/Dup — use unix.Dup2 instead of syscall.Dup2 for Linux ARM64 (Sergey Korotaev siendsi@gmail.com)
- 008027b: fix: cross-platform syscall.Select — macOS returns (error), Linux returns (int, error) (Sergey Korotaev siendsi@gmail.com)
- da7529e: fix: data race in Spinner.Start() - access providerName/modelName under mutex (Sergey Korotaev siendsi@gmail.com)
- 0b75c58: fix: exec mode - accumulate totalGenDur for tool calls and reset genEnd on thinking (Sergey Korotaev siendsi@gmail.com)
- 5ec9775: fix: hard timeout on streaming requests + context deadline exceeded handling (Sergey Korotaev siendsi@gmail.com)
- abf8979: fix: max_tokens continuation for local models — send 'Continue.' without limit (Sergey Korotaev siendsi@gmail.com)
- 739ec0f: fix: memory tool session-scoped + TUI hang after response (Sergey Korotaev siendsi@gmail.com)
- cd507d1: fix: memory tool — mandatory rules + AfterCompact injection (Sergey Korotaev siendsi@gmail.com)
- b78d126: fix: memory tool — sessionID passed to createAgentLoop (Sergey Korotaev siendsi@gmail.com)
- ac0a772: fix: panic in CompactContext when len(otherMsgs) < keepRecent (Sergey Korotaev siendsi@gmail.com)
- 05a3bd9: fix: paste detection in CLI, auto-redirect & to background, remove request timeout (Sergey Korotaev siendsi@gmail.com)
- ba88962: fix: permanent category protection - credentials and project are no longer permanent by default, only explicit 'permanent' category or '!' prefix (Sergey Korotaev siendsi@gmail.com)
- 7919c44: fix: preserve orphaned tool_result in user messages during compaction (Sergey Korotaev siendsi@gmail.com)
- 53ce9de: fix: preserve user messages and tool_use blocks during compaction (Sergey Korotaev siendsi@gmail.com)
- fa59a95: fix: prevent context loss after compaction and premature session end (Sergey Korotaev siendsi@gmail.com)
- b00c26c: fix: protect permanent memory facts from overwrite/delete + todo file persistence (Sergey Korotaev siendsi@gmail.com)
- a53c451: fix: race condition in BackgroundTool - use PID polling instead of cmd.Wait() (Sergey Korotaev siendsi@gmail.com)
- ebd808b: fix: readline Enter not submitting after model response (Sergey Korotaev siendsi@gmail.com)
- ff9e31f: fix: readline not requiring Enter after response (Sergey Korotaev siendsi@gmail.com)
- 903cad9: fix: readline not restored after timeout — resetReadline always recreates (Sergey Korotaev siendsi@gmail.com)
- 047a225: fix: readline prompt after slash commands - no more Enter required (Sergey Korotaev siendsi@gmail.com)
- d8cd73a: fix: readline prompt lost after slash commands (Sergey Korotaev siendsi@gmail.com)
- 6e1e956: fix: recreate readline after each request to fix hang after ask_user (Sergey Korotaev siendsi@gmail.com)
- 24eedd5: fix: remove 'Press Enter to retry' message after timeout (Sergey Korotaev siendsi@gmail.com)
- 4c09d79: fix: remove .bak file generation — ChangeTracker handles undo (Sergey Korotaev siendsi@gmail.com)
- 2df2037: fix: request timeout - cancel streaming, retry hint, fix format string (Sergey Korotaev siendsi@gmail.com)
- 96fe392: fix: restore user messages with tool_result blocks in session recovery (Sergey Korotaev siendsi@gmail.com)
- af75034: fix: restore() not loading current facts before merge — could cause duplicates (Sergey Korotaev siendsi@gmail.com)
- 313d462: fix: rule0 - background commands as first rule, bash description warns about & (Sergey Korotaev siendsi@gmail.com)
- 44a04d2: fix: show speed/tokens on first steps of iteration (Sergey Korotaev siendsi@gmail.com)
- bd579cd: fix: simplify GoReleaser (remove brew/scoop/nfpm), fix Go version for CI (Sergey Korotaev siendsi@gmail.com)
- acf5267: fix: speed always shown when tokensOut > 0 (Sergey Korotaev siendsi@gmail.com)
- a082c17: fix: stronger rule0 and bash description about & prohibition (Sergey Korotaev siendsi@gmail.com)
- a5b137e: fix: sync totalGenDur in UpdateTokens so speed is shown immediately (Sergey Korotaev siendsi@gmail.com)
- 9431418: fix: sync totalGenDur in spinner with UpdateTokens to prevent speed disappearing (Sergey Korotaev siendsi@gmail.com)
- 788d838: fix: test for background redirect, push all changes (Sergey Korotaev siendsi@gmail.com)
- 6503b8a: fix: timeout message format %!f(string=) → correct %s with string arg (Sergey Korotaev siendsi@gmail.com)
- c6f1c2d: fix: update CI to Go 1.25 (required by charm.land deps) (Sergey Korotaev siendsi@gmail.com)
- fb42bdd: fix: use Go 1.24 on CI with GOTOOLCHAIN=auto for 1.25 deps (Sergey Korotaev siendsi@gmail.com)