Skip to content

Releases: panjie/mods

Nightly build

23 Jun 00:58

Choose a tag to compare

Nightly build Pre-release
Pre-release

Nightly build from 4d6b79e78bcdea39c4e6d5c78c2ca9c3c2db4cb1.

This prerelease is overwritten on every push to main.

v2.5.0

27 Jun 01:36

Choose a tag to compare

v2.5.0 - 2026-06-27

Added

  • Interactive setup with mods --config, plus first-run configuration when no settings or conversations exist.
  • Provider and model setup wizard entries, including web search configuration and clearer base URL handling.
  • Continuous chat mode for longer interactive sessions.
  • Built-in Mods identity guidance so models understand the CLI, config, tools, and expected behavior.
  • Safe workspace filesystem tools (fs_read, fs_write, fs_list, fs_stat) with scoped access.
  • Plan mode improvements with multi-proposal selection and local shell command classification.
  • Configurable web-search-api-key-env, defaulting to TAVILY_API_KEY.
  • Clipboard image shorthand flag.
  • Nightly release automation using GoReleaser.

Changed

  • Config precedence is now explicitly CLI flags > mods.yml > MODS_ env > defaults.
  • Custom OpenAI-compatible endpoints now favor explicit config via mods --config or mods.yml instead of base URL environment auto-discovery.
  • Tool approval rules now use directory-scoped grants instead of shell command prefix matching.
  • Reasoning controls now actively enable or disable provider-specific thinking behavior, including DeepSeek.
  • The build system moved from Mage to Taskfile.
  • Streaming, request handling, and tool policy internals were centralized and optimized.
  • Thinking and review UI output was softened and simplified.

Fixed

  • Respect -T reasoning settings in plan mode and provider-specific reasoning paths.
  • Suppress loading animation in debug mode and preserve unsolicited reasoning output.
  • Separate model responses cleanly after tool calls.
  • Flush cached output and config path updates reliably.
  • Validate CLI inputs before provider calls.
  • Improve config wizard navigation, provider model setup, base URL screens, and Shift+Tab behavior.
  • Fix always-allow directory rule handling and trust LLM shell review analysis.
  • Clarify LLM prompt guidance and update README test expectations.

Full comparison: v2.0.0...v2.5.0

v2.0.0

21 Jun 01:16

Choose a tag to compare

v2.0.0

The first major release of the actively maintained fork. Mods is now an AI
agent for your terminal — not just a pipeline tool. It reads and edits
files, runs shell commands, searches the web, and chains tool calls to finish
a task, with a review step that keeps you in control of anything risky.

⚠️ Breaking Changes

  • Module renamed from github.com/charmbracelet/mods to
    github.com/panjie/mods. Update your go.mod and import paths.
  • Removed flags: --prompt (-P) and --prompt-args (-p). The -p
    short flag is now used for --plan.
  • Default --help trimmed to everyday options; advanced and
    configuration-first options moved to the new --help-all.

✨ Highlights

  • Plan mode (--plan / -p): generate a detailed plan for your approval
    before Mods touches any files or runs any commands.
  • Arrow-key navigation in approval prompts — accept, deny, or save a
    per-conversation rule without leaving the home row.
  • Multi-provider reasoning (--reasoning on|off|auto, -T): unified
    reasoning config works across OpenAI, Anthropic, DeepSeek, GLM, Qwen, Kimi,
    and MiniMax, with distinct rendering of the model's thinking.

🔌 New Providers

Added four OpenAI-compatible providers with model templates and reasoning
support:

  • GLMglm-5.2
  • Qwenqwq-plus, qwen3-plus
  • Kimikimi-k2
  • MiniMaxMiniMax-M3

Model list refreshed across OpenAI, Anthropic, Google, Cohere, DeepSeek,
OpenRouter, and Ollama.

🔒 Safety & Stability

  • Closed critical security gaps in fs_apply_patch, Google auth, and web
    search input handling.
  • Hardened tool/shell execution safety and concurrency.
  • Fixed cache atomic writes, provider stream contracts, and flag parsing.
  • Plan output is now preserved across the approval flow.

