diff --git a/openhands-sdk/openhands/sdk/__init__.py b/openhands-sdk/openhands/sdk/__init__.py index cdb58d9d62..0b29a2e0fd 100644 --- a/openhands-sdk/openhands/sdk/__init__.py +++ b/openhands-sdk/openhands/sdk/__init__.py @@ -39,6 +39,7 @@ TextContent, ThinkingBlock, TokenCallbackType, + TokenUsage, ) from openhands.sdk.logger import get_logger from openhands.sdk.mcp import ( @@ -64,7 +65,9 @@ register_tool, resolve_tool, ) +from openhands.sdk.utils import page_iterator from openhands.sdk.workspace import ( + AsyncRemoteWorkspace, LocalWorkspace, RemoteWorkspace, Workspace, @@ -86,6 +89,7 @@ "LLMStreamChunk", "FallbackStrategy", "TokenCallbackType", + "TokenUsage", "ConversationStats", "RegistryEvent", "Message", @@ -125,6 +129,7 @@ "Workspace", "LocalWorkspace", "RemoteWorkspace", + "AsyncRemoteWorkspace", "register_agent", "load_project_agents", "load_user_agents", @@ -133,5 +138,6 @@ "load_project_skills", "load_skills_from_dir", "load_user_skills", + "page_iterator", "__version__", ] diff --git a/openhands-sdk/openhands/sdk/llm/__init__.py b/openhands-sdk/openhands/sdk/llm/__init__.py index f50815b622..5f007037a8 100644 --- a/openhands-sdk/openhands/sdk/llm/__init__.py +++ b/openhands-sdk/openhands/sdk/llm/__init__.py @@ -21,7 +21,7 @@ ) from openhands.sdk.llm.router import RouterLLM from openhands.sdk.llm.streaming import LLMStreamChunk, TokenCallbackType -from openhands.sdk.llm.utils.metrics import Metrics, MetricsSnapshot +from openhands.sdk.llm.utils.metrics import Metrics, MetricsSnapshot, TokenUsage from openhands.sdk.llm.utils.unverified_models import ( UNVERIFIED_MODELS_EXCLUDING_BEDROCK, get_unverified_models, @@ -58,6 +58,7 @@ # Metrics "Metrics", "MetricsSnapshot", + "TokenUsage", # Models "VERIFIED_MODELS", "UNVERIFIED_MODELS_EXCLUDING_BEDROCK", diff --git a/openhands-sdk/openhands/sdk/utils/__init__.py b/openhands-sdk/openhands/sdk/utils/__init__.py index 328d3c91ba..0316a52296 100644 --- a/openhands-sdk/openhands/sdk/utils/__init__.py +++ b/openhands-sdk/openhands/sdk/utils/__init__.py @@ -6,6 +6,7 @@ warn_deprecated, ) from .github import sanitize_openhands_mentions +from .paging import page_iterator from .truncate import ( DEFAULT_TEXT_CONTENT_LIMIT, DEFAULT_TRUNCATE_NOTICE, @@ -20,5 +21,6 @@ "deprecated", "warn_deprecated", "sanitize_openhands_mentions", + "page_iterator", "sanitized_env", ] diff --git a/openhands-sdk/openhands/sdk/workspace/__init__.py b/openhands-sdk/openhands/sdk/workspace/__init__.py index 6760c8aa58..d0008a6b03 100644 --- a/openhands-sdk/openhands/sdk/workspace/__init__.py +++ b/openhands-sdk/openhands/sdk/workspace/__init__.py @@ -1,11 +1,12 @@ from .base import BaseWorkspace from .local import LocalWorkspace from .models import CommandResult, FileOperationResult, PlatformType, TargetType -from .remote import RemoteWorkspace +from .remote import AsyncRemoteWorkspace, RemoteWorkspace from .workspace import Workspace __all__ = [ + "AsyncRemoteWorkspace", "BaseWorkspace", "CommandResult", "FileOperationResult", diff --git a/openhands-sdk/openhands/sdk/workspace/remote/__init__.py b/openhands-sdk/openhands/sdk/workspace/remote/__init__.py index 4794c76631..84fd241e22 100644 --- a/openhands-sdk/openhands/sdk/workspace/remote/__init__.py +++ b/openhands-sdk/openhands/sdk/workspace/remote/__init__.py @@ -1,8 +1,10 @@ """Remote workspace implementations.""" +from .async_remote_workspace import AsyncRemoteWorkspace from .base import RemoteWorkspace __all__ = [ + "AsyncRemoteWorkspace", "RemoteWorkspace", ]