Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
- Validate script syntax, generated TOML/JSON, idempotency, secret handling, and uninstall boundaries before publishing.

- Codex CLI uses a user-level profile-v2 file, `https://codex.neuroapi.host/v1`, and WebSocket by default; the optional Codex Desktop setup uses the same host with HTTP/SSE. Publish installers only after authenticated catalog and transport checks.
- Managed Codex profiles use verified hosted `web_search = "live"` and `remote_plugin = false`; keep local plugins available. Multi-agent namespace, goals, apps and browser use stay disabled in the CLI profile until independently verified. Do not advertise standalone web-search support. Preserve unrelated Desktop feature preferences.
- Managed Codex CLI uses verified hosted `web_search = "live"`, `plugins = false` and `remote_plugin = false`: API-key startup must not sync plugin catalogs. Standalone user-configured MCP remains independent. Multi-agent namespace, goals, apps and browser use stay disabled in the CLI profile until independently verified. Do not advertise standalone web-search support. Desktop edits only `remote_plugin`, preserving existing `plugins` and other feature preferences; document optional manual plugin disabling.
- Managed launchers fetch and validate fresh key-scoped catalogs into private per-launch snapshots; never fall back to stale/bundled lists or accept executable server settings. Claude Code's base URL is `https://claude.neuroapi.host`; Claude Desktop gateway is configured separately in its UI. Keep ordinary keys, preserve unrelated configuration, and document managed-policy/explicit-override boundaries.

- Claude client-settings v2 is opt-in via `X-NeuroAPI-Client-Settings-Version: 2`; accept only the three reviewed limit/hint env keys with canonical bounded decimal strings (or hint `1`), retain the 4096 output fallback for old servers. `--doctor` performs no generation; `--doctor-generate` explicitly opts into one bounded HTTP probe with no retries, secret-free output and no claim of WebSocket/tool compatibility.
2 changes: 1 addition & 1 deletion README.en.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Public, auditable guided setup for routing local Codex CLI and Claude Code sessi

## Release compatibility

