github lidge-jun/opencodex v0.1.0

one month ago

Published to npm as @bitkyc08/opencodex@0.1.0.

Commit log

Initial release commits:

  • init: opencodex 프로젝트 스캐폴드 + jawcode 프로바이더 전수조사 (789a96b)
  • plan: 7-Phase 마스터 플랜 + Phase 1 상세 설계 (b8e8f3f)
  • plan: Phase 1 Plan v2 — audit FAIL 6건 수정 (3579f5b)
  • feat(p1): Core Proxy 구현 — Responses API → Chat Completions 변환 (7f0071b)
  • fix(p1): 중복 done 이벤트 수정 — usage를 [DONE]에서만 emit (1488aaa)
  • plan(p2): Multi-Adapter 계획 — Anthropic + OpenAI 패스스루 (2c6e007)
  • feat(p2): Multi-Adapter — Anthropic + OpenAI Responses 패스스루 (c532b6f)
  • feat(p3): Config & Init — ocx init + Codex config.toml 자동 주입 (96c732e)
  • feat(p4): Model Router — 모델 ID → 프로바이더 자동 라우팅 (119fd3f)
  • feat(p5): React GUI 대시보드 — Dashboard, Providers, Logs (b006be1)
  • feat(p6): Enterprise Adapters — Google Generative AI + Azure OpenAI (87744be)
  • feat(p7): Polish — README, LICENSE, 최종 검증 (8102570)
  • feat: GUI를 프록시 서버에서 직접 serve (b5836d4)
  • feat: 모델 자동 로딩 — /v1/models + /api/models 엔드포인트 (9224269)
  • feat: Codex config.toml에 모델 자동 주입 (7cae9f8)
  • fix: stop overriding model_provider, use profile instead (9d29c49)
  • fix: use separate profile file per official Codex 0.134.0+ docs (bc73736)
  • fix: handle Codex reasoning:null and /v1/models format mismatch (397d599)
  • feat(codex-inject): route all models through opencodex by default (57af232)
  • feat(proxy): OAuth passthrough for gpt-*, provider routing, namespaced models (8d68674)
  • docs(devlog): phase-4 plan — OAuth passthrough + routing + model namespacing (9e49cc2)
  • fix(openai-chat): drop empty assistant messages from history (47ec697)
  • fix(openai-chat): clamp reasoning_effort and neutralize injected GPT-5 identity (cc982cd)
  • feat(server): record real model+provider in request log (d3572db)
  • fix(codex-catalog): drop bare duplicates of routed models in catalog (f1146f7)
  • feat(gui): searchable Add Provider modal + /api/providers endpoint (30709e3)
  • feat(openai-chat): forward MCP namespace tools to go models with round-trip namespace (6998fca)
  • feat(openai-chat): forward apply_patch to go models via custom_tool_call round-trip (3a4ad2c)
  • feat(openai-chat): forward tool_search + deferred tools (subagents) to go models (42f4990)
  • fix(parser): list exact wire names in tool_search result (so models call loaded tools) (97a7351)
  • feat(oauth): xAI OAuth login end-to-end (Cycle 1) (02930e9)
  • feat(gui): real OAuth login button in Add Provider modal (ab70a79)
  • feat(cli): restore native Codex when the proxy stops (e8e5955)
  • fix(restore,gui): address final-review findings (e65cca0)
  • fix(proxy): strip content-encoding/length on gpt passthrough (stream errors) (62bd558)
  • feat(oauth): Anthropic + Kimi true OAuth login (Cycle 2) (14fc3fc)
  • feat(oauth): API-key login for 18 providers (Cycle 3) (6684367)
  • feat(gui): vLLM + LM Studio local provider presets (Cycle 5) (f3623ee)
  • feat(cli): ocx service — run as a background service (Cycle 6) (adb380f)
  • feat(subagents): GUI picker for the 5 spawn_agent model overrides (Cycle 7) (6f2b9ae)
  • feat(models): enable/disable models, grouped + collapsible by provider (Cycle 8) (d877d68)
  • fix(review): final-audit findings — Anthropic multi-turn tooling + robustness (d210a4e)
  • fix(bridge): emit Responses .done finalization events (opencode-go cutoff) (ffe20bc)
  • feat(xai): add grok-composer-2.5-fast + drop reasoning param for it & grok-build-0.1 (ee538d5)
  • fix(anthropic): max_tokens > thinking.budget_tokens (extended-thinking 400) (02051c2)
  • fix(codex-inject): write model_provider at TOML root so codex exec routes via proxy (744cc9e)
  • feat(models): always-latest via Anthropic /v1/models + reconcile OAuth presets on start (04cdf55)
  • feat(subagents): default featured = native GPT models; native list always-latest (2295bbd)
  • docs(web-search): scaffold gpt-5.4-mini web-search sidecar plan (plan only) (4c6871d)
  • refactor(polish): name anthropic token constants + dedup model fetch (c5b7435)
  • fix(tools): no-arg tool calls must serialize as "{}" not "" (session-poisoning 400) (872d738)
  • feat(web-search): gpt-5.4-mini sidecar — real web search for non-OpenAI models (Phase 1) (a4053df)
  • fix(web-search): loop hardening — cap answer, preserve real tool calls, total-search budget (Phase 2) (4dccf7e)
  • docs(web-search): implementation log — Phase 1+2 done, runtime findings, remaining work (11f943d)
  • fix(vision): send images as image blocks, not inlined text (token-limit explosion) (ebeae29)
  • feat(vision): vision sidecar — give text-only models eyes via gpt vision describe (3be8c40)
  • fix(vision): describe view_image tool-output images too (situation B) (cc95e84)
  • fix(web-search): tolerant SSE parser — capture streaming citations, surface errors (b824396)
  • fix(web-search): untrusted-data boundary + answer/source caps in tool result (10208fc)
  • fix(web-search): guard against re-running a query that already failed this turn (659b29e)
  • fix(vision): bounded-concurrent describes, per-image clamp, data-URL validation (6d594fc)
  • fix(web-search): cap sidecar search answer at 1500 output tokens (f648197)
  • feat(web-search): JSON-mode guard — render tool result as JSON in structured output (0534b0f)
  • feat(web-search): verbalize image results when the routed model is text-only (75eb430)
  • docs(web-search): hardening-pass devlog — web-ai gap review, fixes, verdict (1be0772)
  • feat(types): tolerant no-vision model matching (Ollama ":size" tags) (f58f038)
  • feat(providers): add Ollama Cloud with web-verified text/vision classification (b333e83)
  • docs(site): Astro Starlight developer documentation site (102f8c6)
  • ci(pages): deploy docs-site to GitHub Pages via Astro action (8072de9)
  • docs(readme): rewrite — accurate providers/adapters, OAuth, sidecars, docs link (76ab172)
  • fix(ci): pin Node 22 for the Astro build (Astro 6 requires >=22.12.0) (1b6c981)
  • feat(providers): import the rest of jawcode's API providers into the catalog (a4a594c)
  • docs(providers): list the newly imported catalog providers (7a36f28)
  • feat(providers): protocol-based import criterion — add Kilo, Copilot, GitLab Duo, CF Gateway (0efaeb7)
  • feat(docs): brand logo + Korean & Chinese localization (2c53ff3)
  • fix(reasoning): expose full low/medium/high/xhigh/max ladder for routed models (7bcfe48)
  • docs(readme): add logo + Korean/Chinese READMEs with language nav (539bcf4)
  • feat(gui): redesign dashboard to the brand theme (dark devtool) (525a849)
  • fix(reasoning): drop unsupported "max" tier — Codex's catalog parser rejects it (e619e22)
  • fix(sidecars): drop max_output_tokens — codex backend rejects it (breaks web search) (8135bee)
  • chore(release): make the package npm-publishable (ship built gui/dist) (2d852c6)
  • fix(tools): pass native/unknown tool types through instead of silently dropping them (268bfc3)
  • feat(cli): one-time GitHub-star prompt on first interactive ocx start (ebba2a8)
  • feat(cli): interactive [Y/n] GitHub-star prompt that stars via gh (agbrowse-style) (f3707cc)
  • feat(cli): ocx init exposes the full provider catalog (GUI parity) (70e6c9f)
  • ci(npm): publish to npm on version tag (provenance) + release runbook (f9d30b0)
  • docs: dashboard screenshot hero + collapsible bun-install (8e199dd)
  • ci(release): adopt jawcode-style npm release (workflow_dispatch + dry-run + provenance) (26961d9)
  • feat(cli): ocx update — self-update to the latest published version (cb6241f)
  • ci(release): switch npm publish to Trusted Publishing (OIDC) — no NPM_TOKEN (f8120b9)

Don't miss a new opencodex release

NewReleases is sending notifications on new releases.