codex-agent-framework 0.1.41__tar.gz → 0.1.42__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/CHANGELOG.md +7 -0
- {codex_agent_framework-0.1.41/codex_agent_framework.egg-info → codex_agent_framework-0.1.42}/PKG-INFO +1 -1
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/sessions.py +88 -17
- codex_agent_framework-0.1.42/codex_agent/version.py +1 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42/codex_agent_framework.egg-info}/PKG-INFO +1 -1
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/pyproject.toml +1 -1
- codex_agent_framework-0.1.41/codex_agent/version.py +0 -1
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/LICENSE +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/MANIFEST.in +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/README.md +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/__main__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/agent.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/agent_runtime.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/ai.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/browser.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_commands.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/bash/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/bash/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/browser/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/browser/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/content/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/content/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/content/system.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/content/vision.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/context/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/desktop/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/desktop/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/environment/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/environment/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/files/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/files/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/files/tools.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/image_generation/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/image_generation/image_generation_system_prompt.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/image_generation/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/interface/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/interface/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/memory/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/memory/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/planner/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/planner/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/python/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/python/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/realtime/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/realtime/audio.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/realtime/bridge.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/realtime/manager.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/realtime/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/realtime/session.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/scheduler/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/scheduler/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/subagents/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/subagents/profiles/explorer.json +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/subagents/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/tts/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_plugins/tts/requirements.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/cli/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/cli/headless.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/cli/main.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/cli/output.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/cli/root.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/cli/runner.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/client.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/command.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/config.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/context.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/desktop.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/event.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/default_gitignore +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/get_text.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/simpler_get_text.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/hooks.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/image.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/latex.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/mainloop.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/message.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/plugin.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/prompts/system_prompt.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/provider.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/runtime.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/scheduler.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/scripts/install-system-dependencies.sh +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/server/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/server/app.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/server/core.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/service.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/status.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/stream.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/stream_utils.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tool.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tray.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/__init__.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/app.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/chat.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/lifecycle.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/log.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/state.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/status_bar.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/style.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/tui/transcript.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/utils.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/worker.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent_framework.egg-info/SOURCES.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent_framework.egg-info/dependency_links.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent_framework.egg-info/entry_points.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent_framework.egg-info/requires.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent_framework.egg-info/top_level.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/dependencies.txt +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/setup.cfg +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_audio_hooks.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_commands.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_context.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_desktop.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_environment.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_image_generation.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_observe.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_plugins.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_providers_config.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_realtime.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_response.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_runtime.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_sessions.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_subagents.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_tools.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_turns.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_ai.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_browser.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_builtin_config.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_chat.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_cli.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_cli_headless.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_cli_root.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_client.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_events.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_get_text_browser.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_hooks.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_image_message.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_local_desktop.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_memory.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_messages.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_planner.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_scheduler.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_server.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_service.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_tui.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_utils.py +0 -0
- {codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_worker.py +0 -0
|
@@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
This project loosely follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/) and uses semantic versioning where practical.
|
|
6
6
|
|
|
7
|
+
## [0.1.42] - 2026-05-16
|
|
8
|
+
### Changed
|
|
9
|
+
- Reflow `AgentSession` and `SessionsManager` imports, compaction signatures, session load/start events, and compaction defaults for readability.
|
|
10
|
+
|
|
11
|
+
### Tests
|
|
12
|
+
- Validate with targeted session, context, response, and core Agent coverage plus the 553-test offline CI suite.
|
|
13
|
+
|
|
7
14
|
## [0.1.41] - 2026-05-16
|
|
8
15
|
### Changed
|
|
9
16
|
- Reflow `ConfigManager` update, namespace update, plugin default, and system prompt validation paths for readability.
|
|
@@ -7,12 +7,39 @@ from typing import List
|
|
|
7
7
|
from codex_backend_sdk import CodexClient
|
|
8
8
|
from modict import modict
|
|
9
9
|
|
|
10
|
-
from .event import
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
10
|
+
from .event import (
|
|
11
|
+
CompactionCompletedEvent,
|
|
12
|
+
CompactionFailedEvent,
|
|
13
|
+
CompactionRequestedEvent,
|
|
14
|
+
MessageAddedEvent,
|
|
15
|
+
SessionDeletedEvent,
|
|
16
|
+
SessionLoadedEvent,
|
|
17
|
+
)
|
|
18
|
+
from .message import (
|
|
19
|
+
AssistantMessage,
|
|
20
|
+
CompactionMessage,
|
|
21
|
+
DeveloperMessage,
|
|
22
|
+
Message,
|
|
23
|
+
SystemMessage,
|
|
24
|
+
ToolResultMessage,
|
|
25
|
+
ToolResultWrapper,
|
|
26
|
+
message_from_data,
|
|
27
|
+
)
|
|
28
|
+
from .utils import (
|
|
29
|
+
atomic_write_json,
|
|
30
|
+
runtime_join,
|
|
31
|
+
session_id,
|
|
32
|
+
sort,
|
|
33
|
+
split_history_turns,
|
|
34
|
+
timestamp,
|
|
35
|
+
total_tokens,
|
|
36
|
+
truncate,
|
|
37
|
+
)
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
UNRESOLVED_TOOL_RESULT_CONTENT = (
|
|
41
|
+
"This tool call could not be resolved or has been interrupted: result unavailable."
|
|
42
|
+
)
|
|
16
43
|
DEFAULT_COMPACTION_MAX_INPUT_TOKENS = 8000
|
|
17
44
|
|
|
18
45
|
|
|
@@ -46,13 +73,23 @@ class AgentSession(modict):
|
|
|
46
73
|
def is_message_visible_in_context(self, message):
|
|
47
74
|
return message.get("turns_left", -1) != 0
|
|
48
75
|
|
|
49
|
-
def truncate_message_for_compaction(
|
|
76
|
+
def truncate_message_for_compaction(
|
|
77
|
+
self,
|
|
78
|
+
message,
|
|
79
|
+
max_input_tokens=DEFAULT_COMPACTION_MAX_INPUT_TOKENS,
|
|
80
|
+
model=None,
|
|
81
|
+
):
|
|
50
82
|
message = message.copy()
|
|
51
83
|
if message.get("content") and isinstance(message.content, str):
|
|
52
84
|
message.content = truncate(message.content, max_tokens=max_input_tokens, model=model)
|
|
53
85
|
return message
|
|
54
86
|
|
|
55
|
-
def compaction_plan(
|
|
87
|
+
def compaction_plan(
|
|
88
|
+
self,
|
|
89
|
+
max_input_tokens=DEFAULT_COMPACTION_MAX_INPUT_TOKENS,
|
|
90
|
+
model=None,
|
|
91
|
+
max_compacted_turns=None,
|
|
92
|
+
):
|
|
56
93
|
compaction_index = self.latest_compaction_index()
|
|
57
94
|
start = compaction_index + 1 if compaction_index is not None else 0
|
|
58
95
|
anchor = self.messages[compaction_index] if compaction_index is not None else None
|
|
@@ -102,12 +139,26 @@ class AgentSession(modict):
|
|
|
102
139
|
compacted_turn_count=len(selected_turns),
|
|
103
140
|
preserved_turn_count=len(preserved_turns),
|
|
104
141
|
compacted_message_count=len(compacted_messages),
|
|
105
|
-
compacted_token_count=total_tokens(
|
|
142
|
+
compacted_token_count=total_tokens(
|
|
143
|
+
history_messages[1:] if anchor is not None else history_messages,
|
|
144
|
+
model=model,
|
|
145
|
+
),
|
|
106
146
|
context_message_count=len(history_messages) + len(preserved_messages),
|
|
107
147
|
)
|
|
108
148
|
|
|
109
|
-
def compact(
|
|
110
|
-
|
|
149
|
+
def compact(
|
|
150
|
+
self,
|
|
151
|
+
client=None,
|
|
152
|
+
model="gpt-5.4",
|
|
153
|
+
instructions="",
|
|
154
|
+
max_input_tokens=DEFAULT_COMPACTION_MAX_INPUT_TOKENS,
|
|
155
|
+
max_compacted_turns=None,
|
|
156
|
+
):
|
|
157
|
+
plan = self.compaction_plan(
|
|
158
|
+
max_input_tokens=max_input_tokens,
|
|
159
|
+
model=model,
|
|
160
|
+
max_compacted_turns=max_compacted_turns,
|
|
161
|
+
)
|
|
111
162
|
compacted_messages = plan.compacted_messages
|
|
112
163
|
if not compacted_messages:
|
|
113
164
|
return None
|
|
@@ -619,8 +670,16 @@ class SessionsManager:
|
|
|
619
670
|
self.agent.current_session_id = self.agent.session.session_id
|
|
620
671
|
if repair.repaired:
|
|
621
672
|
self.agent.status_manager.invalidate_context_cache()
|
|
622
|
-
self.append_message(
|
|
623
|
-
|
|
673
|
+
self.append_message(
|
|
674
|
+
DeveloperMessage(
|
|
675
|
+
content=f"Resuming chat session at {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}."
|
|
676
|
+
)
|
|
677
|
+
)
|
|
678
|
+
self.agent.emit(
|
|
679
|
+
SessionLoadedEvent,
|
|
680
|
+
session=self.agent.session,
|
|
681
|
+
session_id=self.agent.session.session_id,
|
|
682
|
+
)
|
|
624
683
|
return self.agent.session
|
|
625
684
|
|
|
626
685
|
def start_new(self, root_dir=None, cwd=None):
|
|
@@ -634,8 +693,16 @@ class SessionsManager:
|
|
|
634
693
|
)
|
|
635
694
|
self.agent.apply_session_working_directories()
|
|
636
695
|
self.agent.current_session_id = self.agent.session.session_id
|
|
637
|
-
self.append_message(
|
|
638
|
-
|
|
696
|
+
self.append_message(
|
|
697
|
+
DeveloperMessage(
|
|
698
|
+
content=f"Starting a new chat session at {datetime.now().strftime('%Y-%m-%d %H:%M:%S')}."
|
|
699
|
+
)
|
|
700
|
+
)
|
|
701
|
+
self.agent.emit(
|
|
702
|
+
SessionLoadedEvent,
|
|
703
|
+
session=self.agent.session,
|
|
704
|
+
session_id=self.agent.session.session_id,
|
|
705
|
+
)
|
|
639
706
|
return self.agent.session
|
|
640
707
|
|
|
641
708
|
def delete(self, session):
|
|
@@ -698,8 +765,12 @@ class SessionsManager:
|
|
|
698
765
|
).wait().result
|
|
699
766
|
|
|
700
767
|
model = model or self.agent.config.model
|
|
701
|
-
|
|
702
|
-
|
|
768
|
+
if instructions is None:
|
|
769
|
+
instructions = self.agent.config_manager.system_message().content
|
|
770
|
+
max_input_tokens = self.agent.config.get(
|
|
771
|
+
"max_input_tokens",
|
|
772
|
+
DEFAULT_COMPACTION_MAX_INPUT_TOKENS,
|
|
773
|
+
)
|
|
703
774
|
plan = self.agent.session.compaction_plan(
|
|
704
775
|
max_input_tokens=max_input_tokens,
|
|
705
776
|
model=model,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.1.42"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.1.41"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/builtin_commands.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/__init__.py
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/default_gitignore
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/get_text/get_text.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/prompts/system_prompt.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/codex_agent/server/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_audio_hooks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_environment.py
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_image_generation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_agent_providers_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.41 → codex_agent_framework-0.1.42}/tests/test_get_text_browser.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|