Skip to content

Releases: Pheem49/Mint

Mint v1.5.5

07 Jun 11:15

Choose a tag to compare

Mint Release Notes

v1.5.5

This release introduces task cancellation support, visual UI updates, customizable Gemini API safety settings, validation libraries, and critical bug fixes.

Task Cancellation & UI Visual Updates

  • Cancellation Support: Implemented task cancellation via AbortController in code_agent.js and interactive_chat.js, allowing users to interrupt long-running operations.
  • UI Enhancements: Redesigned interactive chat interface elements and updated the Desktop UI styles (styles.css) for a more responsive and modern user experience.

Gemini API Integration

  • Unrestricted Interactions: Configured safetySettings (set to BLOCK_NONE) across all categories for Gemini API requests.
  • System Instructions: Updated default agent and chatbot instructions to handle mature, creative, and uncensored interactions without unwarranted refusals.

Dependencies & Build Workflow

  • Data Validation: Added the zod dependency for schema validation and parsing.
  • Dependency Overrides: Added a package override for gh-pages to resolve build configuration conflicts.
  • CI Environments: Enabled FORCE_JAVASCRIPT_ACTIONS_TO_NODE24 in Github Actions CI to ensure compatibility with Node.js 24 runtime environments.

Bug Fixes

  • Directory Walker Fallback: Fixed the fallback directory-walking logic in code_agent.js when ripgrep is not installed or fails, ensuring it scans the correct searchRoot instead of defaulting to the full workspaceRoot.

v1.5.4

This release introduces automated one-liner installation scripts for macOS, Linux, and Windows, replaces AppImage with .tar.gz for Linux packaging, fixes missing dependencies, and improves continuous integration workflows.

One-Liner Automated Installers

We have introduced automated installation scripts to make setting up and updating Mint CLI easier than ever.

  • Linux & macOS (One-liner):
    curl -fsSL https://raw.githubusercontent.com/Pheem49/Mint/main/install.sh | bash
  • Windows (One-liner via PowerShell):
    powershell -Command "iwr -useb https://raw.githubusercontent.com/Pheem49/Mint/main/install.ps1 | iex"
  • Smart Permission Handling: The Linux/macOS script automatically detects NVM environments and user write permissions, avoiding unnecessary sudo requests when installing the NPM package globally.

Packaging & CI Improvements

  • Linux Packaging: Replaced .AppImage with .tar.gz packaging for better compatibility across different Linux distributions.
  • CI Workflow Update: Updated the GitHub Actions workflow to run npm install instead of npm ci, resolving dependency synchronization issues and ensuring smooth builds.

Dependency & Bug Fixes

  • Missing Dependency: Added read-excel-file to the package dependencies to fix a runtime module error when launching the mint command.

Mint v1.5.4

28 May 02:28

Choose a tag to compare

Mint Release Notes

v1.5.4

This release introduces automated one-liner installation scripts for macOS, Linux, and Windows, replaces AppImage with .tar.gz for Linux packaging, fixes missing dependencies, and improves continuous integration workflows.

One-Liner Automated Installers

We have introduced automated installation scripts to make setting up and updating Mint CLI easier than ever.

  • Linux & macOS (One-liner):
    curl -fsSL https://raw.githubusercontent.com/Pheem49/Mint/main/install.sh | bash
  • Windows (One-liner via PowerShell):
    powershell -Command "iwr -useb https://raw.githubusercontent.com/Pheem49/Mint/main/install.ps1 | iex"
  • Smart Permission Handling: The Linux/macOS script automatically detects NVM environments and user write permissions, avoiding unnecessary sudo requests when installing the NPM package globally.

Packaging & CI Improvements

  • Linux Packaging: Replaced .AppImage with .tar.gz packaging for better compatibility across different Linux distributions.
  • CI Workflow Update: Updated the GitHub Actions workflow to run npm install instead of npm ci, resolving dependency synchronization issues and ensuring smooth builds.

Dependency & Bug Fixes

  • Missing Dependency: Added read-excel-file to the package dependencies to fix a runtime module error when launching the mint command.

Mint v1.5.3

27 May 05:02

Choose a tag to compare

Mint Release Notes

v1.5.3

This release focuses on the desktop assistant experience: a cleaner navigation shell, a local-only Pictures library for sent images, safer chat history behavior, and more complete appearance controls.

Desktop Navigation, Local Pictures, and Privacy

Mint Desktop now has a more workspace-like layout with a collapsible sidebar, clearer Chat/Pictures navigation, startup polish, and safer reset actions. Image attachments sent from the desktop chat can now be kept locally as files without storing raw image data in chat history.

Highlights

  • Collapsible Sidebar by Default: The desktop app now starts with the sidebar collapsed, keeping the chat/model workspace focused on launch.
  • Chat and Pictures Navigation: Added explicit Chat and Pictures sidebar actions for switching between the conversation and local image gallery.
  • New Chat Confirmation: Renamed New Conversation to New Chat and added confirmation before clearing the current conversation.
  • Clear Confirmation: The Clear action now asks for confirmation before deleting chat history.
  • Smoother Page Switching: Added fade/slide transitions when switching between Chat and Pictures.
  • Improved Pictures Gallery: Added a cleaner local gallery layout with larger cards, hover states, and a more polished header.
  • Local Pictures Library: Desktop images are saved locally under ~/.config/mint/Pictures after the user sends a message with an image.
  • Pictures Metadata Index: Saved images are indexed in ~/.config/mint/Pictures/pictures.json so the desktop gallery can list them.
  • No Raw Image History: Chat history replaces image payloads with a text placeholder instead of storing raw image base64 data.
  • Timestamp Preservation: Chat history now preserves original message timestamps across app restarts and Gemini history syncs.
  • Theme-aware Loading Screen: Startup loading now follows the active theme, accent color, and text color.
  • Theme & UI Settings: Added UI font size control alongside theme, accent color, system text color, glass blur, and font family.
  • README Polish: README sections were reorganized, made collapsible where useful, and updated with new desktop/privacy feature notes.

