mirror of
https://github.com/OpenHands/OpenHands.git
synced 2025-12-26 05:48:36 +08:00
* initialize plugin definition * initialize plugin definition * simplify mixin * further improve plugin mixin * add cache dir for pip * support clean up cache * add script for setup jupyter and execution server * integrate JupyterRequirement to ssh_box * source bashrc at the end of plugin load * add execute_cli that accept code via stdin * make JUPYTER_EXEC_SERVER_PORT configurable via env var * increase background cmd sleep time * Update opendevin/sandbox/plugins/mixin.py Co-authored-by: Robert Brennan <accounts@rbren.io> * add mixin to base class * make jupyter requirement a dataclass * source plugins only when >0 requirements * add `sandbox_plugins` for each agent & have controller take care of it * update build.sh to make logs available in /opendevin/logs * switch to use config for lib and cache dir * fix permission issue with /workspace * use python to implement execute_cli to avoid stdin escape issue * wait until jupyter is avaialble * support plugin via copying instead of mounting --------- Co-authored-by: Robert Brennan <accounts@rbren.io>
13 lines
311 B
Python
13 lines
311 B
Python
from dataclasses import dataclass
|
|
|
|
|
|
@dataclass
|
|
class PluginRequirement:
|
|
"""Requirement for a plugin."""
|
|
name: str
|
|
# FOLDER/FILES to be copied to the sandbox
|
|
host_src: str
|
|
sandbox_dest: str
|
|
# NOTE: bash_script_path shoulds be relative to the `sandbox_dest` path
|
|
bash_script_path: str
|