Files
CLIProxyAPI/internal/runtime/executor/codex_executor.go
Luis Pater b064b832e2 feat(codex): support model-level quota cooling
- Add `model-level-cooling` configuration option to Codex settings.
- Scope `usage_limit_reached` quota cooldowns to the requested model instead of the entire credential when enabled.
- Propagate model-level cooling checks across HTTP, SSE, and WebSocket execution paths.

Closes: #5619
2026-09-09 11:57:58 +08:00

18 lines
579 B
Go

package executor
import "github.com/router-for-me/CLIProxyAPI/v7/internal/config"
// CodexExecutor is a stateless executor for Codex (OpenAI Responses API entrypoint).
// If api_key is unavailable on auth, it falls back to legacy via ClientAdapter.
type CodexExecutor struct {
cfg *config.Config
}
func NewCodexExecutor(cfg *config.Config) *CodexExecutor { return &CodexExecutor{cfg: cfg} }
func (e *CodexExecutor) Identifier() string { return "codex" }
func (e *CodexExecutor) modelLevelCooling() bool {
return e != nil && e.cfg != nil && e.cfg.Codex.ModelLevelCooling
}