29 lines
1.8 KiB
Markdown
29 lines
1.8 KiB
Markdown
# AITURK IDE Codex bridge
|
||
|
||
Local HTTP proxy that AITURK IDE's **Settings → Codex Bağlama** runs for OpenAI Codex
|
||
(desktop or CLI) on the same computer. Standard-library Python only; it runs on the
|
||
agent venv's interpreter and keeps running after the IDE window closes, because
|
||
Codex depends on it while `openai_base_url` points here.
|
||
|
||
- `bridge.py`: the proxy. Subscription models go to chatgpt.com unchanged; `ide/<id>`
|
||
models go to the AITURK gateway configured in the agent's `config.yaml`, with the
|
||
key read from the agent's `.env` on every catalog refresh (never written elsewhere).
|
||
- `ide_catalog.py`: which IDE models and combos are added to Codex's model list and
|
||
how they are named (`provider/model`, combos by bare name).
|
||
The public `/models` catalog supplies every OmniRoute chat model; a member does
|
||
not need a private local model allowlist. `/router/catalog` supplies only the
|
||
`kind` metadata used for sorting, never additional model IDs. Direct 9Router
|
||
entries and internal 9Router combos are excluded. Combos sort A–Z first, then
|
||
individual models by provider and name, including OpenAI subscription models.
|
||
Codex labels the first visible row `isDefault`; a saved model selection remains
|
||
unchanged. A failed or empty refresh keeps the last successful catalog.
|
||
- `ozet_kopru.py`: conversation summaries are produced as plain text, so a summary made
|
||
by one provider stays readable after the user switches to another.
|
||
- `gemini_context.py`, `resim_context.py`: request fixes for routed models.
|
||
|
||
Run: `python bridge.py --home <data dir> --hermes-home <agent home>`. The IDE writes
|
||
`<data dir>/bridge.json` and reads `GET /aiturk/codex-baglama/status`;
|
||
`POST /aiturk/codex-baglama/stop` ends the process.
|
||
|
||
Tests: `python -m unittest discover` in this directory.
|