codex-agent-framework 0.1.75__tar.gz → 0.1.77__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.75/codex_agent_framework.egg-info → codex_agent_framework-0.1.77}/PKG-INFO +1 -1
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_commands.py +5 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/cli/headless.py +5 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/cli/root.py +6 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/stream.py +4 -0
- codex_agent_framework-0.1.77/codex_agent/version.py +1 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77/codex_agent_framework.egg-info}/PKG-INFO +1 -1
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/pyproject.toml +1 -1
- codex_agent_framework-0.1.75/codex_agent/version.py +0 -1
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/CHANGELOG.md +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/LICENSE +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/MANIFEST.in +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/README.md +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/__main__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/agent.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/agent_runtime.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/ai.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/browser.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/bash/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/bash/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/browser/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/browser/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/content/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/content/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/content/system.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/content/vision.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/context/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/desktop/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/desktop/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/environment/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/environment/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/files/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/files/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/files/tools.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/image_generation/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/image_generation/image_generation_system_prompt.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/image_generation/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/interface/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/interface/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/memory/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/memory/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/planner/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/planner/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/python/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/python/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/realtime/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/realtime/audio.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/realtime/bridge.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/realtime/manager.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/realtime/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/realtime/session.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/scheduler/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/scheduler/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/subagents/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/subagents/profiles/explorer.json +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/subagents/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/tts/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/tts/requirements.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_plugins/web_search/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/cli/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/cli/main.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/cli/output.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/cli/runner.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/client.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/command.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/config.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/context.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/desktop.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/event.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/get_text/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/get_text/default_gitignore +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/get_text/get_text.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/get_text/simpler_get_text.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/hooks.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/image.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/latex.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/mainloop.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/message.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/plugin.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/prompts/compaction_prompt.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/prompts/system_prompt.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/provider.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/runtime.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/scheduler.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/scripts/install-system-dependencies.sh +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/server/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/server/app.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/server/core.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/service.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/sessions.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/status.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/stream_utils.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/token_counter.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tool.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tray.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/__init__.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/app.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/chat.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/lifecycle.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/log.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/perf.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/state.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/status_bar.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/stream_debug.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/style.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/transcript.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/widgets.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/utils.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/worker.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent_framework.egg-info/SOURCES.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent_framework.egg-info/dependency_links.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent_framework.egg-info/entry_points.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent_framework.egg-info/requires.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent_framework.egg-info/top_level.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/dependencies.txt +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/setup.cfg +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_audio_hooks.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_commands.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_context.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_desktop.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_environment.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_image_generation.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_observe.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_plugins.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_providers_config.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_realtime.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_response.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_runtime.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_sessions.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_subagents.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_tools.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_turns.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_ai.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_browser.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_builtin_config.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_chat.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_cli.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_cli_headless.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_cli_root.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_client.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_events.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_get_text_browser.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_hooks.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_image_message.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_local_desktop.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_memory.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_messages.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_planner.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_scheduler.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_server.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_service.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_token_counter.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_tui.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_utils.py +0 -0
- {codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_worker.py +0 -0
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/builtin_commands.py
RENAMED
|
@@ -23,11 +23,13 @@ def _format_lines(value, prefix=""):
|
|
|
23
23
|
|
|
24
24
|
|
|
25
25
|
def format_config_output(value, prefix=""):
|
|
26
|
+
"""Render config values as readable slash-command output."""
|
|
26
27
|
return "\n".join(_format_lines(value, prefix=prefix)) if isinstance(value, dict) else repr(value)
|
|
27
28
|
|
|
28
29
|
|
|
29
30
|
@command
|
|
30
31
|
def help():
|
|
32
|
+
"""List slash commands currently registered on the active agent."""
|
|
31
33
|
agent = get_agent()
|
|
32
34
|
names = ", ".join(f"/{name}" for name in sorted(agent.commands))
|
|
33
35
|
return f"Available commands: {names}"
|
|
@@ -157,6 +159,7 @@ def config(path=None, value=None, *extra, **values):
|
|
|
157
159
|
|
|
158
160
|
@command
|
|
159
161
|
def model(value=None):
|
|
162
|
+
"""Show or update the active model configuration value."""
|
|
160
163
|
if value is None:
|
|
161
164
|
return f"model: {get_agent().config.model!r}"
|
|
162
165
|
get_agent().config_manager.set_path("agent.model", value, save=True)
|
|
@@ -165,6 +168,7 @@ def model(value=None):
|
|
|
165
168
|
|
|
166
169
|
@command
|
|
167
170
|
def reasoning(value=None):
|
|
171
|
+
"""Show or update the reasoning effort config shortcut."""
|
|
168
172
|
agent = get_agent()
|
|
169
173
|
if value is None:
|
|
170
174
|
return f"reasoning: {agent.config.get('reasoning')!r}"
|
|
@@ -177,6 +181,7 @@ def reasoning(value=None):
|
|
|
177
181
|
|
|
178
182
|
@command
|
|
179
183
|
def verbosity(value=None):
|
|
184
|
+
"""Show or update the text verbosity config shortcut."""
|
|
180
185
|
agent = get_agent()
|
|
181
186
|
if value is None:
|
|
182
187
|
return f"text: {agent.config.get('text')!r}"
|
|
@@ -48,6 +48,7 @@ def read_prompt(args, extra_args):
|
|
|
48
48
|
|
|
49
49
|
|
|
50
50
|
def with_runner(args, callback):
|
|
51
|
+
"""Start the selected runner, invoke a callback, and stop it if needed."""
|
|
51
52
|
runner = runner_from_args(args).start()
|
|
52
53
|
try:
|
|
53
54
|
return callback(runner)
|
|
@@ -57,12 +58,14 @@ def with_runner(args, callback):
|
|
|
57
58
|
|
|
58
59
|
|
|
59
60
|
def run_status(args, extra_args=None):
|
|
61
|
+
"""Fetch and print agent runtime status."""
|
|
60
62
|
payload = with_runner(args, lambda runner: runner.get_status())
|
|
61
63
|
output_payload(payload, fmt=output_format(args), text_formatter=key_value_text)
|
|
62
64
|
return payload
|
|
63
65
|
|
|
64
66
|
|
|
65
67
|
def run_tools(args, extra_args=None):
|
|
68
|
+
"""Fetch and print registered tool names or metadata."""
|
|
66
69
|
payload = with_runner(args, lambda runner: runner.tools())
|
|
67
70
|
|
|
68
71
|
def format_tools(data):
|
|
@@ -94,6 +97,7 @@ def parse_config_set_args(extra_args):
|
|
|
94
97
|
|
|
95
98
|
|
|
96
99
|
def run_config(args, extra_args=None):
|
|
100
|
+
"""Run `config get` or `config set` through the selected runner."""
|
|
97
101
|
extra_args = list(extra_args or [])
|
|
98
102
|
command = extra_args[0] if extra_args else "get"
|
|
99
103
|
if command == "get":
|
|
@@ -149,6 +153,7 @@ def run_sessions(args, extra_args=None):
|
|
|
149
153
|
|
|
150
154
|
|
|
151
155
|
def run_interrupt(args, extra_args=None):
|
|
156
|
+
"""Ask the active runtime to interrupt the current turn."""
|
|
152
157
|
reason = " ".join(extra_args or []).strip() or "cli"
|
|
153
158
|
payload = with_runner(args, lambda runner: runner.interrupt(reason=reason))
|
|
154
159
|
output_payload(payload, fmt=output_format(args), text_formatter=key_value_text)
|
|
@@ -53,6 +53,7 @@ def build_root_parser():
|
|
|
53
53
|
|
|
54
54
|
|
|
55
55
|
def print_root_help():
|
|
56
|
+
"""Print help for the public root CLI parser."""
|
|
56
57
|
build_root_parser().print_help()
|
|
57
58
|
|
|
58
59
|
|
|
@@ -97,6 +98,7 @@ def _detached_start(name, args):
|
|
|
97
98
|
|
|
98
99
|
|
|
99
100
|
def start_service(name, args):
|
|
101
|
+
"""Start a supported service in foreground or detached mode."""
|
|
100
102
|
parsed, extra = _parse_connection_args(args)
|
|
101
103
|
if extra:
|
|
102
104
|
raise SystemExit(f"unrecognized arguments: {' '.join(extra)}")
|
|
@@ -120,18 +122,21 @@ def start_service(name, args):
|
|
|
120
122
|
|
|
121
123
|
|
|
122
124
|
def stop_service(name, args=None):
|
|
125
|
+
"""Stop a supported user service without requiring it to be active."""
|
|
123
126
|
if name not in SERVICE_UNITS:
|
|
124
127
|
raise SystemExit(f"usage: codex-agent stop {{{','.join(SERVICE_UNITS)}}}")
|
|
125
128
|
service_controller().run("stop", SERVICE_UNITS[name], check=False)
|
|
126
129
|
|
|
127
130
|
|
|
128
131
|
def restart_service(name, args=None):
|
|
132
|
+
"""Restart a supported user service via the platform controller."""
|
|
129
133
|
if name not in SERVICE_UNITS:
|
|
130
134
|
raise SystemExit(f"usage: codex-agent restart {{{','.join(SERVICE_UNITS)}}}")
|
|
131
135
|
service_controller().restart(SERVICE_UNITS[name], check=False)
|
|
132
136
|
|
|
133
137
|
|
|
134
138
|
def open_interface(name, args):
|
|
139
|
+
"""Ask the local server to open a supported interactive interface."""
|
|
135
140
|
if name != "tui":
|
|
136
141
|
raise SystemExit("usage: codex-agent open {tui}")
|
|
137
142
|
parsed, extra = _parse_connection_args(args)
|
|
@@ -146,6 +151,7 @@ def open_interface(name, args):
|
|
|
146
151
|
|
|
147
152
|
|
|
148
153
|
def close_interface(name, args):
|
|
154
|
+
"""Ask the local server to close a supported interactive interface."""
|
|
149
155
|
if name != "tui":
|
|
150
156
|
raise SystemExit("usage: codex-agent close {tui}")
|
|
151
157
|
parsed, extra = _parse_connection_args(args)
|
|
@@ -45,6 +45,8 @@ class StreamManager:
|
|
|
45
45
|
|
|
46
46
|
|
|
47
47
|
class AgentStream:
|
|
48
|
+
"""Iterator over live agent events for one submitted prompt or turn."""
|
|
49
|
+
|
|
48
50
|
def __init__(self, agent, prompt=None):
|
|
49
51
|
self.agent = agent
|
|
50
52
|
self.prompt = prompt
|
|
@@ -58,6 +60,7 @@ class AgentStream:
|
|
|
58
60
|
self._monitor_thread = None
|
|
59
61
|
|
|
60
62
|
def start(self):
|
|
63
|
+
"""Submit the stream turn and start forwarding emitted events."""
|
|
61
64
|
self.mainloop_was_running = self.agent.mainloop_manager.thread is not None and self.agent.mainloop_manager.thread.is_alive()
|
|
62
65
|
self._handler = self.agent.on("*", self._on_event)
|
|
63
66
|
try:
|
|
@@ -105,6 +108,7 @@ class AgentStream:
|
|
|
105
108
|
|
|
106
109
|
@property
|
|
107
110
|
def turn(self):
|
|
111
|
+
"""Return the completed turn once the stream future resolves."""
|
|
108
112
|
return self.future.wait()
|
|
109
113
|
|
|
110
114
|
def __iter__(self):
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.1.77"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.1.75"
|
|
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
|
|
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.75 → codex_agent_framework-0.1.77}/codex_agent/get_text/__init__.py
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/get_text/default_gitignore
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/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
|
|
File without changes
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/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.75 → codex_agent_framework-0.1.77}/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
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/codex_agent/tui/stream_debug.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
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_audio_hooks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_environment.py
RENAMED
|
File without changes
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/tests/test_agent_image_generation.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{codex_agent_framework-0.1.75 → codex_agent_framework-0.1.77}/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.75 → codex_agent_framework-0.1.77}/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
|
|
File without changes
|