Local Pictures Library

Desktop image attachments now use a local-first storage flow:

  • Images are saved only after the user sends a message.
  • Files are written to ~/.config/mint/Pictures.
  • Metadata is written to ~/.config/mint/Pictures/pictures.json.
  • The in-app Pictures page reads that local index and renders saved images as a gallery.
  • Proactive screen captures are not saved to the Pictures library.

Example saved files:

~/.config/mint/Pictures/
├── mint-20260525-034738-7c0a9739.png
└── pictures.json

Chat History Privacy

Desktop image payloads are no longer stored as raw base64 inside ~/.config/mint/mint-chat-history.json.

When a history entry contains image data, Mint stores a placeholder such as:

[Image omitted from chat history; saved locally when sent by the user.]

The actual image file remains in the local Pictures folder when it was sent by the user.

Desktop Appearance Updates

  • Sidebar starts collapsed on launch.
  • Sidebar actions now include New Chat, Chat, Pictures, model controls, assistant shortcuts, Clear, and Settings.
  • New Chat and Clear are guarded by confirmation prompts.
  • Pictures view uses a dedicated gallery page instead of being mixed into the chat surface.
  • Light, dark, midnight, and custom themes now apply more consistently across loading, chat, sidebar, and gallery surfaces.
  • Settings now include Font Size options: Small, Medium, Large, and Extra Large.