This version configures `https://codex.neuroapi.host/v1` with `supports_websockets = true`, and `https://claude.neuroapi.host` for Claude Code. The Codex profile enables hosted web search through NeuroAPI (`web_search = "live"`) and disables remote plugin catalog synchronization (`remote_plugin = false`). Local plugins, shell and file tools remain available. Multi-agent, goals, apps and browser use remain disabled in the CLI profile until their execution is independently verified. Setup checks both key-scoped catalogs without a paid generation. After setup, send one short real request and confirm it in your [NeuroAPI usage log](https://neuroapi.host/dashboard/logs); a catalog check alone does not prove generation works.
This version configures `https://codex.neuroapi.host/v1` with `supports_websockets = true`, and `https://claude.neuroapi.host` for Claude Code. The Codex profile enables hosted web search through NeuroAPI (`web_search = "live"`) and disables plugins in the separate CLI profile (`plugins = false`, `remote_plugin = false`) so API-key startup does not depend on ChatGPT/Git plugin catalog synchronization. Shell, file tools and separately configured MCP servers remain available. Desktop keeps the user's existing `plugins` preference; users who do not need plugins can disable them manually. Multi-agent, goals, apps and browser use remain disabled in the CLI profile until their execution is independently verified. Setup checks both key-scoped catalogs without a paid generation. After setup, send one short real request and confirm it in your [NeuroAPI usage log](https://neuroapi.host/dashboard/logs); a catalog check alone does not prove generation works.

An existing `CODEX_HOME` selects the profile directory without being modified. Keep its value consistent for setup, launch and uninstall.

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ NeuroAPI — российский AI API-сервис: единый доступ

## Совместимость версии

Эта версия создаёт профиль Codex с `https://codex.neuroapi.host/v1` и `supports_websockets = true`, а профиль Claude Code — с `https://claude.neuroapi.host`. Codex-профиль включает hosted web search (`web_search = "live"`) через NeuroAPI и отключает синхронизацию удалённого каталога плагинов (`remote_plugin = false`). Локальные плагины, команды, чтение и редактирование файлов остаются доступны. Multi-agent, goals, apps и browser use в CLI-профиле отключены до отдельной проверки их исполнения. Установщик проверяет доступ ключа к обоим каталогам без платной генерации. После установки отправьте короткий реальный запрос и проверьте его в [истории использования NeuroAPI](https://neuroapi.host/dashboard/logs): проверка каталога сама по себе не подтверждает генерацию.
Эта версия создаёт профиль Codex с `https://codex.neuroapi.host/v1` и `supports_websockets = true`, а профиль Claude Code — с `https://claude.neuroapi.host`. Codex-профиль включает hosted web search (`web_search = "live"`) через NeuroAPI и отключает плагины в отдельном CLI-профиле (`plugins = false`, `remote_plugin = false`), чтобы запуск с API-ключом не зависел от синхронизации ChatGPT/Git-каталогов. Команды, чтение и редактирование файлов, а также отдельно настроенные MCP остаются доступны. Настройки `plugins` Desktop установщик сохраняет; при ненужных плагинах их можно отключить вручную. Multi-agent, goals, apps и browser use в CLI-профиле отключены до отдельной проверки их исполнения. Установщик проверяет доступ ключа к обоим каталогам без платной генерации. После установки отправьте короткий реальный запрос и проверьте его в [истории использования NeuroAPI](https://neuroapi.host/dashboard/logs): проверка каталога сама по себе не подтверждает генерацию.

Уже заданный `CODEX_HOME` учитывается для профиля и не изменяется; сохраняйте одинаковое значение при установке, запуске и удалении.

Expand Down
5 changes: 4 additions & 1 deletion docs/copy-paste-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -138,7 +138,7 @@ Windows PowerShell — выполните весь блок из распако

macOS: `mkdir -p ~/.codex && nano ~/.codex/neuroapi-manual.config.toml`. Windows: `New-Item -ItemType Directory -Force "$HOME\.codex" | Out-Null; notepad "$HOME\.codex\neuroapi-manual.config.toml"`. Если установлен `CODEX_HOME`, откройте файл в нём. Вставьте весь блок:

Hosted поиск включён (`web_search = "live"`). `remote_plugin = false` отключает удалённый каталог плагинов и сохраняет локальные плагины; не добавляйте `plugins = false`. Остальные ограничения CLI-профиля оставьте как в примере. Подробнее — [ручная настройка](manual-setup.md).
Hosted поиск включён (`web_search = "live"`). `plugins = false` и `remote_plugin = false` отключают плагины только в отдельном CLI-профиле, чтобы запуск с API-ключом не зависел от фоновой синхронизации ChatGPT/Git-каталогов. Отдельно настроенные MCP остаются доступны, инструменты плагинов — нет. Остальные ограничения CLI-профиля оставьте как в примере. Подробнее — [ручная настройка](manual-setup.md).

```toml
model = "gpt-6-sol" # замените только ID модели, если вашему ключу доступна другая
Expand All @@ -147,6 +147,7 @@ model_provider = "neuroapi_manual"
web_search = "live"

[features]
plugins = false
remote_plugin = false
multi_agent = false
goals = false
Expand Down Expand Up @@ -258,6 +259,8 @@ timeout_ms = 5000
refresh_interval_ms = 300000
```

Desktop сохраняет ваши настройки плагинов. Если плагины не нужны и вы видите ошибки ChatGPT/Git-каталога, **по желанию** добавьте `plugins = false` в существующую `[features]`. Это отключит инструменты плагинов, но не отдельно настроенные MCP. Не создавайте вторую `[features]`; установщик сам значение `plugins` Desktop не меняет.

В обоих Desktop-блоках замените пример `model_catalog_json` и `model` **точными строками**, выведенными шагом 3. В Windows это уже экранированный TOML-путь; не вставляйте буквально `%LOCALAPPDATA%`, `$HOME` или `~`. Каталог постоянный и приватный, но обновляется вручную: перед запуском Desktop и после смены ключа/тарифа повторяйте загрузку; при ошибке обновления клиент не запускайте. Перезапустите приложение, создайте **новую локальную** задачу и проверьте её в [истории NeuroAPI](https://neuroapi.host/dashboard/logs). Не удаляйте helper/ключ через uninstaller, пока Desktop-config ссылается на него. Если захотите перейти на автоматическое управление Desktop, сначала уберите ручную секцию и верните прежние root-настройки из сохранённой копии, затем повторите setup с опцией Desktop: иначе последующее удаление установщика может восстановить конфиг, который всё ещё ссылается на удаляемый helper.

## Claude Desktop вручную
Expand Down
6 changes: 4 additions & 2 deletions docs/manual-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,7 @@ model_provider = "neuroapi_manual"
web_search = "live"

[features]
plugins = false
remote_plugin = false
multi_agent = false
goals = false
Expand Down Expand Up @@ -94,6 +95,7 @@ model_provider = "neuroapi"
web_search = "live"

[features]
plugins = false
remote_plugin = false
multi_agent = false
goals = false
Expand All @@ -114,9 +116,9 @@ refresh_interval_ms = 300000

На Windows `command` — `powershell.exe`, а helper и DPAPI secret передаются отдельными элементами `args`.

Hosted web search включён через NeuroAPI: `web_search = "live"` запрашивает актуальные страницы. Его использование может тарифицироваться отдельно от токенов; актуальные цены указаны в [каталоге NeuroAPI](https://neuroapi.host/price). `remote_plugin = false` отключает удалённый каталог плагинов; поле `plugins` не отключается, поэтому установленные локальные плагины остаются доступны. CLI-профиль сохраняет отключёнными multi-agent, goals, apps и browser use до отдельной проверки поддержки.
Hosted web search включён через NeuroAPI: `web_search = "live"` запрашивает актуальные страницы. Его использование может тарифицироваться отдельно от токенов; актуальные цены указаны в [каталоге NeuroAPI](https://neuroapi.host/price). `plugins = false` и `remote_plugin = false` отключают плагины только в отдельном CLI-профиле: одного `remote_plugin = false` недостаточно для отключения всех фоновых запросов каталогов при API-key запуске. Отдельно настроенные MCP, локальные команды и файлы остаются доступны; инструменты, поставляемые через плагины, в этом профиле недоступны. CLI-профиль сохраняет отключёнными multi-agent, goals, apps и browser use до отдельной проверки поддержки.

Режимы поиска описаны в [официальной документации](https://learn.chatgpt.com/docs/web-search). Раздельные флаги `plugins` и `remote_plugin` есть уже в [Codex 0.158.0](https://github.com/openai/codex/blob/rust-v0.158.0/codex-rs/features/src/lib.rs); минимум версии установщика не меняется. Это не отключает всю сеть плагинов: локальные плагины и их MCP, обновление Git-каталогов и функции приложения могут обращаться к собственным сервисам. Не включайте `supports_standalone_web_search`: отдельная самостоятельная search-сессия у стороннего провайдера не заявлена.
Режимы поиска описаны в [официальной документации](https://learn.chatgpt.com/docs/web-search). Раздельные флаги `plugins` и `remote_plugin` есть уже в [Codex 0.158.0](https://github.com/openai/codex/blob/rust-v0.158.0/codex-rs/features/src/lib.rs); минимум версии установщика не меняется. Это не отключает всю сеть клиента: отдельно настроенные MCP и функции приложения могут обращаться к собственным сервисам. В Desktop установщик сохраняет значение `plugins`; если плагины не нужны и появляются ошибки их каталога, можно вручную установить `plugins = false` в существующей `[features]`, сохранив остальные настройки. Не включайте `supports_standalone_web_search`: отдельная самостоятельная search-сессия у стороннего провайдера не заявлена.

Запуск: `codex-neuroapi`. Перед каждым запуском launcher получает `https://codex.neuroapi.host/v1/models` с обычным ключом NeuroAPI, проверяет ответ и передаёт приватный файл через `model_catalog_json` вместе с доступной моделью по умолчанию. Файл удаляется после завершения клиента. Проверка: `/debug-config` и `/model`.

Expand Down
4 changes: 2 additions & 2 deletions docs/troubleshooting.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

Проверьте пользовательский `~/.codex/config.toml`: `model_provider = "neuroapi_agents"`, `base_url = "https://codex.neuroapi.host/v1"`, `supports_websockets = false`. Перезапустите приложение и создайте **новую локальную** задачу. Старые задачи и облачные функции могут сохранять прежний маршрут. Если вы пропустили предложение установщика, запустите setup заново и согласитесь на подключение Desktop.

Если ошибка относится к загрузке плагинов, проверьте `remote_plugin = false` в существующей секции `[features]` и запустите setup повторно. Синхронизация удалённого каталога плагинов и генерация модели — разные операции. Этот флаг сохраняет локальные плагины; их MCP, обновления Git-каталогов и облачные функции приложения могут использовать собственную сеть.
В CLI повторный setup создаёт отдельный профиль с `plugins = false` и `remote_plugin = false`: это отключает фоновые запросы плагинов, которые при запуске с API-ключом могут обращаться к ChatGPT/Git-каталогам. Используйте `codex-neuroapi`. В Desktop установщик сохраняет вашу настройку `plugins`; если плагины не нужны, вручную добавьте `plugins = false` в существующую `[features]`, оставив `remote_plugin = false`. Инструменты плагинов отключатся; отдельно настроенные MCP и облачные функции приложения используют собственную сеть.

Если удаление останавливается из-за изменения `config.toml`, сначала сравните текущий файл с резервной копией в каталоге установщика. Это защищает ваши правки и сохраняет key helper до ручного разбора.

Expand All @@ -25,7 +25,7 @@ macOS: используйте полный путь `~/.local/bin/codex-neuroapi
- base URL `https://codex.neuroapi.host/v1`;
- `wire_api = "responses"`;
- `supports_websockets = true` (или `false` для диагностики HTTP/SSE).
- `web_search = "live"` и `[features]` с `remote_plugin = false`: hosted поиск идёт через NeuroAPI, удалённый каталог плагинов отключён. Не задавайте `plugins = false`, если используете установленные локальные плагины.
- `web_search = "live"` и `[features]` с `plugins = false`, `remote_plugin = false`: hosted поиск идёт через NeuroAPI, плагины CLI отключены для запуска с API-ключом. Отдельно настроенные MCP остаются доступны.
- В CLI-профиле остаются `multi_agent = false`, `goals = false`, `apps = false`, `browser_use = false`: эти возможности требуют отдельной проверки исполнения.

Если `~/.codex/neuroapi-host.config.toml` существовал до установки без ownership-marker, setup должен отказать, а не перезаписать его.
Expand Down
3 changes: 2 additions & 1 deletion scripts/macos/install.sh
Original file line number Diff line number Diff line change
Expand Up @@ -306,8 +306,9 @@ cat >"$STAGE_ROOT/profile.toml" <<EOF
model_provider = "neuroapi"
web_search = "live"

# Keep unsupported agent features off; local plugins remain available.
# API-key CLI startup avoids plugin catalog sync; standalone MCP stays available.
[features]
plugins = false
remote_plugin = false
multi_agent = false
goals = false
Expand Down
3 changes: 2 additions & 1 deletion scripts/windows/setup.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -185,8 +185,9 @@ try {
model_provider = "neuroapi"
web_search = "live"

# Keep unsupported agent features off; local plugins remain available.
# API-key CLI startup avoids plugin catalog sync; standalone MCP stays available.
[features]
plugins = false
remote_plugin = false
multi_agent = false
goals = false
Expand Down
Loading
Loading