* feat(core): add optional reply footer metadata
* feat(config): enable reply footer by default
* feat(codex): use runtime footer metadata from app-server
* feat(codex): resolve exec footer metadata at runtime
* feat(core): style reply footer and prefer context left
* feat(codex): use real runtime context for reply footer
* feat(core): use english left footer text
* fix(codex): use current context tokens for footer left
* fix(codex): match cli context left calculation
* test(codex): adapt footer tests to session base url arg
Codex CLI 0.118.0 deprecated the OPENAI_BASE_URL env var. When users
switch providers via /provider, the new base URL was set as an env var
but ignored by the CLI. Now pass it as `-c openai_base_url=<url>` on
each subprocess invocation so the correct endpoint is used immediately.
Closes#554
Co-authored-by: Claude <noreply@anthropic.com>
- fix(#348): call cleanupInteractiveState after new_per_run cron completes
to prevent orphaned Claude CLI processes accumulating over time
- fix(#378): codex CompressCommand() returns "" since /compact is not
reliably executed in exec/resume mode (may be treated as plain text)
- feat: notify user via platform message before auto-compress triggers,
including token estimate (~Xk tokens) for transparency
- fix(#384): pass --max-context-tokens 900000 to claude CLI, raising the
effective context limit from ~254K to 900K tokens
Co-authored-by: 菇菇 <gugu@gugudeMac-mini.local>
Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
* fix(core): share provider model lookup and stabilize tests
* fix(tests): address PR review follow-ups
---------
Co-authored-by: Deeka Wong <8337659+huangdijia@users.noreply.github.com>
Implement session deletion functionality across all agent implementations (claudecode, codex, cursor, gemini)
Add new /delete command with session lookup by ID/prefix
Add i18n support for delete-related messages
Update command help texts to include new delete command
Add SessionDeleter interface for agents supporting deletion
Implement core deletion logic with active session protection
generated by llmgit
Co-Authored-By: Claude <noreply@anthropic.com>
Implement context compression functionality across agents with `/compress` and `/compact` commands. Adds ContextCompressor interface, command handling in engine, and i18n messages. Supported agents implement CompressCommand() with their specific commands.
generated by llmgit
Co-Authored-By: Claude <noreply@anthropic.com>
Add model selection capabilities across all agents with:
- ModelSwitcher interface for dynamic model switching
- `/model` command to list/change models
- Default model lists for each agent
- API-based model fetching with fallback
- Session-aware model persistence
- I18n support for model messages
generated by llmgit
Co-Authored-By: Claude <noreply@anthropic.com>
Add MemoryFileProvider interface and implement in claudecode, codex, and gemini agents
Add /memory command to view/edit memory files with translations
Update help text to include new command
generated by llmgit
Co-Authored-By: Claude <noreply@anthropic.com>
Add provider management system allowing dynamic switching between API providers (Anthropic, relay services, AWS Bedrock, etc.) without restarting. Includes:
generated by llmgit
Co-Authored-By: Claude <noreply@anthropic.com>
Add new Codex agent implementation with permission modes, session management, and history retrieval. Update installation docs, README files, and config templates to reflect Codex support. Enhance session listing and history commands to work with both Claude and Codex agents.
generated by llmgit
Co-Authored-By: Claude <noreply@anthropic.com>