OpenAI & Ollama compatible API powered by Codex
Python
1,557
100 commits
updated Sep 1, 2026
brew tap RayBytes/chatmock
brew install chatmock
pipx install chatmock
Download from releases (macOS & Windows)
See DOCKER.md
# 1. Sign in with your ChatGPT account
# If you are running this on a headless server, append --headless
chatmock login
# 2. Start the server
chatmock serve
The server runs at http://127.0.0.1:8000 by default. Use http://127.0.0.1:8000/v1 as your base URL for OpenAI-compatible apps.
Configure the Host URL
Open your Raycast Extensions preferences, navigate to the Ollama settings section, and input the host URL (default is 127.0.0.1:8000).
Sync Your Models
Click the Sync Models button, which will register all available models.
Start Chatting
Open the Raycast AI Chat interface. You will now see model slugs which you can chat with.
Configure the provider settings
Open your Terax settings, and switch to the Models tab, add a new provider (OpenAI Compatible), and input the host URL (default is http://127.0.0.1:8000/v1), along with the model IDs you wish to use (API key may be anything).
Favourite, and start using it!
Go back to your main chat window, select the model by going to the OpenAI Compatible icon, and clicking the model there (you may favourite it here to quickly select it the next time if you switch between models)
ChatMock automatically discovers the models available to the signed-in ChatGPT account. The current catalog commonly includes:
gpt-5.6-solgpt-5.6-terragpt-5.6-lunagpt-5.5gpt-5.4gpt-5.4-minigpt-5.3-codex-spark/v1/responses (HTTP + WebSocket)All flags go after chatmock serve. These can also be set as environment variables.
| Flag | Env var | Options | Default | Description |
|---|---|---|---|---|
--reasoning-effort | CHATGPT_LOCAL_REASONING_EFFORT | none, minimal, low, medium, high, xhigh, max, ultra | medium | How hard the model thinks |
--reasoning-summary | CHATGPT_LOCAL_REASONING_SUMMARY | auto, concise, detailed, none | auto | Thinking summary verbosity |
--reasoning-compat | CHATGPT_LOCAL_REASONING_COMPAT | legacy, o3, think-tags | think-tags | How reasoning is returned to the client |
--fast-mode | CHATGPT_LOCAL_FAST_MODE | true/false | false | Priority processing for supported models |
--enable-web-search | CHATGPT_LOCAL_ENABLE_WEB_SEARCH | true/false | false | Allow the model to search the web |
--expose-reasoning-models | CHATGPT_LOCAL_EXPOSE_REASONING_MODELS | true/false | false | List each reasoning level as its own model |
--model-sync | CHATGPT_LOCAL_MODEL_SYNC | true/false | true | Discover account models automatically |
--model-refresh-interval | CHATGPT_LOCAL_MODEL_REFRESH_INTERVAL | seconds | 3600 | Refresh interval for model discovery |
{
"model": "gpt-5.4",
"messages": [{"role": "user", "content": "latest news on ..."}],
"responses_tools": [{"type": "web_search"}],
"responses_tool_choice": "auto"
}
{
"model": "gpt-5.4",
"input": "summarize this",
"fast_mode": true
}
Use responsibly and at your own risk. This project is not affiliated with OpenAI.
456 followers · starred Aug 2025
3,873 followers · starred Oct 2025
197 followers · starred Aug 2025
58 followers · starred Sep 2025
OpenAI & Ollama compatible API powered by Codex
Python
1,557
100 commits
updated Sep 1, 2026
brew tap RayBytes/chatmock
brew install chatmock
pipx install chatmock
Download from releases (macOS & Windows)
See DOCKER.md
# 1. Sign in with your ChatGPT account
# If you are running this on a headless server, append --headless
chatmock login
# 2. Start the server
chatmock serve
The server runs at http://127.0.0.1:8000 by default. Use http://127.0.0.1:8000/v1 as your base URL for OpenAI-compatible apps.
Configure the Host URL
Open your Raycast Extensions preferences, navigate to the Ollama settings section, and input the host URL (default is 127.0.0.1:8000).
Sync Your Models
Click the Sync Models button, which will register all available models.
Start Chatting
Open the Raycast AI Chat interface. You will now see model slugs which you can chat with.
Configure the provider settings
Open your Terax settings, and switch to the Models tab, add a new provider (OpenAI Compatible), and input the host URL (default is http://127.0.0.1:8000/v1), along with the model IDs you wish to use (API key may be anything).
Favourite, and start using it!
Go back to your main chat window, select the model by going to the OpenAI Compatible icon, and clicking the model there (you may favourite it here to quickly select it the next time if you switch between models)
ChatMock automatically discovers the models available to the signed-in ChatGPT account. The current catalog commonly includes:
gpt-5.6-solgpt-5.6-terragpt-5.6-lunagpt-5.5gpt-5.4gpt-5.4-minigpt-5.3-codex-spark/v1/responses (HTTP + WebSocket)All flags go after chatmock serve. These can also be set as environment variables.
| Flag | Env var | Options | Default | Description |
|---|---|---|---|---|
--reasoning-effort | CHATGPT_LOCAL_REASONING_EFFORT | none, minimal, low, medium, high, xhigh, max, ultra | medium | How hard the model thinks |
--reasoning-summary | CHATGPT_LOCAL_REASONING_SUMMARY | auto, concise, detailed, none | auto | Thinking summary verbosity |
--reasoning-compat | CHATGPT_LOCAL_REASONING_COMPAT | legacy, o3, think-tags | think-tags | How reasoning is returned to the client |
--fast-mode | CHATGPT_LOCAL_FAST_MODE | true/false | false | Priority processing for supported models |
--enable-web-search | CHATGPT_LOCAL_ENABLE_WEB_SEARCH | true/false | false | Allow the model to search the web |
--expose-reasoning-models | CHATGPT_LOCAL_EXPOSE_REASONING_MODELS | true/false | false | List each reasoning level as its own model |
--model-sync | CHATGPT_LOCAL_MODEL_SYNC | true/false | true | Discover account models automatically |
--model-refresh-interval | CHATGPT_LOCAL_MODEL_REFRESH_INTERVAL | seconds | 3600 | Refresh interval for model discovery |
{
"model": "gpt-5.4",
"messages": [{"role": "user", "content": "latest news on ..."}],
"responses_tools": [{"type": "web_search"}],
"responses_tool_choice": "auto"
}
{
"model": "gpt-5.4",
"input": "summarize this",
"fast_mode": true
}
Use responsibly and at your own risk. This project is not affiliated with OpenAI.
456 followers · starred Aug 2025
3,873 followers · starred Oct 2025
197 followers · starred Aug 2025
58 followers · starred Sep 2025