🛠️ CLI & DX

  • --help-all groups every flag by purpose (Model, Session, I/O, MCP,
    Tools, Debug, …).
  • Expanded CLI examples covering image, web search, plan, review, MCP, and
    reasoning.
  • Release archives expanded to Linux and macOS (previously Windows-only).

📚 Documentation

  • README rewritten to showcase Mods' agent capabilities, with high-impact
    examples for code review, refactoring, debugging, and scaffolding.
  • Removed stale standalone docs and the legacy fanciness option.

Full Changelog: v1.0.1...v2.0.0

v1.0.1

19 Jun 00:02

Choose a tag to compare

Changelog

  • 502c778 Prepare Windows release archives for WinGet
  • 9990c6f Remove manpage support and use XDG install dirs
  • 51dc753 build: replace Makefile with Mage
  • af971d8 build: add install targets with XDG support
  • d56faef refactor: move CLI internals under internal packages
  • 11b2c6d add demo.tape
  • a98a100 add demo.gif
  • 0fc6381 Update image links in README to assets directory
  • 54fa9ee chore: update .gitignore
  • 9e6caa1 Add assets directory with demo.gif and mods-product.png
  • 5d994be chore: remove examples dir from git tracking
  • fd6e35e Add make target for manpage generation
  • ddb974c Keep generating animation until output starts
  • a9b4ee4 Add option to hide tool status
  • 0e0e7c5 chore: ignore .DS_Store and .gif files
  • 73a2180 Update example tape gif generation
  • 8feb6b4 Use system mods for example tapes
  • 6e4b1ef Refresh local README example GIFs
  • a557c46 docs: add demo tape examples
  • 08d1e9b docs: align README with current project state
  • e964154 docs: fix badges, license, completions text, and typo
  • 55d34c3 docs: replace package manager install with build from source
  • 275015e fix: add missing config entries to template and help map, fix --theme default
  • aab4205 feat: change newline key binding to ctrl+j in prompt editor
  • 36c4956 fix: harden shell approval, fix provider stream contracts, simplify shell classifier to LLM-only
  • ed423a1 fix: harden tool/shell execution safety and concurrency, refactor approval chain
  • 7861e5c Refactor shell tool execution safety
  • c694971 Add direct PowerShell tool on Windows
  • caa1182 Fail closed when tool review is unavailable
  • 318d0c9 Make Makefile targets Windows-compatible
  • 02bec8d feat: configurable workspace root and shell UX improvements
  • 8aa7660 feat: detect actual shell for approval rules, support non-POSIX shells
  • 535c73d improve: shell command classification, word wrap handling, and tool selection hints
  • 4abd9a0 add conversation-scoped approval rules
  • d6539da fix: tell LLM which shell and path format to use
  • c5e26e9 fix: treat non-zero shell exit codes as successful tool calls
  • 307a7ac fix: decode cmd.exe output from system ACP to UTF-8 on Windows
  • fa0d768 fix: prevent nil pointer panic in Google stream when API request fails
  • b93541f refactor: extract shared provider config factory, image helper, and tool round limit logic
  • f648f96 fix: handle glamour init error, fix mutex copy, harden config perms, guard nil db
  • e676584 chore: set version to 1.0.0, add CHANGELOG, inject version in dev build
  • e8085a6 fix: use markdown hard line breaks (trailing spaces) instead of paragraph breaks to preserve single newlines
  • 86b7222 fix: preserve line breaks in glamour output by converting single newlines to double
  • 5f6ad82 fix: remove MaxTokens=10 limit in shell classification to prevent empty LLM responses
  • b9fe096 fix: debug flag not syncing to atomic bool; improve shell classifier reliability
  • 74109b4 fix: complete Azure OpenAI (non-AD) support end-to-end
  • 4a1ed1e chore: remove unused max-completion-tokens field
  • 5b11f50 feat: LLM-based shell command classification for mutable review mode
  • 44a1dad refactor: remove shell command safety heuristics from review system
  • 2832425 Sort --help options alphabetically by removing SortFlags=false
  • c305f7f fix: address bugs found in code review
  • ecf9eb4 refactor: split Config, extract client factory, split mods.go
  • acc3b98 refactor: extract tool reviewer, remove global config, fix naming
  • e7673a4 fix: address concurrency bugs, error handling gaps, and code duplication
  • 55f1e0b fix: skip review in non-interactive mode to prevent deadlock
  • d23fe0b docs: add review banner visual and config YAML example to README
  • a95304a docs: update README for actively maintained fork
  • 98ac581 fix: close reviewChan, handle ctrl+c deadlock, remove stash from harmless git cmds
  • 0bafbd9 feat: add tool execution review mechanism with configurable shell heuristics
  • 35231b7 feat: add unified --reasoning option with auto mode and thinking debug output
  • 16d08f8 feat: add release target to Makefile
  • 67ffd15 build: standardize local build output
  • 11bec70 fix: cross-platform compatibility fixes
  • f26585a feat: show status line while model generates between tool calls
  • 590db93 Add minimal pipeline output mode
  • a7efbcc Use DuckDuckGo for default web search
  • f4f6d17 Improve tool operation status output
  • d179105 refactor: remove web_search pre-fetch logic, unify with other built-in tools
  • 31f9ba2 feat: update model list to latest releases (H2 2025 - H1 2026)
  • 5e7742e refactor: streamline config_template.yml — trim to essential providers
  • e3443ee feat: change default web search provider from Bing to Google
  • 1bd17e0 feat: add --max-tool-rounds with failed/success dual-track limiting
  • c16c646 fix: update tests for refactored tool system (fromMCPTools → fromToolSpecs, Tool removed)
  • 25ba52b fix: code review improvements — bug fixes, test coverage, and hardening
  • 4075e5e Gate filesystem tools automatically
  • 1a6864a Add native tool registry
  • 0e51531 fix mcp cancellation and config paths
  • a9489a1 fix: cross-platform HideWindow via platform-specific helpers
  • 75700de fix(windows): suppress console popup and reset-settings file lock
  • c75565e feat: add tool result truncation, round limit, MCP whitelist, and tests
  • 37e24d8 fix: prevent 413/token overflow with tool result truncation, system context, and round limiting
  • 7c87c50 chore: update API model configurations for DeepSeek, Cohere, OpenAI, Anthropic, Google
  • f1c1030 feat: add --debug/-D flag for execution step and request diagnostics
  • 18c294d fix: strip MCP tool schema descriptions and handle HTTP 413/4xx errors
  • 4a6df7c feat: add clipboard image support with cross-platform compatibility
  • 0e1c3c3 feat: add image recognition support for vision-capable LLMs
  • b97a82c docs(README): document web search and show-tool-calls features
  • 4f7a3b6 feat: add show-tool-calls config option to control tool call display
  • 1c78c7d fix: remove hardcoded setlang=en in Bing search
  • 656bcd8 Merge pull request #1 from panjie/feature/web-search
  • a7011c3 feat: add web search capability (Bing/Tavily)
  • 0425d0d docs(README): update sunset notice
  • cb1bf54 chore(deps): bump the all group with 3 updates (charmbracelet#677)
  • d6bbd4e chore(deps): bump the all group with 2 updates (charmbracelet#676)
  • 364aae5 chore(deps): bump the all group with 3 updates (charmbracelet#673)
  • 941bf5a chore(deps): bump the all group with 5 updates (charmbracelet#672)
  • f6747c8 chore: update LICENSE copyright
  • 0a17796 docs(readme): add sunset notice (charmbracelet#668)
  • e3cc766 chore(deps): bump the all group with 3 updates (charmbracelet#667)
  • b47ca22 chore(deps): bump the all group with 4 updates (charmbracelet#665)
  • 1e22839...
Read more