agentpool 2.1.9__py3-none-any.whl → 2.5.0__py3-none-any.whl
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.
- acp/__init__.py +13 -4
- acp/acp_requests.py +20 -77
- acp/agent/connection.py +8 -0
- acp/agent/implementations/debug_server/debug_server.py +6 -2
- acp/agent/protocol.py +6 -0
- acp/bridge/README.md +15 -2
- acp/bridge/__init__.py +3 -2
- acp/bridge/__main__.py +60 -19
- acp/bridge/ws_server.py +173 -0
- acp/bridge/ws_server_cli.py +89 -0
- acp/client/connection.py +38 -29
- acp/client/implementations/default_client.py +3 -2
- acp/client/implementations/headless_client.py +2 -2
- acp/connection.py +2 -2
- acp/notifications.py +20 -50
- acp/schema/__init__.py +2 -0
- acp/schema/agent_responses.py +21 -0
- acp/schema/client_requests.py +3 -3
- acp/schema/session_state.py +63 -29
- acp/stdio.py +39 -9
- acp/task/supervisor.py +2 -2
- acp/transports.py +362 -2
- acp/utils.py +17 -4
- agentpool/__init__.py +6 -1
- agentpool/agents/__init__.py +2 -0
- agentpool/agents/acp_agent/acp_agent.py +407 -277
- agentpool/agents/acp_agent/acp_converters.py +196 -38
- agentpool/agents/acp_agent/client_handler.py +191 -26
- agentpool/agents/acp_agent/session_state.py +17 -6
- agentpool/agents/agent.py +607 -572
- agentpool/agents/agui_agent/__init__.py +0 -2
- agentpool/agents/agui_agent/agui_agent.py +176 -110
- agentpool/agents/agui_agent/agui_converters.py +0 -131
- agentpool/agents/agui_agent/helpers.py +3 -4
- agentpool/agents/base_agent.py +632 -17
- agentpool/agents/claude_code_agent/FORKING.md +191 -0
- agentpool/agents/claude_code_agent/__init__.py +13 -1
- agentpool/agents/claude_code_agent/claude_code_agent.py +1058 -291
- agentpool/agents/claude_code_agent/converters.py +74 -143
- agentpool/agents/claude_code_agent/history.py +474 -0
- agentpool/agents/claude_code_agent/models.py +77 -0
- agentpool/agents/claude_code_agent/static_info.py +100 -0
- agentpool/agents/claude_code_agent/usage.py +242 -0
- agentpool/agents/context.py +40 -0
- agentpool/agents/events/__init__.py +24 -0
- agentpool/agents/events/builtin_handlers.py +67 -1
- agentpool/agents/events/event_emitter.py +32 -2
- agentpool/agents/events/events.py +104 -3
- agentpool/agents/events/infer_info.py +145 -0
- agentpool/agents/events/processors.py +254 -0
- agentpool/agents/interactions.py +41 -6
- agentpool/agents/modes.py +67 -0
- agentpool/agents/slashed_agent.py +5 -4
- agentpool/agents/tool_call_accumulator.py +213 -0
- agentpool/agents/tool_wrapping.py +18 -6
- agentpool/common_types.py +56 -21
- agentpool/config_resources/__init__.py +38 -1
- agentpool/config_resources/acp_assistant.yml +2 -2
- agentpool/config_resources/agents.yml +3 -0
- agentpool/config_resources/agents_template.yml +1 -0
- agentpool/config_resources/claude_code_agent.yml +10 -6
- agentpool/config_resources/external_acp_agents.yml +2 -1
- agentpool/delegation/base_team.py +4 -30
- agentpool/delegation/pool.py +136 -289
- agentpool/delegation/team.py +58 -57
- agentpool/delegation/teamrun.py +51 -55
- agentpool/diagnostics/__init__.py +53 -0
- agentpool/diagnostics/lsp_manager.py +1593 -0
- agentpool/diagnostics/lsp_proxy.py +41 -0
- agentpool/diagnostics/lsp_proxy_script.py +229 -0
- agentpool/diagnostics/models.py +398 -0
- agentpool/functional/run.py +10 -4
- agentpool/mcp_server/__init__.py +0 -2
- agentpool/mcp_server/client.py +76 -32
- agentpool/mcp_server/conversions.py +54 -13
- agentpool/mcp_server/manager.py +34 -54
- agentpool/mcp_server/registries/official_registry_client.py +35 -1
- agentpool/mcp_server/tool_bridge.py +186 -139
- agentpool/messaging/__init__.py +0 -2
- agentpool/messaging/compaction.py +72 -197
- agentpool/messaging/connection_manager.py +11 -10
- agentpool/messaging/event_manager.py +5 -5
- agentpool/messaging/message_container.py +6 -30
- agentpool/messaging/message_history.py +99 -8
- agentpool/messaging/messagenode.py +52 -14
- agentpool/messaging/messages.py +54 -35
- agentpool/messaging/processing.py +12 -22
- agentpool/models/__init__.py +1 -1
- agentpool/models/acp_agents/base.py +6 -24
- agentpool/models/acp_agents/mcp_capable.py +126 -157
- agentpool/models/acp_agents/non_mcp.py +129 -95
- agentpool/models/agents.py +98 -76
- agentpool/models/agui_agents.py +1 -1
- agentpool/models/claude_code_agents.py +144 -19
- agentpool/models/file_parsing.py +0 -1
- agentpool/models/manifest.py +113 -50
- agentpool/prompts/conversion_manager.py +1 -1
- agentpool/prompts/prompts.py +5 -2
- agentpool/repomap.py +1 -1
- agentpool/resource_providers/__init__.py +11 -1
- agentpool/resource_providers/aggregating.py +56 -5
- agentpool/resource_providers/base.py +70 -4
- agentpool/resource_providers/codemode/code_executor.py +72 -5
- agentpool/resource_providers/codemode/helpers.py +2 -2
- agentpool/resource_providers/codemode/provider.py +64 -12
- agentpool/resource_providers/codemode/remote_mcp_execution.py +2 -2
- agentpool/resource_providers/codemode/remote_provider.py +9 -12
- agentpool/resource_providers/filtering.py +3 -1
- agentpool/resource_providers/mcp_provider.py +89 -12
- agentpool/resource_providers/plan_provider.py +228 -46
- agentpool/resource_providers/pool.py +7 -3
- agentpool/resource_providers/resource_info.py +111 -0
- agentpool/resource_providers/static.py +4 -2
- agentpool/sessions/__init__.py +4 -1
- agentpool/sessions/manager.py +33 -5
- agentpool/sessions/models.py +59 -6
- agentpool/sessions/protocol.py +28 -0
- agentpool/sessions/session.py +11 -55
- agentpool/skills/registry.py +13 -8
- agentpool/storage/manager.py +572 -49
- agentpool/talk/registry.py +4 -4
- agentpool/talk/talk.py +9 -10
- agentpool/testing.py +538 -20
- agentpool/tool_impls/__init__.py +6 -0
- agentpool/tool_impls/agent_cli/__init__.py +42 -0
- agentpool/tool_impls/agent_cli/tool.py +95 -0
- agentpool/tool_impls/bash/__init__.py +64 -0
- agentpool/tool_impls/bash/helpers.py +35 -0
- agentpool/tool_impls/bash/tool.py +171 -0
- agentpool/tool_impls/delete_path/__init__.py +70 -0
- agentpool/tool_impls/delete_path/tool.py +142 -0
- agentpool/tool_impls/download_file/__init__.py +80 -0
- agentpool/tool_impls/download_file/tool.py +183 -0
- agentpool/tool_impls/execute_code/__init__.py +55 -0
- agentpool/tool_impls/execute_code/tool.py +163 -0
- agentpool/tool_impls/grep/__init__.py +80 -0
- agentpool/tool_impls/grep/tool.py +200 -0
- agentpool/tool_impls/list_directory/__init__.py +73 -0
- agentpool/tool_impls/list_directory/tool.py +197 -0
- agentpool/tool_impls/question/__init__.py +42 -0
- agentpool/tool_impls/question/tool.py +127 -0
- agentpool/tool_impls/read/__init__.py +104 -0
- agentpool/tool_impls/read/tool.py +305 -0
- agentpool/tools/__init__.py +2 -1
- agentpool/tools/base.py +114 -34
- agentpool/tools/manager.py +57 -1
- agentpool/ui/base.py +2 -2
- agentpool/ui/mock_provider.py +2 -2
- agentpool/ui/stdlib_provider.py +2 -2
- agentpool/utils/file_watcher.py +269 -0
- agentpool/utils/identifiers.py +121 -0
- agentpool/utils/pydantic_ai_helpers.py +46 -0
- agentpool/utils/streams.py +616 -2
- agentpool/utils/subprocess_utils.py +155 -0
- agentpool/utils/token_breakdown.py +461 -0
- agentpool/vfs_registry.py +7 -2
- {agentpool-2.1.9.dist-info → agentpool-2.5.0.dist-info}/METADATA +41 -27
- agentpool-2.5.0.dist-info/RECORD +579 -0
- {agentpool-2.1.9.dist-info → agentpool-2.5.0.dist-info}/WHEEL +1 -1
- agentpool_cli/__main__.py +24 -0
- agentpool_cli/create.py +1 -1
- agentpool_cli/serve_acp.py +100 -21
- agentpool_cli/serve_agui.py +87 -0
- agentpool_cli/serve_opencode.py +119 -0
- agentpool_cli/ui.py +557 -0
- agentpool_commands/__init__.py +42 -5
- agentpool_commands/agents.py +75 -2
- agentpool_commands/history.py +62 -0
- agentpool_commands/mcp.py +176 -0
- agentpool_commands/models.py +56 -3
- agentpool_commands/pool.py +260 -0
- agentpool_commands/session.py +1 -1
- agentpool_commands/text_sharing/__init__.py +119 -0
- agentpool_commands/text_sharing/base.py +123 -0
- agentpool_commands/text_sharing/github_gist.py +80 -0
- agentpool_commands/text_sharing/opencode.py +462 -0
- agentpool_commands/text_sharing/paste_rs.py +59 -0
- agentpool_commands/text_sharing/pastebin.py +116 -0
- agentpool_commands/text_sharing/shittycodingagent.py +112 -0
- agentpool_commands/tools.py +57 -0
- agentpool_commands/utils.py +80 -30
- agentpool_config/__init__.py +30 -2
- agentpool_config/agentpool_tools.py +498 -0
- agentpool_config/builtin_tools.py +77 -22
- agentpool_config/commands.py +24 -1
- agentpool_config/compaction.py +258 -0
- agentpool_config/converters.py +1 -1
- agentpool_config/event_handlers.py +42 -0
- agentpool_config/events.py +1 -1
- agentpool_config/forward_targets.py +1 -4
- agentpool_config/jinja.py +3 -3
- agentpool_config/mcp_server.py +132 -6
- agentpool_config/nodes.py +1 -1
- agentpool_config/observability.py +44 -0
- agentpool_config/session.py +0 -3
- agentpool_config/storage.py +82 -38
- agentpool_config/task.py +3 -3
- agentpool_config/tools.py +11 -22
- agentpool_config/toolsets.py +109 -233
- agentpool_server/a2a_server/agent_worker.py +307 -0
- agentpool_server/a2a_server/server.py +23 -18
- agentpool_server/acp_server/acp_agent.py +234 -181
- agentpool_server/acp_server/commands/acp_commands.py +151 -156
- agentpool_server/acp_server/commands/docs_commands/fetch_repo.py +18 -17
- agentpool_server/acp_server/event_converter.py +651 -0
- agentpool_server/acp_server/input_provider.py +53 -10
- agentpool_server/acp_server/server.py +24 -90
- agentpool_server/acp_server/session.py +173 -331
- agentpool_server/acp_server/session_manager.py +8 -34
- agentpool_server/agui_server/server.py +3 -1
- agentpool_server/mcp_server/server.py +5 -2
- agentpool_server/opencode_server/.rules +95 -0
- agentpool_server/opencode_server/ENDPOINTS.md +401 -0
- agentpool_server/opencode_server/OPENCODE_UI_TOOLS_COMPLETE.md +202 -0
- agentpool_server/opencode_server/__init__.py +19 -0
- agentpool_server/opencode_server/command_validation.py +172 -0
- agentpool_server/opencode_server/converters.py +975 -0
- agentpool_server/opencode_server/dependencies.py +24 -0
- agentpool_server/opencode_server/input_provider.py +421 -0
- agentpool_server/opencode_server/models/__init__.py +250 -0
- agentpool_server/opencode_server/models/agent.py +53 -0
- agentpool_server/opencode_server/models/app.py +72 -0
- agentpool_server/opencode_server/models/base.py +26 -0
- agentpool_server/opencode_server/models/common.py +23 -0
- agentpool_server/opencode_server/models/config.py +37 -0
- agentpool_server/opencode_server/models/events.py +821 -0
- agentpool_server/opencode_server/models/file.py +88 -0
- agentpool_server/opencode_server/models/mcp.py +44 -0
- agentpool_server/opencode_server/models/message.py +179 -0
- agentpool_server/opencode_server/models/parts.py +323 -0
- agentpool_server/opencode_server/models/provider.py +81 -0
- agentpool_server/opencode_server/models/pty.py +43 -0
- agentpool_server/opencode_server/models/question.py +56 -0
- agentpool_server/opencode_server/models/session.py +111 -0
- agentpool_server/opencode_server/routes/__init__.py +29 -0
- agentpool_server/opencode_server/routes/agent_routes.py +473 -0
- agentpool_server/opencode_server/routes/app_routes.py +202 -0
- agentpool_server/opencode_server/routes/config_routes.py +302 -0
- agentpool_server/opencode_server/routes/file_routes.py +571 -0
- agentpool_server/opencode_server/routes/global_routes.py +94 -0
- agentpool_server/opencode_server/routes/lsp_routes.py +319 -0
- agentpool_server/opencode_server/routes/message_routes.py +761 -0
- agentpool_server/opencode_server/routes/permission_routes.py +63 -0
- agentpool_server/opencode_server/routes/pty_routes.py +300 -0
- agentpool_server/opencode_server/routes/question_routes.py +128 -0
- agentpool_server/opencode_server/routes/session_routes.py +1276 -0
- agentpool_server/opencode_server/routes/tui_routes.py +139 -0
- agentpool_server/opencode_server/server.py +475 -0
- agentpool_server/opencode_server/state.py +151 -0
- agentpool_server/opencode_server/time_utils.py +8 -0
- agentpool_storage/__init__.py +12 -0
- agentpool_storage/base.py +184 -2
- agentpool_storage/claude_provider/ARCHITECTURE.md +433 -0
- agentpool_storage/claude_provider/__init__.py +42 -0
- agentpool_storage/claude_provider/provider.py +1089 -0
- agentpool_storage/file_provider.py +278 -15
- agentpool_storage/memory_provider.py +193 -12
- agentpool_storage/models.py +3 -0
- agentpool_storage/opencode_provider/ARCHITECTURE.md +386 -0
- agentpool_storage/opencode_provider/__init__.py +16 -0
- agentpool_storage/opencode_provider/helpers.py +414 -0
- agentpool_storage/opencode_provider/provider.py +895 -0
- agentpool_storage/project_store.py +325 -0
- agentpool_storage/session_store.py +26 -6
- agentpool_storage/sql_provider/__init__.py +4 -2
- agentpool_storage/sql_provider/models.py +48 -0
- agentpool_storage/sql_provider/sql_provider.py +269 -3
- agentpool_storage/sql_provider/utils.py +12 -13
- agentpool_storage/zed_provider/__init__.py +16 -0
- agentpool_storage/zed_provider/helpers.py +281 -0
- agentpool_storage/zed_provider/models.py +130 -0
- agentpool_storage/zed_provider/provider.py +442 -0
- agentpool_storage/zed_provider.py +803 -0
- agentpool_toolsets/__init__.py +0 -2
- agentpool_toolsets/builtin/__init__.py +2 -12
- agentpool_toolsets/builtin/code.py +96 -57
- agentpool_toolsets/builtin/debug.py +118 -48
- agentpool_toolsets/builtin/execution_environment.py +115 -230
- agentpool_toolsets/builtin/file_edit/file_edit.py +115 -7
- agentpool_toolsets/builtin/skills.py +9 -4
- agentpool_toolsets/builtin/subagent_tools.py +64 -51
- agentpool_toolsets/builtin/workers.py +4 -2
- agentpool_toolsets/composio_toolset.py +2 -2
- agentpool_toolsets/entry_points.py +3 -1
- agentpool_toolsets/fsspec_toolset/__init__.py +13 -1
- agentpool_toolsets/fsspec_toolset/diagnostics.py +860 -73
- agentpool_toolsets/fsspec_toolset/grep.py +99 -7
- agentpool_toolsets/fsspec_toolset/helpers.py +3 -2
- agentpool_toolsets/fsspec_toolset/image_utils.py +161 -0
- agentpool_toolsets/fsspec_toolset/toolset.py +500 -95
- agentpool_toolsets/mcp_discovery/__init__.py +5 -0
- agentpool_toolsets/mcp_discovery/data/mcp_servers.parquet +0 -0
- agentpool_toolsets/mcp_discovery/toolset.py +511 -0
- agentpool_toolsets/mcp_run_toolset.py +87 -12
- agentpool_toolsets/notifications.py +33 -33
- agentpool_toolsets/openapi.py +3 -1
- agentpool_toolsets/search_toolset.py +3 -1
- agentpool-2.1.9.dist-info/RECORD +0 -474
- agentpool_config/resources.py +0 -33
- agentpool_server/acp_server/acp_tools.py +0 -43
- agentpool_server/acp_server/commands/spawn.py +0 -210
- agentpool_storage/text_log_provider.py +0 -275
- agentpool_toolsets/builtin/agent_management.py +0 -239
- agentpool_toolsets/builtin/chain.py +0 -288
- agentpool_toolsets/builtin/history.py +0 -36
- agentpool_toolsets/builtin/integration.py +0 -85
- agentpool_toolsets/builtin/tool_management.py +0 -90
- agentpool_toolsets/builtin/user_interaction.py +0 -52
- agentpool_toolsets/semantic_memory_toolset.py +0 -536
- {agentpool-2.1.9.dist-info → agentpool-2.5.0.dist-info}/entry_points.txt +0 -0
- {agentpool-2.1.9.dist-info → agentpool-2.5.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"""PTY (Pseudo-Terminal) models."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Literal
|
|
6
|
+
|
|
7
|
+
from agentpool_server.opencode_server.models.base import OpenCodeBaseModel
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class PtyInfo(OpenCodeBaseModel):
|
|
11
|
+
"""PTY session information."""
|
|
12
|
+
|
|
13
|
+
id: str
|
|
14
|
+
title: str
|
|
15
|
+
command: str
|
|
16
|
+
args: list[str]
|
|
17
|
+
cwd: str
|
|
18
|
+
status: Literal["running", "exited"]
|
|
19
|
+
pid: int
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class PtyCreateRequest(OpenCodeBaseModel):
|
|
23
|
+
"""Request to create a PTY session."""
|
|
24
|
+
|
|
25
|
+
command: str | None = None
|
|
26
|
+
args: list[str] | None = None
|
|
27
|
+
cwd: str | None = None
|
|
28
|
+
title: str | None = None
|
|
29
|
+
env: dict[str, str] | None = None
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
class PtySize(OpenCodeBaseModel):
|
|
33
|
+
"""Terminal size."""
|
|
34
|
+
|
|
35
|
+
rows: int
|
|
36
|
+
cols: int
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
class PtyUpdateRequest(OpenCodeBaseModel):
|
|
40
|
+
"""Request to update a PTY session."""
|
|
41
|
+
|
|
42
|
+
title: str | None = None
|
|
43
|
+
size: PtySize | None = None
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
"""Question models for OpenCode compatibility."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from pydantic import Field
|
|
6
|
+
|
|
7
|
+
from agentpool_server.opencode_server.models.base import OpenCodeBaseModel
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class QuestionOption(OpenCodeBaseModel):
|
|
11
|
+
"""A single option for a question."""
|
|
12
|
+
|
|
13
|
+
label: str
|
|
14
|
+
"""Display text (1-5 words, concise)."""
|
|
15
|
+
|
|
16
|
+
description: str
|
|
17
|
+
"""Explanation of choice."""
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class QuestionInfo(OpenCodeBaseModel):
|
|
21
|
+
"""Information about a single question."""
|
|
22
|
+
|
|
23
|
+
question: str
|
|
24
|
+
"""Complete question."""
|
|
25
|
+
|
|
26
|
+
header: str = Field(max_length=12)
|
|
27
|
+
"""Very short label (max 12 chars)."""
|
|
28
|
+
|
|
29
|
+
options: list[QuestionOption]
|
|
30
|
+
"""Available choices."""
|
|
31
|
+
|
|
32
|
+
multiple: bool | None = None
|
|
33
|
+
"""Allow selecting multiple choices."""
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class QuestionRequest(OpenCodeBaseModel):
|
|
37
|
+
"""A pending question request."""
|
|
38
|
+
|
|
39
|
+
id: str
|
|
40
|
+
"""Unique question identifier."""
|
|
41
|
+
|
|
42
|
+
session_id: str
|
|
43
|
+
"""Session identifier."""
|
|
44
|
+
|
|
45
|
+
questions: list[QuestionInfo]
|
|
46
|
+
"""List of questions to ask."""
|
|
47
|
+
|
|
48
|
+
tool: dict[str, str] | None = None
|
|
49
|
+
"""Optional tool context: {message_id, call_id}."""
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class QuestionReply(OpenCodeBaseModel):
|
|
53
|
+
"""Reply to a question request."""
|
|
54
|
+
|
|
55
|
+
answers: list[list[str]]
|
|
56
|
+
"""User answers in order of questions (each answer is an array of selected labels)."""
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
"""Session related models."""
|
|
2
|
+
|
|
3
|
+
from __future__ import annotations
|
|
4
|
+
|
|
5
|
+
from typing import Any, Literal
|
|
6
|
+
|
|
7
|
+
from pydantic import Field
|
|
8
|
+
|
|
9
|
+
from agentpool_server.opencode_server.models.base import OpenCodeBaseModel
|
|
10
|
+
from agentpool_server.opencode_server.models.common import TimeCreatedUpdated # noqa: TC001
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class SessionSummary(OpenCodeBaseModel):
|
|
14
|
+
"""Summary information for a session."""
|
|
15
|
+
|
|
16
|
+
additions: int | None = None
|
|
17
|
+
deletions: int | None = None
|
|
18
|
+
files: int | None = None
|
|
19
|
+
diffs: list[Any] = Field(default_factory=list)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
class SessionRevert(OpenCodeBaseModel):
|
|
23
|
+
"""Revert information for a session."""
|
|
24
|
+
|
|
25
|
+
message_id: str
|
|
26
|
+
diff: str | None = None
|
|
27
|
+
part_id: str | None = None
|
|
28
|
+
snapshot: str | None = None
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
class SessionShare(OpenCodeBaseModel):
|
|
32
|
+
"""Share information for a session."""
|
|
33
|
+
|
|
34
|
+
url: str
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class Session(OpenCodeBaseModel):
|
|
38
|
+
"""Session information."""
|
|
39
|
+
|
|
40
|
+
id: str
|
|
41
|
+
project_id: str
|
|
42
|
+
directory: str
|
|
43
|
+
title: str
|
|
44
|
+
version: str = "1"
|
|
45
|
+
time: TimeCreatedUpdated
|
|
46
|
+
parent_id: str | None = None
|
|
47
|
+
summary: SessionSummary | None = None
|
|
48
|
+
revert: SessionRevert | None = None
|
|
49
|
+
share: SessionShare | None = None
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
class SessionCreateRequest(OpenCodeBaseModel):
|
|
53
|
+
"""Request body for creating a session."""
|
|
54
|
+
|
|
55
|
+
parent_id: str | None = None
|
|
56
|
+
title: str | None = None
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
class SessionUpdateRequest(OpenCodeBaseModel):
|
|
60
|
+
"""Request body for updating a session."""
|
|
61
|
+
|
|
62
|
+
title: str | None = None
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
class SessionForkRequest(OpenCodeBaseModel):
|
|
66
|
+
"""Request body for forking a session."""
|
|
67
|
+
|
|
68
|
+
message_id: str | None = None
|
|
69
|
+
"""Optional message ID to fork from. If provided, only messages up to and including
|
|
70
|
+
this message will be copied to the forked session. If None, all messages are copied."""
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
class SessionInitRequest(OpenCodeBaseModel):
|
|
74
|
+
"""Request body for initializing a session (creating AGENTS.md)."""
|
|
75
|
+
|
|
76
|
+
model_id: str | None = None
|
|
77
|
+
"""Optional model ID to use for the init task."""
|
|
78
|
+
|
|
79
|
+
provider_id: str | None = None
|
|
80
|
+
"""Optional provider ID to use for the init task."""
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
class SummarizeRequest(OpenCodeBaseModel):
|
|
84
|
+
"""Request body for summarizing a session.
|
|
85
|
+
|
|
86
|
+
Matches OpenCode's compaction API. If model info is provided, uses that model
|
|
87
|
+
for the summary generation. If 'auto' is True, automatically selects the model.
|
|
88
|
+
"""
|
|
89
|
+
|
|
90
|
+
model_id: str | None = None
|
|
91
|
+
"""Optional model ID to use for summary generation."""
|
|
92
|
+
|
|
93
|
+
provider_id: str | None = None
|
|
94
|
+
"""Optional provider ID to use for summary generation."""
|
|
95
|
+
|
|
96
|
+
auto: bool | None = None
|
|
97
|
+
"""If True, automatically select the model for summarization."""
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
class SessionStatus(OpenCodeBaseModel):
|
|
101
|
+
"""Status of a session."""
|
|
102
|
+
|
|
103
|
+
type: Literal["idle", "busy", "retry"] = "idle"
|
|
104
|
+
|
|
105
|
+
|
|
106
|
+
class Todo(OpenCodeBaseModel):
|
|
107
|
+
"""Todo item for a session."""
|
|
108
|
+
|
|
109
|
+
id: str
|
|
110
|
+
content: str
|
|
111
|
+
status: Literal["pending", "in_progress", "completed"] = "pending"
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"""Route handlers for the OpenCode API."""
|
|
2
|
+
|
|
3
|
+
from agentpool_server.opencode_server.routes.global_routes import router as global_router
|
|
4
|
+
from agentpool_server.opencode_server.routes.app_routes import router as app_router
|
|
5
|
+
from agentpool_server.opencode_server.routes.config_routes import router as config_router
|
|
6
|
+
from agentpool_server.opencode_server.routes.session_routes import router as session_router
|
|
7
|
+
from agentpool_server.opencode_server.routes.message_routes import router as message_router
|
|
8
|
+
from agentpool_server.opencode_server.routes.file_routes import router as file_router
|
|
9
|
+
from agentpool_server.opencode_server.routes.agent_routes import router as agent_router
|
|
10
|
+
from agentpool_server.opencode_server.routes.permission_routes import router as permission_router
|
|
11
|
+
from agentpool_server.opencode_server.routes.question_routes import router as question_router
|
|
12
|
+
from agentpool_server.opencode_server.routes.pty_routes import router as pty_router
|
|
13
|
+
from agentpool_server.opencode_server.routes.tui_routes import router as tui_router
|
|
14
|
+
from agentpool_server.opencode_server.routes.lsp_routes import router as lsp_router
|
|
15
|
+
|
|
16
|
+
__all__ = [
|
|
17
|
+
"agent_router",
|
|
18
|
+
"app_router",
|
|
19
|
+
"config_router",
|
|
20
|
+
"file_router",
|
|
21
|
+
"global_router",
|
|
22
|
+
"lsp_router",
|
|
23
|
+
"message_router",
|
|
24
|
+
"permission_router",
|
|
25
|
+
"pty_router",
|
|
26
|
+
"question_router",
|
|
27
|
+
"session_router",
|
|
28
|
+
"tui_router",
|
|
29
|
+
]
|