Releases: startvibecoding/vibecoding
v1.1.52
Changelog
v1.1.52
💅 Improvements
-
Provider HTTP/1.1 fallback option
- Added
providers.<name>.forceHTTP11to disable HTTP/2 for a provider HTTP client. - This can help with proxies or API gateways that occasionally reset HTTP/2 SSE streams with errors such as
stream ID ... INTERNAL_ERROR.
- Added
-
Retry early provider SSE read failures
- OpenAI-compatible, Anthropic, and Google streams now honor the configured
retrysettings when a transient stream read error occurs before any visible output is emitted. - HTTP/2
INTERNAL_ERRORstream resets are now classified as retryable network errors. - Once text, thinking, tool calls, or usage have been emitted, stream read errors still fail immediately to avoid duplicate output.
- OpenAI-compatible, Anthropic, and Google streams now honor the configured
-
Removed embedded rg/fd binaries — switched to pure-Go SDKs
- Replaced the embedded
rgbinary with thego-ripgreppackages. Thegreptool now runs ripgrep-compatible search in-process as pure Go, without systemgrepfallback. - Replaced the embedded
fdbinary with thego-fdSDK (gofd.Find()). Thefindtool now runs fd-compatible file discovery in-process as pure Go, without systemfindfallback. - Deleted the entire
internal/vendored/package (embed files, binary extraction,RgPath/FdPath/Ensurehelpers) and all 12 platform-specificrg/fdbinaries (~42 MB). - Removed
scripts/prepare-vendored.sh,scripts/extract-vendored-tool.sh,scripts/download-ripgrep.sh,scripts/download-fd.sh, and thepkgs/directory (cached tarballs). - Removed
prepare-vendoredandtest-vendoredMakefile targets;build,build-all, andtestno longer depend on binary extraction. - The
bashtool no longer injects~/.vibecoding/binintoPATH, since there are no extracted binaries to expose. - Output format remains line-oriented for
grepandfind; invalid roots and search setup errors are reported directly as tool errors.
- Replaced the embedded
-
FreeBSD Builds & Packaging
- Added FreeBSD
amd64andarm64to the build matrix (make build-freebsd), tarball distribution (make dist-freebsd), and the fullmake dist/make build-allflows. - Added FreeBSD platform npm packages (
vibecoding-installer-freebsd-x64,vibecoding-installer-freebsd-arm64) as optional dependencies, with platform detection in the npm wrapper andinstall.sh. - FreeBSD uses the pure-Go
grep/findimplementations and falls back to the no-op sandbox, since bwrap/seatbelt are Linux/macOS only.
- Added FreeBSD
-
Embedded BusyBox for Windows
- Embedded
busybox32u.exeandbusybox64u.exeassets for Windows, extracted at runtime and used as the default shell for thebashtool. - Falls back to PowerShell when BusyBox is unavailable.
- Bash tool output now includes a runtime label indicating whether BusyBox or the system shell is in use.
- Embedded
-
Interactive Model Picker
/modelwithout arguments now opens an interactive picker dialog instead of listing models as plain text.- Supports search/filter, arrow-key navigation, current-model indicator, and Enter to switch.
-
Native ccstatusline Support
- Added
statusLineconfiguration (type,command,padding,refreshInterval,timeoutMs,fallback) for external status line renderers. - Executes the status line command with a Claude-compatible JSON stdin payload; supports multi-line output, ANSI colors, and OSC 8 hyperlinks.
- Added
/statuslineslash command (on/off/status/test/refresh) for runtime control.
- Added
v1.1.51
Changelog
v1.1.51
✨ Features
-
New Provider: Volcengine (火山引擎)
- Added Volcengine provider with Doubao Seed models via the Ark API platform.
- Models: Doubao Seed 2.1 Turbo (
doubao-seed-2-1-turbo-260628, 256K context, text), Doubao Seed Evolving (doubao-seed-evolving, 256K context, text+image), Doubao Seed 2.1 Pro (doubao-seed-2-1-pro-260628, 256K context, text+image). - Uses OpenAI-compatible API endpoint
https://ark.cn-beijing.volces.com/api/v3. - Automatic vendor detection via
ark.cn-beijing.volces.comdomain.
-
SQLite Session Storage
- Standardized new and resumed sessions on SQLite (
modernc.org/sqlite) for improved query performance and metadata management. - For CLI and Gateway, all session metadata and entry logs are stored in a single, unified
sessions.dbdatabase file undersessionDir, using virtual.dbpaths as handles for listing, switching, and deleting. Only Hermes writes physical handle files (likeactive.dband archived*_corrupt.dbfiles) under per-user directories. - Added fast exact/prefix matching in
OpenByIDandOpenByPathOrID, including ambiguity detection and direct session reconstruction from the unified SQLite database. - ACP history replay now streams tool execution events (
toolCall/toolResult) while loading stored conversation history. DeleteSessionpurges session/entry rows from SQLite, and deletes the physical handle file if present (as in Hermes), while refusing to treat the sharedsessions.dbdatabase as a session handle.- Hermes now uses
active.dbphysical session handles, archives corrupt sessions as*_corrupt.db, and no longer falls back to legacyactive.jsonlpaths. - Removed legacy JSONL load/write paths so new and resumed sessions use SQLite only.
- Standardized new and resumed sessions on SQLite (
🐛 Bug Fixes
- ACP Systeminit Plan Mode Write Access
- Fixed ACP systeminit to allow file writes in plan mode, enabling the TUI/ACP to use
/systeminitfor generatingAGENTS.mdwithout mode restriction errors.
- Fixed ACP systeminit to allow file writes in plan mode, enabling the TUI/ACP to use
✨ Features
-
/systeminitand/reloadcommands- Added
/systeminitto generate or refresh a projectAGENTS.mdfor AI agents. Available in the TUI, ACP, and as thevibecoding systeminitCLI subcommand. In the TUI and ACP the agent heuristically uses thequestiontool to ask a few clarifying questions first, then writes a higher-qualityAGENTS.md; the CLI runs non-interactively. Optional trailing guidance is supported, e.g./systeminit ask me in Chinese, write AGENTS.md in English. - The
questiontool is now also available inagentmode (previously plan-only) and is registered for the ACP server, which surfaces questions via thesession/request_permissionchannel. - Added
/reload(TUI): restarts as a fresh process with a brand-new session, reloading config, context files, skills, and MCP — equivalent to relaunching the program.
- Added
-
Mode boundary enhancements:
/btwside questions + editable-path whitelist + full auto-edit- Added
/btw <question>: answer a quick side question without interrupting the main task. It inherits the main conversation history (read-only) into a one-shot sub-agent. The answer is shown in a temporary floating overlay, never written back to the main session, and does not consume the main task's context window or token budget. The sub-agent is read-only (read/grep/find/ls/skill_ref). A long main history is automatically truncated when injected to keep the side query lightweight. - Added
/alloweditpath [add <glob>|remove <glob>|clear]: an auto-edit path whitelist (supports**/*globs). In agent mode,write/editwhose path matches the whitelist auto-approve without prompting. - Added
/allowautoedit [on|off] [global]: full auto-edit in agent mode (effectively only bash still needs approval). - The whitelist and the auto-edit flag persist to a dedicated
allow.json:/alloweditpathand/allowautoedit(default) write the project-level.vibe/allow.json;/allowautoedit on globalwrites the globalallow.json. Loading is global→project override (editPathsis project-only). It is auto-loaded on startup. - These only relax the approval layer; sandbox / allowedWorkDirs boundaries and plan / yolo semantics are unchanged.
- Added
-
Update notifications via npm registry
- VibeCoding now checks the npm registry (
vibecoding-installer) for newer releases and shows a non-blocking reminder at startup when an update is available. - Network checks run in the background (at most once per 24h) and only refresh a local cache (
update-check.json); the foreground never blocks on the network. - The reminder appears in the TUI initial message and on stderr in
--printmode, suggestingnpm install -g vibecoding-installer@latest. - Disable via config file with
"updateCheck": falseinsettings.json, or withVIBECODING_NO_UPDATE_CHECK=1; override the registry withVIBECODING_NPM_REGISTRY.
- VibeCoding now checks the npm registry (
📚 Documentation
- Updated session documentation, CLI examples, FAQ cleanup guidance, architecture diagrams, Hermes docs, and README feature summaries to describe SQLite-backed storage,
.dbhandle files, andactive.dbHermes sessions. - Added configuration docs for the built-in Volcengine/Doubao provider and refreshed provider-adapter lists to include Volcengine, Mistral, GitHub Copilot, Cloudflare, and Amazon Bedrock adapters.
💅 Improvements
- TUI header and footer polish
- Enlarged the ASCII logo and vertically centered it within the header.
- Dimmed the footer separator and unified the mode/model/path colors for a cleaner look.
v1.1.50
Changelog
v1.1.50
✨ Features
-
Streaming Delta Builder Optimization
- Replaced string concatenation with
strings.Builderfor accumulating assistant and thinking text deltas during streaming, avoiding O(n²) memory growth on long responses. - Builders are finalized before printing on turn end, approval, and error events to ensure consistent output.
- Replaced string concatenation with
-
New Provider: Mistral
- Added Mistral AI provider with models: Mistral Large, Mistral Medium 3.5, Mistral Small, Codestral, Devstral, Magistral Medium/Small, and Pixtral Large.
- Uses OpenAI-compatible API endpoint
https://api.mistral.ai/v1.
-
New Provider: GitHub Copilot
- Added GitHub Copilot provider with Claude Sonnet 4.6/4.5, Claude Opus 4.8, Claude Haiku 4.5, Claude Fable 5, GPT-5.5/5.4/5.2, Gemini 2.5 Pro, and Gemini 3.5 Flash models.
- Uses OpenAI-compatible API endpoint
https://api.individual.githubcopilot.com.
-
New Provider: Cloudflare AI Gateway
- Added Cloudflare AI Gateway provider with Claude, GPT, Gemini, and Llama 4 Scout models.
- Supports routing through Cloudflare's AI Gateway with models from Anthropic, OpenAI, Google, and Meta.
-
New Provider: Cloudflare Workers AI
- Added Cloudflare Workers AI provider with Llama 4 Scout 17B, Llama 3.3 70B, Gemma 4 26B, Mistral Small 3.1 24B, GPT OSS 120B/20B, Kimi K2.7 Code, and GLM 5.2 models.
- Uses Cloudflare's Workers AI inference endpoints.
-
New Provider: Amazon Bedrock
- Added Amazon Bedrock provider with Claude Sonnet 4.6/4.5, Claude Opus 4.8, Claude Haiku 4.5, Claude Fable 5, Amazon Nova Pro/Micro/Lite, and DeepSeek V3.2/R1 models.
- Uses OpenAI-compatible cross-region inference endpoints.
-
Compact TUI Footer and Input Divider
- Merged mode, model, and path onto a single footer line (was 3 lines).
- Added half-block divider between transcript and input area for visual separation.
- Applied background color to editor cursor and placeholder styles.
- Added npm postinstall script with quick start info.
🐛 Bug Fixes
-
TUI Input Box Width Alignment
- Aligned input box width with the gap divider above for consistent layout.
- Set editor width to full terminal width to match gap divider.
- Fixed double padding subtraction in editor Width calculation by using
m.widthfor the final render Width.
-
TUI
compactBashOutputTrailing Whitespace- Fixed
compactBashOutputwriting the original untrimmed line instead of the trimmed version after blank-line dedup, which could preserve trailing whitespace.
- Fixed
-
TUI Duplicate Transcript in Program-Backed Scrollback
- Cleared managed live content when a Bubble Tea program is active so completed transcript blocks printed to native scrollback via
Program.Printlnare not duplicated in the live view.
- Cleared managed live content when a Bubble Tea program is active so completed transcript blocks printed to native scrollback via
v0.1.47
Changelog
v0.1.47
✨ Features
- Expanded Model Catalog
- Added new Anthropic models: Claude Opus 4.8, Claude Opus 4.1, Claude Opus 4, Claude Sonnet 4.0, Claude Haiku 4.5, Claude Fable 5, and legacy Claude 3 series models.
- Added new OpenAI models: GPT-5.5, GPT-5.5 Pro, GPT-5.4 series, GPT-5.3 Codex/Spark, GPT-5.2 Pro/Codex, GPT-5.1 Codex variants, GPT-4.1 series, o4-mini, o3/o3-pro/o3-deep-research, o1-pro, and legacy GPT-4 variants.
- Added OpenRouter provider models: Claude Sonnet 4.6/4.5, Claude Opus 4.8, Claude Haiku 4.5, GPT-5.5/5.5 Pro/5.4, Gemini 3.5 Flash/2.5 Pro, DeepSeek V4 Flash/Pro, Qwen 3.7 Plus, Kimi K2.7 Code, MiniMax M3, Llama 4 Scout, GLM 5/5.2, Grok 4.3, and GPT-OSS-120B (free).
- Added Vercel AI Gateway models: Claude Sonnet 4.6/4.5, Claude Opus 4.8, Claude Haiku 4.5, GPT-5.5/5.4, Gemini 3.5 Flash, DeepSeek V4 Flash/Pro, Qwen3.6 Plus, MiniMax M3, Kimi K2.7 Code, Grok 4.3, and GLM 5.2.
- Reordered Anthropic and OpenAI model lists to show newest models first.
🐛 Bug Fixes
-
TUI Approval Details Visibility in Live View
- Fixed queued approval requests not showing details in the live transcript while waiting for user input.
- The current approval message index is now tracked so it stays visible during the approval prompt.
- Index is properly cleared after approval is answered and reset on state/clear paths.
-
TUI Tool Modal Performance and Display
- Added line-level caching for tool modal rendered output to avoid re-parsing the full transcript on every render.
- Added per-entry caching for expanded tool results to avoid repeated formatting.
invalidateToolModalCache()is now called at all transcript state mutation points to keep the cache consistent.- Fixed edit tool results duplicating diff excerpts in the expanded view by extracting a dedicated edit header formatter.
- Tool modals now open at the top (offset 0) instead of scrolling to the bottom.
🧪 Tests
- Added regression test verifying expanded edit output does not duplicate diff excerpts.
v0.1.46
Changelog
v0.1.46
✨ Features
-
Workflow Agent Instance Keys
- Added
:keyfor repeated logical workflow agents, so boundedwhileloops can keep literal agent names while storing per-round results asphase.agent[key]. - Added
result-keyandresult-latest, plus(result "phase.agent" :key "r0"), for explicit keyed result lookup and latest-instance lookup. - Keyed workflow workers use instance-aware runtime IDs such as
agent-worker[r0], preventing repeated loop workers from colliding while preserving the logical agent name.
- Added
-
Workflow Lint Tool
- Added
workflow_lintto validate workflow Elisp DSL without running worker agents. - Linting checks Elisp syntax, workflow/phase/agent forms, keyword arguments, required prompts, and result references.
- Registered the lint tool alongside workflow run/status/cancel tools and updated workflow prompt guidance to lint non-trivial generated or edited workflows before execution.
- Added
-
Configurable Context Compaction
- Added compaction settings for
tokenizer,tokenizerModel, andtemplate, wired through CLI, print mode, ACP, Gateway, Hermes, TUI mode switches, and delegated agent factories. - Added built-in compression summary templates:
default,code, andconversation, so long sessions can preserve task-appropriate checkpoints. - Introduced a token estimator abstraction while preserving the existing generic chars/4 estimator for
autoandgeneric. - Compaction entries now record summary version, previous compaction ID, and last summarized entry ID for better session replay/debugging.
- Added compaction settings for
🐛 Bug Fixes
-
Context Compaction Replay
- Print mode now restores replayed session history before running the agent, preserving prior conversation context.
- Manual and forced compaction now check for genuinely compactable older history instead of compacting only recent context.
- Replayed compacted messages strip stale usage metadata from kept messages to avoid leaking obsolete token accounting into future runs.
-
Concurrent File Writes
- Added a process-wide in-memory file lock manager shared by default tool registries.
writeandeditnow acquire per-file locks before reading and modifying files, preventing concurrent agents from interleaving writes to the same target.- Lock waits honor context cancellation/deadlines and report the current owner when interrupted.
🔧 Refactoring
-
Pre-release Packaging
npm-publish-prenow syncs and builds npm packages with a-preversion suffix before publishing pre-release packages.- Updated npm package metadata and optional platform dependency versions to the pre-release version.
-
Named Workflow Worker Agents
- Workflow worker agents now use deterministic IDs derived from DSL agent names (
agent-<name>), improving event attribution and background agent visibility. - Workflow skill guidance now documents the ID mapping and recommends unique agent names within a workflow.
- Workflow worker agents now use deterministic IDs derived from DSL agent names (
📚 Documentation
- Updated Workflow mode docs, tool reference, and the
workflow-elispskill to document:key, keyed result lookup, and bounded while-loop patterns. - Documented context compaction
tokenizer,tokenizerModel, andtemplatesettings, including the built-in template choices and the current reserved/deprecated status of idle compaction settings. - Clarified Ctrl+O details modal key hints for target switching, paging, scrolling, and closing.
- Documented the TUI scrollback trade-off: completed transcript blocks are printed to native terminal scrollback for stable selection/history, while user input should remain block-printed rather than unbuffered streaming to avoid interfering with Bubble Tea live rendering.
🧪 Tests
- Added workflow runner, lint, integration, and skill coverage for keyed repeated agents and keyed result lookup.
- Added context compaction tests for custom token estimators, template resolution, configured summary prompts, compaction metadata, compactability checks, and session replay usage cleanup.
- Added Gateway and Hermes coverage for
/compactwhen only recent context can be kept. - Added workflow lint tests for valid source collection and missing result reference errors.
- Added workflow integration coverage verifying DSL agent names are reflected in runtime worker agent IDs.
- Added file lock tests for wait/cancel behavior, shared default managers, and
write/editcontext handling.
v0.1.45
Changelog
v0.1.45
✨ Features
-
Workflow Skill with Progressive References
- Extracted workflow Elisp/DSL documentation from the system prompt into a dedicated
workflow-elispskill, reducing system prompt size. - Introduced progressive reference structure: skill index page lists 9 reference files loaded on demand, with core rules loaded by default.
- Eight pattern guides: research & investigation, serial & parallel composition, decision routing, bounded while loops, horizontal multi-agent collaboration, master-slave small teams, evaluator-optimizer review passes, and governance & human checkpoints.
- Each reference file includes copy-ready Elisp skeleton examples and pattern selection guidance.
EnsureProjectSkillautomatically creates the skill and all reference files under.skills/workflow-elisp/without overwriting user-customized content.
- Extracted workflow Elisp/DSL documentation from the system prompt into a dedicated
-
Workflow Timeout Control
- Added optional
timeoutSecondssupport toworkflow_run, allowing bounded long workflows to choose an appropriate timeout and intentional continuous workflows to set0to avoid the default agent-level deadline.
- Added optional
-
vibeEmacsLispVm v0.0.2 Upgrade
- Upgraded
vibeEmacsLispVmdependency from v0.0.1 to v0.0.2 with expanded Elisp surface. - Added support for backquote/comma,
let*/while/cond/catch/throw/lambda/defun/defmacro/with-current-buffer/save-current-bufferspecial forms. - Added builtins:
cons/car/cdr/nth/append/reverse/member/assoc/funcall/apply/macroexpand, arithmetic and predicate functions, and in-memory buffer + marker builtins. - Added comprehensive test coverage for v0.0.2 Elisp features.
- Upgraded
🔧 Refactoring
-
Gateway Session-Level Skills Support
- Gateway sessions now support independent
SkillsMgrandExtraContext, so delegate sub-agents inherit per-session state. /skilland/skillscommands now operate on session-level skills instead of global server-level skills.
- Gateway sessions now support independent
-
System Prompt Streamlining
- Detailed workflow Elisp VM syntax and DSL form descriptions removed from the system prompt, replaced by a reference to the
workflow-elispskill. - Only key constraints and usage notes remain in the system prompt, significantly reducing token usage.
- Detailed workflow Elisp VM syntax and DSL form descriptions removed from the system prompt, replaced by a reference to the
-
Workflow Skill Reference Clarity
- Renamed reference file titles for clarity: "Continuous Loops and Iterative Tasks" → "Bounded While Loops", "Evaluator-Optimizer and Critic Loops" → "Evaluator-Optimizer Review Passes".
- Split pattern selection guidance: bounded while loops for runtime repetition with stop conditions; evaluator-optimizer for one-pass draft/critique/revise pipelines.
- Added constraint: do not simulate loops with numbered phases.
- Unified progressive reference status labels to English ("loaded" / "load on demand") for consistency.
📚 Documentation
- Added Workflow mode usage guide and best practices documentation (EN/ZH) covering quick start, core concepts, common patterns, and pitfalls.
- Synced workflow references across docs pages: added Dynamic Workflows section to features overview, workflow orchestration scenario to use cases, and cross-links from tools references.
- Clarified workflow hidden defaults and limits in the
workflow-elispskill and docs: worker:max-iterationsdefault/failure behavior,workflow_run timeoutSeconds,concurrencydefault, inherited:mode, default:tools, current work directory behavior, disabled nested orchestration, and unsupported per-worker options.
🧪 Tests
- Added workflow skill tests verifying skill file and 8 reference file creation, non-overwrite behavior, and missing reference auto-creation.
- Expanded workflow runner and lisp test coverage.
- Added tests for reference content clarity and non-overlap of loop vs evaluator-optimizer patterns.
Full Changelog: v0.1.44...v0.1.45
v0.1.44
Changelog
v0.1.44
✨ Features
-
Dynamic Workflows
- Added
--workflowsmode for CLI, ACP, and Gateway, independent from--multi-agent. - Added Elisp workflow tools:
workflow_run,workflow_status, andworkflow_cancel. - Added workflow runtime support for phases, series/parallel execution, concurrency limits, worker-agent tasks, result fan-in, and run logs.
- Added persistent workflow run state under the VibeCoding workflow store and
/workflowsstatus commands in TUI and Gateway. - Added in-process active-run cancellation so
workflow_canceland/workflows cancel <id>can interrupt running workflows.
- Added
-
Z.AI Vendor Adapter
- Added
vendor_zai.gowith a dedicatedzaivendor adapter, registering domainsapi.z.aiandopen.bigmodel.cnwiththinkingFormat: zai. - Updated
zaiandzai-coding-cnprovider configs: setVendor: "zai",ThinkingFormat: "zai", updated base URL to the coding endpoint, addedglm-5v-turbovision model.
- Added
-
Kimi Provider Updates
- Added
api.kimi.comdomain to thekimivendor adapter for automatic vendor detection. - Added
User-Agent: KimiCLI/1.5header to thekimi-codingprovider config. - Added Kimi K2.7 Code and K2.7 Code HighSpeed models to
moonshotai,moonshotai-cn,fireworks, andopencode-goproviders.
- Added
-
New Models
- Added
GLM-5.2model to theopencode-goprovider (1M context, 262K max output). - Added Kimi K2.7 Code Fast model to
fireworksprovider.
- Added
🐛 Bug Fixes
-
TUI Agent Event Handling
- Fixed partial response text not being committed to terminal scrollback when an error event occurs mid-stream, ensuring partial content is not lost.
- Added regression test verifying stream indices and print queue behavior on error.
-
Version Strings
- Fixed
Makefileto use--abbrev=0withgit describefor clean tag versions without commit count/hash suffix. - Fixed
sync-npm-version.shto strip commit count and hash suffix from version strings. - Updated
npm/bin/vibecodingto use GitHub raw URL for install script fallback.
- Fixed
🔧 Refactoring
- Agent Manager Deterministic Ordering
AgentManager.Listnow sorts agents by start time then ID for stable, deterministic ordering.- Extracted
resetAgent/abortAndResetAgenthelpers to reduce code duplication in TUI commands. - Agent ID is now set in config when creating agents in TUI.
📦 Dependencies
- Added
github.com/startvibecoding/vibeEmacsLispVm v0.0.1as the embedded Elisp subset evaluator used by workflow DSL execution.
📚 Documentation
- Added the dynamic workflows Elisp proposal under
docs/proposal/. - Updated English and Chinese tool docs with workflow tool usage, Elisp-only DSL guidance, and cancellation scope.
🧪 Tests
- Added workflow runner/store/tool tests covering Elisp execution, parallel workers, result fan-in, persistence, tool registration isolation, and active-run cancellation.
- Added prompt and CLI flag tests ensuring workflow mode does not leak into multi-agent mode, delegate mode, or worker-agent prompts.
- Added
VendorFromBaseURLtest cases forapi.kimi.com,api.z.ai, andopen.bigmodel.cn. - Added agent manager tests verifying deterministic list ordering.
Full Changelog: v0.1.43...v0.1.44
v0.1.43
Changelog
v0.1.43
🐛 Bug Fixes
- TUI Input Flush
- Fixed
flushInputQueuein TUI app to properly return the queued input as atea.Cmd, ensuring queued keystrokes are flushed before processing key events (Enter,Tab,Up,Down). Previously the command was called but its return value was discarded.
- Fixed
🔧 Refactoring
- Remove Unused
mergeSettings- Removed the unused
mergeSettings()function and its related tests. Project settings merging is now handled directly byLoadSettings. - Rewrote
settings_zero_testto test via actual file I/O withLoadSettings()instead of direct JSON unmarshaling.
- Removed the unused
📦 Dependencies
- GoStreamingMarkdown Update
- Updated
github.com/startvibecoding/GoStreamingMarkdownfromv0.0.2tov0.0.3.
- Updated
🧪 Tests
- Added test verifying that
Enterflushes queued input before applying command suggestions.
v0.1.42
Changelog
v0.1.42
✨ Features
- TUI Multiline Input
- Replaced the prompt input with the reusable TUI editor component, enabling true multiline prompt composition.
Alt+EnterandCtrl+Jnow insert newlines;Enterstill submits the prompt.- Small multiline pastes are preserved as multiline text instead of flattening newlines to spaces, while large pastes still use paste markers.
Up/Downnow move within multiline input first and only browse prompt history at input boundaries.
🐛 Bug Fixes
- TUI Input Editing
Home/Endediting keys now reach the input editor correctly instead of being swallowed by top-level TUI handling.- Restored draft-preserving prompt history navigation when queued keystrokes have not yet flushed.
/clearnow resets printed-message bookkeeping after emitting the clear confirmation, avoiding stale transcript print state after clearing.
📚 Documentation
- Updated TUI keyboard shortcut documentation for multiline input, newline insertion, history navigation, and tool modal behavior.
🧪 Tests
- Added tests for multiline prompt input,
Alt+Enter/Ctrl+J, small multiline paste preservation, prompt history boundary navigation, Home/End input editing, and/cleartranscript state reset.
Full Changelog: v0.1.41...v0.1.42
v0.1.41
Changelog
v0.1.41
✨ Features
-
TUI Redesign
- Added a startup header with the Vibe logo, version, provider/model, and current working directory.
- Added a redesigned footer showing mode, model, cwd, elapsed/last request duration, sandbox, context window usage, cache metrics, and key hints.
- Added an inline loading indicator while the agent is running, with spinner, elapsed time, and cancel hint.
- Added a sticky todo list for active non-done
plantool steps, so long-running tasks remain visible while the transcript scrolls. - Added a multi-agent tab bar showing active agents and their states when more than one agent is running.
- Added compact tool display mode, toggled with
Ctrl+G, to collapse tool outputs into one-line summaries while keeping details available throughCtrl+O.
-
Terminal Scrollback Transcript
- Completed transcript blocks are now printed to native terminal scrollback via Bubble Tea
Program.Println, leaving only live streaming content inside the managed TUI view. - This improves mouse scrolling, terminal selection/copying, and behavior for long transcripts.
- Completed transcript blocks are now printed to native terminal scrollback via Bubble Tea
-
TUI Component Foundation
- Added reusable editor, suggestion list, and vertical scroll components under
internal/tui/components/with CJK-aware buffer and rendering behavior.
- Added reusable editor, suggestion list, and vertical scroll components under
-
Response Formatting Guideline
- Updated the system prompt to discourage excessive bold text, headers, and bullet lists unless structure is needed or requested.
🐛 Bug Fixes
-
TUI Tool Result Printing
- Tool result updates now go through one-time transcript printing instead of only refreshing in-memory live content, preventing completed tool output from disappearing from terminal scrollback.
-
Viewport Cleanup
- Removed obsolete viewport state resets after the TUI moved transcript history to terminal-native scrollback.
📦 Packaging
- Updated npm installer package metadata and optional platform package versions to
0.1.40.
🧪 Tests
- Added component tests for the new TUI editor, suggestion list, and vertical scroll models.
- Updated TUI cache/render tests for header, footer, native scrollback transcript printing, compact display mode, and simplified viewport behavior.