Interactive CLI UX

  • Clipboard images are now attached first and sent only when the user presses Enter.
  • Pending image labels are rendered inside the input box.
  • Multiple pending images are shown as compact labels:
    • [Image #1] [Image #2]
  • Fixed terminal input edge cases where Ctrl+V could insert stray v characters.
  • Long pasted text no longer breaks the input border or terminal layout.
  • Pasted content can be combined with typed text:
    • text before paste
    • pasted content
    • text after paste
  • Image attachments follow the same composition model:
    • text before image
    • image labels
    • text after image
  • Code Agent search_code can now scope searches to a relative file or folder with input.path, avoiding whole-project scans when the likely area is known.
  • Scoped search activity now displays the target folder, for example Search requestApproval in src/CLI.
  • Code Agent search heuristics now inspect or use the current project layout before choosing a scoped search path, so Mint works better across projects with different structures.

Provider and Vision Handling

  • Gemini image MIME handling now preserves the real image MIME type instead of assuming PNG.
  • Chat provider paths can receive multiple images in one request where supported.
  • Code Agent multimodal requests now pass attached image context to supported providers.

Current Test Status

  • 190 tests passed
  • 29 test suites passed

Mint v1.5.2

23 May 10:24

Choose a tag to compare

Mint Release Notes

v1.5.2

This release improves desktop readability and adds repository-aware CLI tools for summarizing codebases, indexing symbols, and searching source code semantically.

Repository Intelligence, Semantic Code Search, and CLI Readability

This patch makes Mint more useful inside a project workspace. The CLI can now inspect a repository directly, build a lightweight source symbol index, and create a semantic code index backed by Gemini embeddings.

Highlights

  • Desktop UI Polish: Updated the app interface layout and control styling for a cleaner, more organized desktop experience.
  • Clearer Conversation Flow: Improved chat presentation so user and AI messages are easier to distinguish while reading.
  • Readable AI Replies: Adjusted AI response formatting to produce cleaner, more structured replies with better spacing and less clutter.
  • Thai Reply Handling: Improved response behavior for Thai conversations so replies remain natural and easier to read.
  • Reduced Visual Noise: Tightened UI states and message rendering so important conversation content stays the focus.
  • Repository Summary: Added mint summarize [path] and /summarize [path] to report project structure, package metadata, git state, languages, directories, and important files without requiring a full AI agent turn.
  • Symbol Index: Added mint symbols [path] and /symbols [path] to scan JavaScript, TypeScript, Python, and Rust source files for functions, classes, exports, interfaces, types, structs, enums, traits, and related symbols.
  • Semantic Code Search: Added mint semantic-code index and mint semantic-code search <query> for embedding source chunks and searching code by meaning.
  • Natural Workspace Requests: The interactive CLI can detect plain-language requests such as repository summaries, symbol indexes, and semantic code searches, including Thai phrasing, and route them to the local tools.
  • Working Timer: The CLI now shows how long Mint has been working while the agent is thinking.
  • Cleaner Streaming: Empty assistant/system chunks are filtered so live replies do not create blank messages.
  • Unified Patch Preview: Code-agent patch approvals now show a unified-diff style preview with surrounding context before applying edits.

New CLI Commands

  • mint summarize [path]
  • mint summarize [path] --json
  • mint symbols [path]
  • mint symbols [path] --json --limit 120
  • mint semantic-code index [path]
  • mint semantic-code search "<query>" --path <path> --top-k 5

New Interactive Commands

  • /summarize [path] [--json]
  • /summary [path] [--json]
  • /symbols [path] [--json] [--limit n]
  • /symbol-index [path] [--json] [--limit n]
  • /semantic-code index [path]
  • /semantic-code search <query>
  • /semantic index [path]
  • /semantic search <query>

Repository Summary

The repository summary tool reports:

  • root path
  • scanned file count
  • package name, version, description, scripts, dependencies, and dev dependencies
  • git branch, short status, and diff stat
  • top-level directory counts
  • language counts by extension
  • important files such as README, package metadata, release notes, source files, tests, config files, and CI files

Symbol Index

The symbol indexer scans supported source files locally and reports:

  • source files scanned
  • files containing symbols
  • total symbol count
  • counts by symbol kind
  • counts by language
  • symbol names with file and line references

Supported source extensions:

  • .js, .cjs, .mjs, .jsx
  • .ts, .tsx
  • .py
  • .rs

Semantic Code Search

Semantic code search creates workspace-specific indexes under ~/.config/mint/semantic-code.

  • Uses gemini-embedding-001 by default.
  • Reads the Gemini API key from Mint config or GEMINI_API_KEY.
  • Chunks source files with overlap so search results can point back to file and line ranges.
  • Includes file path, language, and local symbol names in each embedded chunk.
  • Stores file hashes with the index metadata for workspace tracking.
  • Supports formatted output and --json output.

Code Agent Patch Preview

Patch approvals now use unified diff previews:

  • shows --- a/<path> and +++ b/<path> headers
  • includes @@ range metadata
  • includes nearby unchanged context
  • displays removed and added lines with - and +
  • falls back to a clear preview error if a hunk cannot be matched

v1.5.1

This release updates the desktop Live2D experience, CLI response loop, learned skills, and image attachment UX.

Desktop Live2D Model and Interaction UI

This patch adds an optional Live2D assistant model to the desktop UI and improves the top toolbar for easier model control.

Highlights

  • Live2D Assistant Model: Added a Shiroko Live2D model panel to the Electron desktop assistant.
  • Model Visibility Preference: The model panel can be shown or hidden from the toolbar. New installs start with the model hidden until enabled.
  • Expression Cycling: Added a toolbar control for cycling Live2D expressions.
  • Expression Toast: The active expression name is shown in a small on-canvas toast after changing expressions.
  • Click-to-Chat Reactions: Clicking named model areas can trigger temporary expressions and send a short contextual prompt into the normal chat flow.
  • Interaction Area Overlay: Added a transparent guide overlay for clickable regions such as Head Pat, Cheek Poke, Hand Tap, Shoulder Tap, and Careful.
  • Safe Missed Clicks: Clicking outside the defined interaction zones no longer changes expression, sends chat prompts, consumes AI tokens, or starts cooldown.
  • Interaction Cooldown: Model reactions use a 3-second cooldown to reduce accidental repeated AI calls.
  • Live2D Lip Sync: Mint animates mouth parameters while speaking and resets them when speech ends.
  • Toolbar Redesign: Desktop header controls are grouped into clearer model, utility, and window-control sections with readable labels.

Live2D Desktop Model

  • The model is loaded from models/Shiroko_Model.
  • The desktop model can be toggled from the Model toolbar button.
  • The first launch defaults to hiding the model panel.
  • The visibility setting is stored in localStorage as mint-model-hidden.
  • Expression controls use the configured Live2D expression files and reset expression parameters before switching to avoid stuck expressions.
  • Temporary click reactions return to the previously selected expression after 2 seconds.

Interaction Zones

The interaction guide overlay labels clickable regions without blocking pointer input:

  • Head Pat
  • Cheek Poke
  • Hand Tap
  • Shoulder Tap
  • Careful

Only clicks inside these configured regions trigger Live2D reactions. Clicks outside the regions are ignored.

Fast Mode, Live Replies, and Learned Skills

This patch improves the Mint CLI interaction loop and adds persistent skill/instruction learning from local markdown or text files.

Highlights

  • Agent Status Label: The interactive CLI now shows [Agent] instead of [Chat] for the normal agent loop.
  • Fast Mode: Added /fast, /fast on, /fast off, and /fast status.
  • Fast Status: When Fast Mode is enabled, the status bar shows [Fast].
  • Quiet Trace Output: Fast Mode keeps ● Mint is thinking... visible but hides Thinking: and intermediate tool/progress trace messages.
  • Live Mint Replies: Final Mint responses now render into one live-updating Mint message block instead of appearing all at once or splitting into multiple Mint messages.
  • Learned Skills: Added mint learn <path> and /learn <path> for importing local .md or .txt files as persistent skill/instruction context.
  • Skill Management: Learned skills can be listed and deleted from both the command line and interactive CLI.
  • Expanded Slash Suggestions: /memory skills is now available in the / command suggestions.
  • Expanded Tests: Test suite now reports 137 passing tests.

Fast Mode

New interactive commands:

  • /fast toggles Fast Mode.
  • /fast on enables Fast Mode.
  • /fast off disables Fast Mode.
  • /fast status shows the current Fast Mode state.

Fast Mode changes presentation only. Agent routing, tool calls, approvals, final answers, and provider/model behavior continue to work normally.

Live Response Rendering

  • Thinking: messages can appear before the final answer when Fast Mode is off.
  • Final responses stream into one active Mint message block.
  • The completed message is stored in history after the response finishes.
  • Fast Mode still streams the final answer, but hides the internal Thinking: trace.

Learned Skills

New command-line examples:

  • mint learn ./skill.md
  • mint learn ./instructions.txt
  • mint learn --list
  • mint learn --delete <id|path|name>

New interactive CLI examples:

  • /learn ./skill.md
  • /memory skills
  • /memory skills delete <id|path|name>

Learned files are stored in Mint's SQLite memory as persistent skill/instruction documents. Mint injects learned skills into long-term context on later turns.

CLI Image Attachments & Paste UX

This patch improves the interactive Mint CLI input experience, especially for screenshots, clipboard images, and long pasted text.

Highlights

  • CLI Image Attachments: Added --image <path> support for mint chat and mint code.
  • Interactive Image Paste: Ctrl+V can attach clipboard images inside the interactive CLI without sending immediately.
  • Multiple Images: Users can attach several images before pressing Enter; the UI labels them as [Image #1], [Image #2], and so on.
  • Attachment Controls: Ctrl+Backspace removes the latest pending image, and Esc clears pending images or pasted content before exiting.
  • Long Paste Placeholder: Long or multi-line pasted text is collapsed in the input as [Pasted Content N chars] while p...
Read more

Mint v1.5.1

20 May 03:19

Choose a tag to compare

Mint Release Notes

v1.5.1

This release updates the desktop Live2D experience, CLI response loop, learned skills, and image attachment UX.

Desktop Live2D Model and Interaction UI

This patch adds an optional Live2D assistant model to the desktop UI and improves the top toolbar for easier model control.

Highlights

  • Live2D Assistant Model: Added a Shiroko Live2D model panel to the Electron desktop assistant.
  • Model Visibility Preference: The model panel can be shown or hidden from the toolbar. New installs start with the model hidden until enabled.
  • Expression Cycling: Added a toolbar control for cycling Live2D expressions.
  • Expression Toast: The active expression name is shown in a small on-canvas toast after changing expressions.
  • Click-to-Chat Reactions: Clicking named model areas can trigger temporary expressions and send a short contextual prompt into the normal chat flow.
  • Interaction Area Overlay: Added a transparent guide overlay for clickable regions such as Head Pat, Cheek Poke, Hand Tap, Shoulder Tap, and Careful.
  • Safe Missed Clicks: Clicking outside the defined interaction zones no longer changes expression, sends chat prompts, consumes AI tokens, or starts cooldown.
  • Interaction Cooldown: Model reactions use a 3-second cooldown to reduce accidental repeated AI calls.
  • Live2D Lip Sync: Mint animates mouth parameters while speaking and resets them when speech ends.
  • Toolbar Redesign: Desktop header controls are grouped into clearer model, utility, and window-control sections with readable labels.

Live2D Desktop Model

  • The model is loaded from models/Shiroko_Model.
  • The desktop model can be toggled from the Model toolbar button.
  • The first launch defaults to hiding the model panel.
  • The visibility setting is stored in localStorage as mint-model-hidden.
  • Expression controls use the configured Live2D expression files and reset expression parameters before switching to avoid stuck expressions.
  • Temporary click reactions return to the previously selected expression after 2 seconds.

Interaction Zones

The interaction guide overlay labels clickable regions without blocking pointer input:

  • Head Pat
  • Cheek Poke
  • Hand Tap
  • Shoulder Tap
  • Careful

Only clicks inside these configured regions trigger Live2D reactions. Clicks outside the regions are ignored.

Fast Mode, Live Replies, and Learned Skills

This patch improves the Mint CLI interaction loop and adds persistent skill/instruction learning from local markdown or text files.

Highlights

  • Agent Status Label: The interactive CLI now shows [Agent] instead of [Chat] for the normal agent loop.
  • Fast Mode: Added /fast, /fast on, /fast off, and /fast status.
  • Fast Status: When Fast Mode is enabled, the status bar shows [Fast].
  • Quiet Trace Output: Fast Mode keeps ● Mint is thinking... visible but hides Thinking: and intermediate tool/progress trace messages.
  • Live Mint Replies: Final Mint responses now render into one live-updating Mint message block instead of appearing all at once or splitting into multiple Mint messages.
  • Learned Skills: Added mint learn <path> and /learn <path> for importing local .md or .txt files as persistent skill/instruction context.
  • Skill Management: Learned skills can be listed and deleted from both the command line and interactive CLI.
  • Expanded Slash Suggestions: /memory skills is now available in the / command suggestions.
  • Expanded Tests: Test suite now reports 137 passing tests.

Fast Mode

New interactive commands:

  • /fast toggles Fast Mode.
  • /fast on enables Fast Mode.
  • /fast off disables Fast Mode.
  • /fast status shows the current Fast Mode state.

Fast Mode changes presentation only. Agent routing, tool calls, approvals, final answers, and provider/model behavior continue to work normally.

Live Response Rendering

  • Thinking: messages can appear before the final answer when Fast Mode is off.
  • Final responses stream into one active Mint message block.
  • The completed message is stored in history after the response finishes.
  • Fast Mode still streams the final answer, but hides the internal Thinking: trace.

Learned Skills

New command-line examples:

  • mint learn ./skill.md
  • mint learn ./instructions.txt
  • mint learn --list
  • mint learn --delete <id|path|name>

New interactive CLI examples:

  • /learn ./skill.md
  • /memory skills
  • /memory skills delete <id|path|name>

Learned files are stored in Mint's SQLite memory as persistent skill/instruction documents. Mint injects learned skills into long-term context on later turns.

CLI Image Attachments & Paste UX

This patch improves the interactive Mint CLI input experience, especially for screenshots, clipboard images, and long pasted text.

Highlights

  • CLI Image Attachments: Added --image <path> support for mint chat and mint code.
  • Interactive Image Paste: Ctrl+V can attach clipboard images inside the interactive CLI without sending immediately.
  • Multiple Images: Users can attach several images before pressing Enter; the UI labels them as [Image #1], [Image #2], and so on.
  • Attachment Controls: Ctrl+Backspace removes the latest pending image, and Esc clears pending images or pasted content before exiting.
  • Long Paste Placeholder: Long or multi-line pasted text is collapsed in the input as [Pasted Content N chars] while preserving the full content for sending.
  • Natural Composition Order: Text typed before an image or pasted content, the attachment/content itself, and text typed afterward are sent in the same natural order.
  • Vision Context Follow-up: The CLI keeps lightweight context from the latest image turn so follow-up questions can refer back to recently attached images.
  • Expanded Tests: Test suite now reports 137 passing tests.

CLI Image Input

  • Added src/CLI/image_input.js.
  • Supported image formats:
    • .png
    • .jpg
    • .jpeg
    • .webp
    • .gif
  • New command-line examples:
    • mint chat --image ./screenshot.png "What is on this screen?"
    • mint code --image ./mockup.png "Build this UI"
  • Interactive CLI examples:
    • Ctrl+V to attach a clipboard image.
    • /paste [prompt] to attach a clipboard image through a command.
    • /image ./screenshot.png [prompt] to attach an image file while already inside mint.

Interactive CLI UX

  • Clipboard images are now attached first and sent only when the user presses Enter.
  • Pending image labels are rendered inside the input box.
  • Multiple pending images are shown as compact labels:
    • [Image #1] [Image #2]
  • Fixed terminal input edge cases where Ctrl+V could insert stray v characters.
  • Long pasted text no longer breaks the input border or terminal layout.
  • Pasted content can be combined with typed text:
    • text before paste
    • pasted content
    • text after paste
  • Image attachments follow the same composition model:
    • text before image
    • image labels
    • text after image

Provider and Vision Handling

  • Gemini image MIME handling now preserves the real image MIME type instead of assuming PNG.
  • Chat provider paths can receive multiple images in one request where supported.
  • Code Agent multimodal requests now pass attached image context to supported providers.

Current Test Status

  • 137 tests passed
  • 20 test suites passed

Mint v1.5.0

15 May 07:44

Choose a tag to compare

Mint Release Notes

v1.5.0 Update - Provider Visibility, OAuth Integrations & Plugin Expansion

This update expands Mint's integration layer and improves provider transparency across the desktop and CLI experiences.

Highlights

  • Provider/Model Visibility: Desktop chat and CLI status now show the actual provider and model that answered, including fallback results.
  • Gmail API Integration: Added a safe Gmail plugin for searching/reading email and creating drafts.
  • Gmail OAuth Helper: Added mint gmail auth and mint gmail auth --no-open to generate and save Gmail refresh tokens.
  • Google Calendar API Integration: Calendar plugin can now list events and create events through the Calendar API, with browser fallback when OAuth is not configured.
  • Notion API Integration: Added Notion plugin support for creating pages, querying databases, and appending page blocks.
  • Onboarding Expansion: mint onboard now supports Google Calendar API, Gmail API, and Notion API setup.
  • Provider Routing Cleanup: OpenAI/local placeholders and empty local URLs no longer cause misleading fallback attempts.
  • Expanded Tests: Test suite increased to 121 passing tests across 19 test suites.

New Integrations

  • Gmail Plugin

    • Added src/Plugins/gmail.js.
    • Supports:
      • Gmail search/list queries, such as inbox and unread mail.
      • Reading full message content by message ID.
      • Creating drafts for review before sending.
    • Does not send email automatically.
    • Uses OAuth scopes:
      • https://www.googleapis.com/auth/gmail.readonly
      • https://www.googleapis.com/auth/gmail.compose
  • Gmail OAuth CLI

    • Added src/CLI/gmail_auth.js.
    • Added CLI commands:
      • mint gmail auth
      • mint gmail auth --no-open
    • --no-open prints the OAuth URL without opening a browser.
    • Onboarding can now start Gmail OAuth automatically after Gmail Client ID/Secret are configured and the refresh token is blank.
    • Saved config fields:
      • gmailClientId
      • gmailClientSecret
      • gmailRefreshToken
      • gmailUserId
      • pluginGmailEnabled
  • Google Calendar Plugin

    • Reworked src/Plugins/google_calendar.js.
    • Supports:
      • Listing today's or upcoming events.
      • Creating timed or all-day events.
      • Browser fallback for opening Google Calendar or event creation when OAuth is not configured.
    • Saved config fields:
      • googleCalendarClientId
      • googleCalendarClientSecret
      • googleCalendarRefreshToken
      • googleCalendarId
      • pluginCalendarEnabled
  • Notion Plugin

    • Added src/Plugins/notion.js.
    • Supports:
      • Creating Notion pages/notes.
      • Querying a Notion database.
      • Appending blocks to a Notion page.
    • Saved config fields:
      • notionApiKey
      • notionDatabaseId
      • notionPageId
      • notionTitleProperty
      • pluginNotionEnabled

CLI and Settings Improvements

  • mint startup now prints Active AI: provider • model.
  • CLI status bar updates to the provider/model that most recently answered.
  • Desktop chat displays provider/model metadata for AI responses.
  • Settings now includes Gmail and Notion plugin toggles.
  • mint list now includes mint gmail auth.
  • README.md now documents Gmail, Google Calendar, Notion, and provider/model visibility.

Provider and Config Fixes

  • localApiBaseUrl now defaults to an empty value instead of http://localhost:1234/v1.
  • ollamaHost now defaults to an empty value in settings/config so users can set it manually.
  • Placeholder keys such as your_openai_key_here are treated as unset before API calls.
  • Provider attempt order now skips configured providers that are not actually available.
  • Onboarding resets aiProvider back to Gemini when no optional AI provider is selected, preventing stale OpenAI/local selections.

New Tests

  • Added Gmail plugin tests.
  • Added Gmail OAuth helper tests.
  • Added Google Calendar plugin tests.
  • Added Notion plugin tests.
  • Updated provider routing tests for unavailable providers.

Current Test Status

  • 121 tests passed
  • 19 test suites passed

v1.5.0 - Unified Agent, Safety Layer & Architecture Hardening

Mint 1.5.0 is a major agent-readiness release. It turns the CLI into a true unified agent loop, adds a central safety manager, hardens dependency security, introduces CI, and refactors the Electron main process into focused modules.

Highlights

  • Unified CLI Agent: The default mint command now sends normal chat and coding requests through the same agent loop.
  • Thinking by Default: Every CLI message goes through an agent decision step before responding or using tools.
  • Central Safety Manager: New deterministic safety layer for shell commands, high-risk actions, path boundaries, and action logging.
  • Provider Fallback: Code Agent can fall back from local OpenAI-compatible providers to cloud providers such as Gemini.
  • Main Process Refactor: main.js was reduced to a bootstrap/wiring file and split into dedicated system modules.
  • Security Baseline: npm audit --audit-level=high now reports 0 vulnerabilities.
  • Expanded Tests: Test suite increased to 121 passing tests across the full v1.5.0 update line.

New Features

  • Unified Agentic CLI

    • mint now behaves as a single AI agent instead of separating normal chat and Code Mode by default.
    • Casual messages can finish directly in one step.
    • Coding or workspace tasks can inspect files, search code, run approved commands, apply patches, and verify results.
    • The CLI status reflects Agent/Chat mode while keeping one unified interaction flow.
  • Safety Manager

    • Added src/System/safety_manager.js.
    • Introduced permission tiers:
      • safe
      • approval
      • dangerous
      • blocked
    • Added deterministic command blocking for high-risk shell commands, including:
      • rm -rf
      • git reset --hard
      • git clean -f
      • mkfs
      • raw disk writes
      • shutdown
      • reboot
      • sudo
      • chmod -R 777
      • curl | sh
      • wget | bash
    • Added path traversal protection with resolveWithinRoot().
    • Added local action audit logging to:
      • ~/.config/mint/action-log.jsonl
  • Action Safety Integration

    • Integrated safety checks into:
      • Code Agent shell execution
      • Electron/system action executor
      • CLI action bridge
      • Autonomous brain file actions
    • Dangerous actions such as delete_file and destructive system_automation now require explicit permission.
  • Provider Fallback for Code Agent

    • Code Agent now builds a supported provider order.
    • If local_openai is configured but offline, the agent can fall back to another available provider such as Gemini.
    • Fallback logs are hidden by default and can be shown with MINT_DEBUG=1.
  • Internal Google TTS URL Generator

    • Removed vulnerable google-tts-api.
    • Added internal TTS URL generation in src/System/google_tts_urls.js.
    • Added tests for empty text, URL generation, and chunk splitting.
  • Safer Excel Parsing

    • Removed vulnerable xlsx.
    • Replaced spreadsheet reading with read-excel-file.
    • Knowledge base can still index .xlsx files across sheets.

Architecture Changes

  • Electron Main Process Split

    • main.js is now a small bootstrap file.
    • Added focused system modules:
      • src/System/window_manager.js
      • src/System/ipc_handlers.js
      • src/System/proactive_loop.js
      • src/System/screen_capture.js
      • src/System/action_executor.js
    • This reduces coupling between window creation, IPC handlers, proactive analysis, screen capture, and action execution.
  • Action Executor Consolidation

    • Shared action execution now lives in src/System/action_executor.js.
    • Electron and proactive action handling use the same executor path.
  • Improved Code Agent Flow

    • Conversational/trivial requests are now encouraged to finish directly without unnecessary workspace inspection.
    • Tool result progress no longer duplicates thought output.
    • Shell, patch, and write actions are logged when approved.

CI, Testing & Maintenance

  • GitHub Actions CI

    • Added .github/workflows/ci.yml.
    • CI now runs:
      • npm ci
      • npm test -- --runInBand
      • npm audit --audit-level=high
  • New Tests

    • Added safety manager tests for:
      • destructive command blocking
      • safe command classification
      • dangerous action classification
      • explicit permission enforcement
      • path traversal prevention
    • Added action executor safety tests for dangerous action blocking.
    • Added Google TTS URL generation tests.
  • Current Test Status

  • 121 tests passed

  • 19 test suites passed

Documentation

  • Rewrote README.md to document all major current features.
  • Added sections for:
    • Unified CLI Agent
    • Desktop Assistant
    • Automation
    • Knowledge and Memory
    • Multi-provider AI
    • Messaging Bridges and Plugins
    • MCP Extensions
    • Safety System
    • Project Structure
    • Runtime Notes

Security Notes

  • This release makes Mint safer by adding deterministic policy checks in code, not just prompt instructions.
  • Some system-level plugins and desktop automation paths can still be expanded further with deeper permission prompts and UI-level confirmation.
  • system_automation remains powerful and should be used carefully.

Migration Notes

  • If you used xlsx directly through Mint internals, it has been replaced with read-excel-file.
  • If you relied on google-tts-api, Mint now generates Google Translate TTS URLs internally.
  • Action logs may now appear under ~/.config/mint/action-log.jsonl.
  • Local OpenAI-compatible providers should be running before use; otherwise Mint can fall back to other configured providers.

Mint v1.4.2

13 May 03:45

Choose a tag to compare

Mint Release Notes

v1.4.2 - Web Search & Specialized Personas

Mint 1.4.2 introduces powerful information retrieval capabilities with integrated Web Search, smarter file discovery, and a suite of specialized agent personas with consistent "Mint" personality traits.

Highlights

  • Integrated Web Search: The agent can now search the internet to provide up-to-date information.
  • Specialized Personas: Six distinct agent personas (Default, Coder, Researcher, Creative, Manager, Reviewer) with a consistent "Mint" personality.
  • Smart Path Discovery: New find_path tool for finding files and folders by name or partial path.
  • Enhanced Thai Support: Refined personality and polite particles ("ค่ะ", "นะคะ") when communicating in Thai.
  • Deep Context Integration: Better chat history management for seamless multi-turn conversations.

New Features

  • Web Search Integration

    • Added web_search tool to code_agent.
    • Enables the agent to fetch real-time data from the web when it lacks local knowledge.
  • Persona-Driven Experts

    • Introduced the Agent Orchestrator with six specialized roles:
      • Mint Default: Friendly and versatile assistant.
      • Mint Coder: Technical expert focusing on best practices.
      • Mint Researcher: Analytical role focused on data and facts.
      • Mint Creative: Expressive partner for brainstorming.
      • Mint Manager: Efficiency-focused role for task planning.
      • Mint Reviewer: Senior critic for code and content quality.
  • Improved File Operations

    • New find_path utility to locate files and directories within the workspace.
    • Smarter path resolution for all file system actions.
  • Refined Agent Personality

    • Standardized "Mint" personality across all modules.
    • Added specific Thai language support to ensure polite and consistent responses in Thai.

Improvements & Fixes

  • CLI Stability

    • Improved CLI input handling and streaming performance.
    • Better reporting of tool execution in the terminal UI.
  • Router Improvements

    • Enhanced intent detection in chat_router to better distinguish between general chat and complex coding tasks.
    • Added more Thai keyword support for better localization.
  • Tool Execution

    • Hardened tool execution paths and improved error reporting when tools fail.
    • Better handling of large tool outputs with truncation logic.

Documentation & Maintenance

  • Major overhaul of README.md to reflect new capabilities and architecture.
  • Updated BUILD_AND_RELEASE.md with refined release procedures.
  • Cleaned up dependency list in package.json.

Testing

  • Added tests for findPath and webSearch helpers.
  • Verified persona switching and personality consistency.
  • Current test status:
    • 85 tests passed

v1.4.1 - CLI Agent Hardening & Stability

Mint 1.4.1 focuses on making the CLI and coding agent behave more like a real agent, while tightening several unsafe execution paths and improving reliability across provider selection, workspace handling, and action execution.

Highlights

  • CLI one-shot chat now executes returned actions, not just text responses
  • Code Mode now uses only supported coding providers instead of silently falling through
  • Agent loop is more resilient when a model returns malformed JSON
  • Workspace detection is safer and no longer matches sibling paths by prefix
  • Multiple shell execution paths were hardened to reduce command injection risk

CLI & Agent Improvements

  • One-shot CLI action execution

    • mint chat <message> and equivalent one-shot paths now execute structured actions the same way as interactive chat.
    • This fixes cases where Mint would say it was opening or searching for something but would not actually perform the action.
  • Better Code Mode provider routing

    • Code Mode now selects from providers that are actually supported by the coding workflow:
      • gemini
      • anthropic
      • openai
      • local_openai
    • Unsupported coding providers such as ollama or huggingface no longer appear to be active while silently falling back elsewhere.
  • More robust agent loop

    • Code Mode now attempts JSON repair when a provider returns malformed structured output.
    • Instead of failing immediately on the first invalid JSON response, Mint asks the model to reformat the reply into valid JSON and retries.
  • Accurate step reporting

    • Code Mode now reports the actual number of executed steps instead of always showing the maximum configured step count.

Security & Safety Fixes

  • Hardened URL and file opening paths

    • Replaced shell-string execution with argument-based process execution in browser and file action handlers.
  • Hardened app launching

    • open_app no longer builds launcher commands through shell interpolation for common launch paths.
  • Hardened Docker plugin

    • Docker actions now use argument-based execution instead of shell-string concatenation.
  • Safer workflow process matching

    • Custom workflow process-name matching now escapes regex characters before building a matcher.

Workspace & Config Fixes

  • Workspace path matching fixed

    • Workspace detection no longer treats sibling folders with the same prefix as the same project.
    • Example: /project no longer incorrectly matches /project-two
  • Workspace test isolation

    • Workspace storage can now be redirected for tests through an override path, making tests more reliable in restricted environments.
  • Proactive cooldown config consistency

    • Proactive suggestion cooldown now reads from the same config source as the rest of the app.
  • Provider fallback logic improved

    • Non-Gemini providers are no longer blocked by a missing Gemini API key before routing even begins.

Documentation

  • Rewrote the README to better reflect Mint’s current state as a desktop assistant plus CLI coding agent
  • Clarified current agent capabilities, supported workflows, and provider behavior

Testing

  • Expanded regression coverage for:

    • Docker plugin execution
    • Provider routing helpers
    • Code agent helper behavior
    • Workspace path boundary handling
  • Current test status:

    • 77 tests passed

Notes

Mint 1.4.1 is not a major feature release. It is a stabilization release aimed at making existing agentic workflows safer, more honest about what provider is actually being used, and more reliable in day-to-day CLI usage.

Mint v1.4.1

11 May 11:03

Choose a tag to compare

Mint Release Notes

v1.4.1 - CLI Agent Hardening & Stability

Mint 1.4.1 focuses on making the CLI and coding agent behave more like a real agent, while tightening several unsafe execution paths and improving reliability across provider selection, workspace handling, and action execution.

Highlights

  • CLI one-shot chat now executes returned actions, not just text responses
  • Code Mode now uses only supported coding providers instead of silently falling through
  • Agent loop is more resilient when a model returns malformed JSON
  • Workspace detection is safer and no longer matches sibling paths by prefix
  • Multiple shell execution paths were hardened to reduce command injection risk

CLI & Agent Improvements

  • One-shot CLI action execution

    • mint chat <message> and equivalent one-shot paths now execute structured actions the same way as interactive chat.
    • This fixes cases where Mint would say it was opening or searching for something but would not actually perform the action.
  • Better Code Mode provider routing

    • Code Mode now selects from providers that are actually supported by the coding workflow:
      • gemini
      • anthropic
      • openai
      • local_openai
    • Unsupported coding providers such as ollama or huggingface no longer appear to be active while silently falling back elsewhere.
  • More robust agent loop

    • Code Mode now attempts JSON repair when a provider returns malformed structured output.
    • Instead of failing immediately on the first invalid JSON response, Mint asks the model to reformat the reply into valid JSON and retries.
  • Accurate step reporting

    • Code Mode now reports the actual number of executed steps instead of always showing the maximum configured step count.

Security & Safety Fixes

  • Hardened URL and file opening paths

    • Replaced shell-string execution with argument-based process execution in browser and file action handlers.
  • Hardened app launching

    • open_app no longer builds launcher commands through shell interpolation for common launch paths.
  • Hardened Docker plugin

    • Docker actions now use argument-based execution instead of shell-string concatenation.
  • Safer workflow process matching

    • Custom workflow process-name matching now escapes regex characters before building a matcher.

Workspace & Config Fixes

  • Workspace path matching fixed

    • Workspace detection no longer treats sibling folders with the same prefix as the same project.
    • Example: /project no longer incorrectly matches /project-two
  • Workspace test isolation

    • Workspace storage can now be redirected for tests through an override path, making tests more reliable in restricted environments.
  • Proactive cooldown config consistency

    • Proactive suggestion cooldown now reads from the same config source as the rest of the app.
  • Provider fallback logic improved

    • Non-Gemini providers are no longer blocked by a missing Gemini API key before routing even begins.

Documentation

  • Rewrote the README to better reflect Mint’s current state as a desktop assistant plus CLI coding agent
  • Clarified current agent capabilities, supported workflows, and provider behavior

Testing

  • Expanded regression coverage for:

    • Docker plugin execution
    • Provider routing helpers
    • Code agent helper behavior
    • Workspace path boundary handling
  • Current test status:

    • 77 tests passed

Notes

Mint 1.4.1 is not a major feature release. It is a stabilization release aimed at making existing agentic workflows safer, more honest about what provider is actually being used, and more reliable in day-to-day CLI usage.

Mint v1.4.0

08 May 06:44

Choose a tag to compare

Mint Release Notes

v1.4.0 - The "Intelligence & Collaboration" Update

Mint 1.4.0 is the most significant release to date — Mint is now project-aware, persona-driven, and context-sensitive. With persistent memory, real-time streaming, and a full suite of system tools, Mint has evolved from a simple chat interface into a true autonomous assistant.

✨ New Features

  • ⚡ Streaming Responses (Gemini):

    • Real-time interaction! Messages now appear word-by-word as they are generated, rather than waiting for the full response.
    • Uses Gemini SDK's sendMessageStream() with progressive JSON buffer extraction.
  • 🧠 Long-Term Memory & Caching:

    • Mint now remembers you across sessions via a local SQLite store.
    • Personalization: Tracks your language preferences, active projects, and common interaction patterns to inject relevant context into every prompt.
    • Response Caching: Instant answers for repeated queries! Saves API quota and reduces latency by caching common AI responses.
  • 🤖 Multi-Agent Orchestrator:

    • Persona Switching: Switch between specialized agents like Coder, Researcher, Creative, Manager, and Reviewer using the /agent <type> command.
    • Review Mode: Use /review to trigger a second-pass critique of any AI response by the specialized Reviewer agent.
  • 📂 Workspace Management:

    • Register your project directories with /workspace add <name> [path] [instructions].
    • Mint automatically detects when you are working inside a registered workspace and applies project-specific instructions to the AI context.
  • 📊 System Monitor & Notifications:

    • Stats: Use /stats to view real-time CPU load, Memory usage, and Disk space.
    • OS Notifications: Receive system alerts when autonomous tasks finish or when Mint proposes a bash command, keeping you informed even when the terminal is in the background.
  • 🎵 Spotify Plugin (Complete Edition):

    • Full control via playerctl (no OAuth required):
    • Playback: play, pause, stop, next, previous.
    • Now Playing: View current track, artist, and album status.
    • Volume & Shuffle: Fine-grained control over audio levels and playback modes.
    • Search: Quick browser-based search integration.

🛠️ Improvements & Refactoring

  • Smarter API Key Detection: Automatically detects and skips placeholder API keys (e.g., "your_key_here") to prevent unauthorized errors.
  • Unified System Prompt: Refactored buildSystemPrompt() to centralize MCP tools, plugin descriptions, and workspace context across all AI providers.
  • Smart Routing Priority: Code tasks now prioritize your configured aiProvider while gracefully falling back to the best available model.

🧪 Testing & Stability

  • Robust Test Suite (69 tests passed):
    • Full coverage for config_manager, memory_store, workspace_manager, agent_orchestrator, system_monitor, and spotify plugins.
    • Implemented strict test isolation with temporary databases and configurations to protect production data.

v1.3.0 - The "Agent & Plugin Power-Up" Update

Mint 1.3.0 introduced the foundation for multi-agent capabilities and a more flexible plugin architecture.

✨ New Features

  • Agent Framework: Initial support for switching between different AI specializations.
  • Plugin System 2.0: Dynamic loading/unloading of plugins without restarting the CLI.
  • Contextual Help: Introduced /help command with situation-aware suggestions.

🛠️ Improvements & Bug Fixes

  • Performance Boost: Optimized CLI responsiveness and reduced memory footprint.
  • Better Error Handling: Improved user-facing error messages with actionable fixes.

v1.2.4 - The "Smart Path & Dynamic Version" Update

Focused on path resolution intelligence and consistent versioning.

✨ New Features

  • Smart Path Resolution: Automatic Home-directory correction and common folder searching.
  • Dynamic Versioning: CLI versioning is now synchronized directly with package.json.

v1.2.3 - The "Smart TUI" Update

Focused on the terminal user interface (TUI) polish and system awareness.

✨ New Features

  • System Awareness: Added reporting for OS, Kernel, and Architecture.
  • Enhanced TUI Layout: Bubble-Lite message style and smart text wrapping for Thai/English.
  • Mouse Support: Added scroll wheel support for chat history.

🛠️ Improvements & Bug Fixes

  • Terminal Cleanup: Fixed "garbage" character artifacts on exit.
  • Slash Command Aliases: Added /model as an alias for /models.

Mint v1.3.0

29 Apr 07:44

Choose a tag to compare

📝 Release Notes

v1.3.0 - The "Agent & Plugin Power-Up" Update

Mint 1.3.0 brings elevated Agent and Plugin systems, making them smarter and more flexible. It comes packed with new features that make using Mint more enjoyable and powerful than ever!

✨ New Features

  • Agent Framework:
    • Supports creating and switching between multiple Agents in the CLI (e.g., code agent, browser agent, knowledge agent).
    • Added the /agent command to manage agents and view their current status.
  • Plugin System 2.0:
    • Improved the plugin system to allow dynamic loading and disabling on the fly—no restart required.
    • Added the /plugins command to view and manage plugins.
  • Contextual Help:
    • Added an automatic context-aware help system that recommends relevant commands and plugins based on the current situation.
  • Thai Language UX:
    • Improved Thai language support across the UI and response messages.

🛠️ Improvements & Bug Fixes

  • Performance Boost: Improved CLI response speed and reduced memory consumption.
  • Better Error Handling: Clearer, easier-to-understand error notifications along with suggested solutions.
  • Config Hot Reload: Changes to mint-config.json can now be reloaded instantly without closing the program.
  • Security: Updated dependencies and added security validations for plugins.