{"repo": "amidabuddha/console-chat-gpt", "files": {"README.md": {"1bf3d4a958656693d98c67df6d4546813d0b6ae8": {"t": 1785746365.6528757, "n": 13292, "h": "65c502cd4fee79fe", "c": "> **Deprecated / successor:** For new installs, use\n> [tellm](https://github.com/amidabuddha/tellm) instead. It is a small Rust\n> Telegram assistant for Claude, GPT/Grok, Gemini, compatible endpoints, and\n> local Ollama, with per-room model selection and keychain-backed secrets.\n\n
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot, including Bot API 10.1 rich message formatting when available. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the terminal client. Telegram mode always sends completed replies. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Pairing mode activates when this list is empty and no model room mappings (`telegram_chat_id`/`telegram_chat_ids`) are configured: the bot prints a one-time code in its terminal, and the chat that sends `/pair ` is claimed and saved here; all other chats are denied. The code rotates every 10 minutes and repeated wrong attempts lock the offending chat out temporarily. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nTelegram replies are sent through `sendRichMessage` when the Bot API supports it, so model Markdown can render as rich headings, lists, tables, quotes, formulas, details blocks, and similar structured output. If rich message delivery is unavailable or Telegram rejects a malformed rich block, the bot falls back to the classic `sendMessage` path.\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "dbab51180bd4c2747fbec03edbd91ee0be44e104": {"t": 1785762682.1144834, "n": 13292, "h": "65c502cd4fee79fe", "c": "> **Deprecated / successor:** For new installs, use\n> [tellm](https://github.com/amidabuddha/tellm) instead. It is a small Rust\n> Telegram assistant for Claude, GPT/Grok, Gemini, compatible endpoints, and\n> local Ollama, with per-room model selection and keychain-backed secrets.\n\n
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot, including Bot API 10.1 rich message formatting when available. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the terminal client. Telegram mode always sends completed replies. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Pairing mode activates when this list is empty and no model room mappings (`telegram_chat_id`/`telegram_chat_ids`) are configured: the bot prints a one-time code in its terminal, and the chat that sends `/pair ` is claimed and saved here; all other chats are denied. The code rotates every 10 minutes and repeated wrong attempts lock the offending chat out temporarily. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nTelegram replies are sent through `sendRichMessage` when the Bot API supports it, so model Markdown can render as rich headings, lists, tables, quotes, formulas, details blocks, and similar structured output. If rich message delivery is unavailable or Telegram rejects a malformed rich block, the bot falls back to the classic `sendMessage` path.\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "a9e560d7c3f2c2aa34ed556460e5ae0a3d3a070e": {"t": 1785762684.7077262, "n": 13011, "h": "ae44779337ba0107", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot, including Bot API 10.1 rich message formatting when available. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the terminal client. Telegram mode always sends completed replies. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Pairing mode activates when this list is empty and no model room mappings (`telegram_chat_id`/`telegram_chat_ids`) are configured: the bot prints a one-time code in its terminal, and the chat that sends `/pair ` is claimed and saved here; all other chats are denied. The code rotates every 10 minutes and repeated wrong attempts lock the offending chat out temporarily. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nTelegram replies are sent through `sendRichMessage` when the Bot API supports it, so model Markdown can render as rich headings, lists, tables, quotes, formulas, details blocks, and similar structured output. If rich message delivery is unavailable or Telegram rejects a malformed rich block, the bot falls back to the classic `sendMessage` path.\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "0211931e6860eabdf807720ffefafb8b7608dce5": {"t": 1785762685.9669979, "n": 12743, "h": "e80c98c2863c86bf", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot, including Bot API 10.1 rich message formatting when available. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the terminal client. Telegram mode always sends completed replies. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to auto-pair with the first chat that messages the bot; all other chats are denied once paired. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nTelegram replies are sent through `sendRichMessage` when the Bot API supports it, so model Markdown can render as rich headings, lists, tables, quotes, formulas, details blocks, and similar structured output. If rich message delivery is unavailable or Telegram rejects a malformed rich block, the bot falls back to the classic `sendMessage` path.\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "a0e83670dcfd1a22ffb8496377d1d3e6dded573f": {"t": 1785762691.760376, "n": 12667, "h": "2b4d59beebd1fdfa", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot, including Bot API 10.1 rich message formatting when available. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the terminal client. Telegram mode always sends completed replies. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nTelegram replies are sent through `sendRichMessage` when the Bot API supports it, so model Markdown can render as rich headings, lists, tables, quotes, formulas, details blocks, and similar structured output. If rich message delivery is unavailable or Telegram rejects a malformed rich block, the bot falls back to the classic `sendMessage` path.\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "894b9c105bc4e1ea0b370b8f45318c857a37a040": {"t": 1785762694.1492772, "n": 12946, "h": "e776fd133ba40eb1", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot, including Bot API 10.1 rich message formatting when available. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the terminal client. In Telegram mode, private chats receive ephemeral draft previews while the final reply is still sent as a persisted rich message. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nTelegram replies are sent through `sendRichMessage` when the Bot API supports it, so model Markdown can render as rich headings, lists, tables, quotes, formulas, details blocks, and similar structured output. If rich message delivery is unavailable or Telegram rejects a malformed rich block, the bot falls back to the classic `sendMessage` path. When `chat.features.streaming` is enabled, private Telegram chats also receive ephemeral `sendRichMessageDraft` previews during generation; group chats keep the non-streaming final-message flow.\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "514f7769358c7d6ba9cd57cf9da0b5a010b7ff36": {"t": 1785762696.3399296, "n": 12201, "h": "9b255c0f78380159", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "24782f9e5d00c629c2b1c590ae5ded2a3d9f8dd7": {"t": 1785762697.9663467, "n": 12380, "h": "78a4ae1cc1e7e19d", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n Additionally third party libraries may be fercefully updated if necessary:\n ```\n python3 -m pip install --upgrade --force-reinstall --upgrade-strategy eager unichat\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n| max_concurrent_updates | Maximum number of Telegram updates processed in parallel. Default is **8** when omitted. Different chats run concurrently, while each chat remains strictly ordered and isolated. |\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "eb092e294568568446a1d8ada728a840a908b3be": {"t": 1785762699.2752426, "n": 12173, "h": "8f86bf956750d82d", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n Additionally third party libraries may be fercefully updated if necessary:\n ```\n python3 -m pip install --upgrade --force-reinstall --upgrade-strategy eager unichat\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n\nPer-model Telegram room mapping is also supported inside each model block via:\n- `telegram_chat_id = `\n- `telegram_chat_ids = [, ]`\n\nWhen a chat room is mapped to a model, that room is pinned to this model (model switching commands are disabled there), while all other commands (`/mode`, `/role`, `/reasoning`, `/websearch`, `/webfetch`, etc.) remain available.\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "8b8b2027c276f8dbcda7df083309653cfb11e759": {"t": 1785762700.9668195, "n": 11600, "h": "cc18a179f4f42391", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n| debug_context | If **true**, prints Telegram session/memory debug snapshots to terminal logs for troubleshooting context issues. |\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "dc9db97027cdd1e91a84549cbe382fdabd6a0ea2": {"t": 1785762702.7230127, "n": 11467, "h": "59451fbda80982b1", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :star: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :star:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "72adb566c3bf1bfacd321807c8dde34cbb3cda07": {"t": 1785762703.9181056, "n": 11465, "h": "ee7e23af52b02a4e", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Support conversations via a Telegram bot. How to create one: [From BotFather to 'Hello World'](https://core.telegram.org/bots/tutorial) :new:\n- :new: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :new:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.telegram] | Enable Telegram UI for cnversations. |\n|-|-|\n| enabled | If set to **true**, starts Telegram bot polling loop instead of the terminal chat UI. |\n| bot_token | Telegram bot token from BotFather, in the format `:`. |\n| allowed_chat_ids | List of chat IDs allowed to use the bot. Leave empty to allow all chats. |\n| admin_chat_ids | List of chat IDs allowed to run admin-only commands such as `/shutdown`. |\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "b413b52315fe55e2cd51bd6cee612dcd5d3937d5": {"t": 1785762705.112049, "n": 10874, "h": "7808265da4f135e9", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :new:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance personalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file.\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "67a3d1f043ab863bfe2cad565eddfc5970ce40fb": {"t": 1785762706.9136243, "n": 10882, "h": "29f34c2cfefef617", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, or any other OpenAI SDK compatible LLM providers (such as **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter**, etc.) or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, nor any other LLM lab or related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, any other LLM lab or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :new:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), or the relevant platform, depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n### Adding your OpenAI SDK supported model\nAdd an entry at the end of your `config.toml` file\nUse the following example structure:\n```toml\n[chat.models.{{model name that makes sense to you}}]\napi_key = \"YOUR_API_KEY\"\nbase_url = {{the custom base URL, for example \"https://api.deepseek.com/v1\"}}\nmodel_input_pricing_per_1k = 0.015 (currently the price is not calculated but you may adjust this for your reference)\nmodel_max_tokens = 32000 (the suported context window of the selected model)\nmodel_name = {{model name exactly as specified in the relevant API reference, for example \"deepseek-reasoner\"}}\nmodel_output_pricing_per_1k = 0.075 (currently the price is not calculated but you may adjust this for your reference)\nreasoning_effort = (the desired value if supported, such as \"medium\", otherwise false)\n```\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "fdcc64c41a392697aa0d1070ddf755c56b31ffcc": {"t": 1785762709.7400072, "n": 10361, "h": "b96695f13a02603f", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI**, **OpenRouter** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, Moonshot AI, OpenRouter or any other related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception, Moonshot AI, OpenRouter or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :new:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys), [Moonshot AI](https://platform.moonshot.ai/console/api-keys), [OpenRouter](https://openrouter.ai/settings/keys), depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "0056a9c66c6a0231cc39373576eca2e95e3a2127": {"t": 1785762713.7826517, "n": 10269, "h": "d7b2409a431662bb", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, Moonshot AI or any other related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception, Moonshot AI or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI image generation via Responses API**](https://platform.openai.com/docs/guides/image-generation?image-generation-model=gpt-image-1). :new:\n- :star: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :star:\n- :star: Run any OpenAI SDK compatible - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :star:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys), [Moonshot AI](https://platform.moonshot.ai/console/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "41ab109bffa1d48a24f2c11d4926a63ffa284f44": {"t": 1785762714.9738457, "n": 10114, "h": "820fb02a8b4d085b", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception**, **Moonshot AI** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, Moonshot AI or any other related parties. There is no affiliation or relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception, Moonshot AI or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys), [Moonshot AI](https://platform.moonshot.ai/console/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "907a7b889678f4fd245977a8e5862dbe02ae2941": {"t": 1785762716.5311933, "n": 10016, "h": "98c480247253ff8c", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "fbf5d26be431016fb8af53b7ff0a80799f82239d": {"t": 1785762720.96285, "n": 10016, "h": "7a222de4c4d9caed", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. May be set for each new chat session if `adjust_temperature` in [chat.features] is **true**. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. May be set for each new chat session if `model_selector` in [chat.features] is **true**. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. May be set for each new chat session if `role_selector` in [chat.features] is **true**. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. When **true** the temperature value may be modified at the beginning of each new chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. When **true** this list may be modified at the beginning of each new chat session.|\n| save_chat_on_exit | When **true** automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | When **true** offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. This is targeted at new users and may be disabled by setting to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to **true**, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "75ee4253bc0d0ed1d660c1da5765ca10f366f37e": {"t": 1785762724.6746395, "n": 9565, "h": "85d2efab483f0f8f", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n### Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. The list may be modified from within a chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. The list may be modified from within a chat session. |\n| save_chat_on_exit | Automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | Offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. Thsi is targeted at new users and may be disabled by setting this to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to true, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "9f2d754e5c3be693601b62df3240c107a96fdf06": {"t": 1785762726.0755653, "n": 9564, "h": "22c771bfb5b289d1", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. The list may be modified from within a chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. The list may be modified from within a chat session. |\n| save_chat_on_exit | Automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | Offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. Thsi is targeted at new users and may be disabled by setting this to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Enable **AI Managed mode** to allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to true, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "1d7941dc271a331ac1f6d39f92133d384961d19c": {"t": 1785762727.3438725, "n": 9534, "h": "8e3cc25d19c4acb7", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. The list may be modified from within a chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. The list may be modified from within a chat session. |\n| save_chat_on_exit | Automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | Offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. Thsi is targeted at new users and may be disabled by setting this to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to true, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI Managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt | When **AI Managed mode** is used frequently the Y/N prompt may be disabled by changing this to **false**. |\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "76a0b2fb62021cc116bee1ba9ba72d65163bd5a4": {"t": 1785762732.7552097, "n": 9428, "h": "40928c91ddf5a787", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.roles] section. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. The list may be modified from within a chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. The list may be modified from within a chat session. |\n| save_chat_on_exit | Automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | Offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. Thsi is targeted at new users and may be disabled by setting this to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to true, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt |-|\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "6f988de9a17b52f5f6a7efe8a7e56605f06dd331": {"t": 1785762736.2578397, "n": 9427, "h": "97f41fa0a8d9ca03", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Configurable Options in `config.toml`\n\n| [chat.defaults] | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in [chat.role] section. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the [chat.models] section, with relevant parameters. |\n\n| [chat.features] | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. The list may be modified from within a chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. The list may be modified from within a chat session. |\n| save_chat_on_exit | Automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | Offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `help` are printed upon chat initialization. Thsi is targeted at new users and may be disabled by setting this to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to true, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| [chat.managed] | Settings dedicated to the AI managed mode. *Not available to be edited from within a chat session*. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the [chat.models] section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the [chat.models] section, with relevant parameters. |\n| prompt |-|\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "d27841e9159546eb754a60bc8ad5a07b06e747f4": {"t": 1785762737.6829903, "n": 9370, "h": "7826b2c5b11de890", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama**-hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Alibaba, Inception, or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Configurable Options in `config.toml`\n\n| chat.defaults | Main properties to generate a chat completion/response. |\n|-|-|\n| temperature | What sampling temperature to use, between 0 and 2. Higher values like 0.8 will make the output more random, while lower values like 0.2 more focused. |\n| system_role | A system (or developer) message inserted into the model's context. Should be one of the listed in chat.role section. |\n| model | Model ID used to generate the chat completion/response, like gpt-4o or o3. Should be listed in the chat.models section, with relevant parameters. |\n\n| chat.features | Configurable options of the chat application. Some are accessible from within a chat session via the `settings` command.|\n|-|-|\n| model_selector | A selection list of models available in section [chat.models] of `config.toml`. The list may be modified from within a chat session. |\n| adjust_temperature | Prompt to change the temperature for each chat session. |\n| role_selector | A selection list of roles available in section [chat.roles] of `config.toml`. The list may be modified from within a chat session. |\n| save_chat_on_exit | Automatically save the chat session upon using the `exit` command in chat.|\n| continue_chat | Offers a list of previously saved chat sessions to be continued in a new session. The list may be modified from within a chat session via the `chats` command.|\n| ~~debug~~ | Application logging - not yet implemented. |\n| disable_intro_help_message | All chat commands available in `settings` are printed upon chat initialization. May be disabled by setting this to **false**. |\n| assistant_mode | Enable **Open AI Assistants API** as an available selection upon chat initialization. |\n| ai_managed | Allow a model to automatically select the best model according to your prompt. Detailed settings below. |\n| streaming | If set to true, the model response data will be streamed to the client. |\n| mcp_client | Setting to **false** will prevent the default initialization of MCP servers for each chat if not needed. |\n\n| chat.managed | Settings dedicated to the AI managed mode. Not available to edit from within a chat session. |\n|-|-|\n| assistant | The preferred model that will evaluate your prompt and select the best available model out of the four configured below to handle it. Should be listed in the chat.models section, with relevant parameters. |\n| assistant_role | Custom instruction to the evaluation model. *Change this only if you know exactly what you are doing!* |\n| assistant_generalist | Your preferred general purpose model, typically the one you use the most for any type of queries. Should be listed in the chat.models section, with relevant parameters. |\n| assistant_fast | When speed is preferred to accuracy. Should be listed in the chat.models section, with relevant parameters. |\n| assistant_thinker | A reasoning model for complex tasks. Should be listed in the chat.models section, with relevant parameters. |\n| assistant_coder | Your preferred model to handle Coding and Math questions. Should be listed in the chat.models section, with relevant parameters. |\n| prompt |-|\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "beacb22741daecd08f90a95214a07b337f47801f": {"t": 1785762738.9933486, "n": 6278, "h": "bb7848a879ce523a", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama** hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Aliababa, Inception or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models to be already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use. Prompt for each chat may be disabled in config.toml\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "f5136d567a39d44dc58331a02396aaca88478bb8": {"t": 1785762740.6540074, "n": 6226, "h": "58bcc9889849bd7e", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama** hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Aliababa, Inception or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: [**OpenAI Responses API**](https://platform.openai.com/docs/api-reference/responses) supported. :new:\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models to be already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "dfa170054a781aec8e6aabbf6e2d24b30df847e2": {"t": 1785762755.141807, "n": 6116, "h": "52836c7a860436d9", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama** hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Aliababa, Inception or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Run any OpenAI SDK compatible model - just add the model structure with the relevant `model_name` and `base_url` to the `config.toml` file. :new:\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models to be already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "6828df14ccb9ba2aacc2fb11bbb3769f34b344fd": {"t": 1785762758.3385508, "n": 5962, "h": "6a32328388e5b6ef", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba**, **Inception** or **Ollama** hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Aliababa, Inception or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba, Inception or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :star: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models to be already downloaded_ :star:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key), [Inception](https://platform.inceptionlabs.ai/dashboard/api-keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "5322390ab58b17aaefeb7065996807081d81e091": {"t": 1785762769.975333, "n": 5856, "h": "882c1c22971a1dc0", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek**, **Alibaba** or **Ollama** hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek, Aliababa or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek, Alibaba or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models to be already downloaded_ :new:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeeepSeek](https://platform.deepseek.com/api_keys), [Alibaba](https://bailian.console.alibabacloud.com/?apiKey=1#/api-key) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}, "c41655a0c2804ce07fdb8a53233e9188895e8135": {"t": 1785762772.173408, "n": 5752, "h": "333b607149841e39", "c": "
\n\n

\n\nconsole-chat-gpt v6\n\n

\n\n**Your Ultimate CLI Companion for Chatting with AI Models**\n\n_Enjoy seamless interactions with **OpenAI**, **MistralAI**, **Anthropic**, **xAI**, **Google AI**, **DeepSeek** or **Ollama** hosted models directly from your command line.
Elevate your chat experience with efficiency and ease._\n\n

\n\n[Homepage](https://github.com/amidabuddha/consoleChatGPT) | [Examples](/examples)\n\n

\n\n

\n \n \"Released\n \n \"Working\n \n \n \n \n

\n\n
\n\n---\n\n# Table of Contents\n\n- [Features](#features)\n- [Installation and Usage](#installation-and-usage)\n- [Examples](#examples)\n- [Contributing](#contributing)\n\n---\n\n**DISCLAIMER:**\nThe intention and implementation of this code are entirely unconnected and unrelated to OpenAI, MistralAI, Anthropic, xAI, Google AI, DeepSeek or any other related parties. There is no affiliation\nor relationship with OpenAI, MistralAI, Anthropic, xAI, Google, DeepSeek or their subsidiaries in any form.\n\n---\n\n## Features\n\n- :new: Run [**Ollama**](https://ollama.com) hosted models locally. _Ollama should be installed and the selected models to be already downloaded_ :new:\n- :star: [**Anthropic Prompt caching**](https://docs.anthropic.com/en/docs/build-with-claude/prompt-caching) Fully supported :star:\n- :star: [Model Context Protocol (MCP)](https://modelcontextprotocol.io) supported! If you are already using MCP servers just copy your `claude_desktop_config.json` to the root directory and rename to `mcp_config.json` to start using with any model! :star:\n- Unified chat completion function separated as independent library to be used in any application for seamless cross-provider API experience. The source code is available in [Python](https://github.com/amidabuddha/unichat) and [TypeScript](https://github.com/amidabuddha/unichat-ts)\n- Streaming with all supported models, disabled by default, may be enabled in `settings` menu\n- [**OpenAI Assistants Beta**](https://platform.openai.com/docs/assistants/overview) fully supported\n- **AI Managed mode** Based on the complexity of the task, automatically determines which model to use.\n- **Configuration File**: Easily customize the app's settings through the `config.toml` file for complete control over\n how the app works. Also supported in-app via the `settings` command.\n- **Role selection**: Users can define the role of the AI in the conversation, allowing for a more personalized and\n interactive experience.\n- **Temperature Control**: Adjust the temperature of generated responses to control creativity and randomness in the\n conversation.\n- **Command Handling**: The app responds to various commands entered by the user for easy and intuitive interaction.\n- **Image input**: with selected models.\n- **Error Handling**: Clear and helpful error messages to easily understand and resolve any issues.\n- **Conversation History**: Review previous interactions and save conversations for future reference, providing context\n and continuity.\n- **Graceful Exit**: Smoothly handle interruptions, ensuring conversations are saved before exiting to avoid loss of\n progress.\n- **A nice team**: Actively adding features, open for ideas and fixing bugs.\n\nOverall, this app focuses on providing a user-friendly and customizable experience with features that enhance\npersonalization, control, and convenience.\n\n---\n\n## Installation and Usage\n\n> The script works fine on Linux and MacOS terminals. For Windows it's recommended to use [WSL](https://learn.microsoft.com/en-us/windows/wsl/).\n\n1. Clone the repository:\n\n ```shell\n git clone https://github.com/amidabuddha/console-chat-gpt.git\n ```\n\n2. Go inside the folder:\n\n ```shell\n cd console-chat-gpt\n ```\n\n3. Install the necessary dependencies:\n\n ```shell\n python3 -m pip install -r requirements.txt\n ```\n\n4. Get your API key from [OpenAI](https://platform.openai.com/account/api-keys), [MistralAI](https://console.mistral.ai/user/api-keys/), [Anthropic](https://console.anthropic.com/settings/keys), [xAI](https://console.x.ai/), [Google AI Studio](https://aistudio.google.com/apikey), [DeeepSeek](https://platform.deepseek.com/api_keys) depending on your selected LLM.\n\n5. The `config.toml.sample` will be automatically copied into `config.toml` upon first run, with a prompt to enter your API key/s. Feel free to change any of the other defaults that are not available in the `settings` in-app menu as per your needs.\n\n6. Run the executable:\n\n ```shell\n python3 main.py\n ```\n\n > Pro-tip:\n > Create an alias for the executable to run from anywhere.\n\n7. Use the `help` command within the chat to check the available options.\n\n8. Enjoy\n\n---\n\n## Examples\n\n- Prompt example:\n\n ![example_python](examples/python_for_loop.gif)\n\n- Markdown visualization example:\n\n ![example_markdown](examples/markdown_preview.gif)\n\n- Settings and help:\n\n ![example_settings](examples/settings_preview.gif)\n\n> You can find more examples on our [Examples page](EXAMPLES.md).\n\n---\n\n## Contributing\n\nContributions are welcome! If you find any bugs, have feature requests, or want to contribute improvements, please open an issue or submit a pull request.\n"}}}}