Welcome to the 7 July 2025 release of Gptcmd! This release introduces new automation and data management features, including a macro system, message-level metadata, and support for audio attachments.
Important notes
Python 3.7 support has been removed
Gptcmd now requires Python 3.8.6 or later.
New features
- Gptcmd now supports user-defined command macros, making it easier and more efficient to enter complex or frequently-used commands.
- Macros are defined in the
[macros]
table of the Gptcmd configuration file. Each key in[macros]
creates a custom command; each value lists the underlying commands to run, one per line. - Positional arguments (
{1}
,{2}
,{*}
), default parameters ({1?default}
), and built-in variables ({account}
,{model}
,{thread}
) are supported. - For more information on the macro format, consult Gptcmd's default configuration.
- Macros are defined in the
- Messages can now store arbitrary key–value metadata. Use the
meta
andunmeta
commands to add, view, or remove metadata on any message. This is useful for keeping personal notes or for interacting with third-partyLLMProvider
s that make special parameters available. - Gptcmd now supports audio: the
audio
command allows local or remote audio files to be attached to messages, similar to the existingimage
command.- Audio requires support from the active
LLMProvider
: OpenAI (via an audio-specific model) and Gemini (when configured as an "OpenAI-like" provider) are known to work.
- Audio requires support from the active
- A
grep
command has been added to search the active thread using regular expressions. This is especially useful if you forget the index of a message and want to find it again!
Changes
- Gptcmd now loads non-default accounts on demand, improving start-up time for users with many configured accounts.
- Cost estimation has been updated for the
o3
model family and added for thegpt-4o-audio-preview
model.
Bug fixes
- Crash dumps should now be saved in a broader range of exceptional situations, improving data recovery.