Skip to content

[Feature] Integrate TerminalToolkit with BaseRuntime module #3609

@CamelAIorg

Description

@CamelAIorg

Problem

TerminalToolkit implements its own Docker backend via use_docker_backend, but camel/runtimes/ already provides runtime abstractions: DockerRuntime, DaytonaRuntime, RemoteHttpRuntime, etc.

Proposal

Add runtime: Optional[BaseRuntime] parameter:

# Docker
toolkit = TerminalToolkit(runtime=DockerRuntime(image="python:3.10"))

# Daytona
toolkit = TerminalToolkit(runtime=DaytonaRuntime(...))

# Local (default)
toolkit = TerminalToolkit()

Benefits

  • Unified architecture, reuse existing runtime code
  • Support more execution environments
  • Remove ~100 lines of duplicated Docker code

Files

  • camel/toolkits/terminal_toolkit/terminal_toolkit.py
  • camel/runtimes/base.py

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

No status

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions