Skip to main content

File, shell, and web tools for exoclaw — filesystem subset is MicroPython-compat

Project description

exoclaw-tools-workspace

File system, shell, and web tools implementing the exoclaw ToolBase protocol — read/write/edit files, list directories, execute shell commands, search the web, and fetch URLs.

Install

pip install exoclaw-tools-workspace

Usage

from pathlib import Path
from exoclaw_tools_workspace.filesystem import ReadFileTool, WriteFileTool, EditFileTool, ListDirTool
from exoclaw_tools_workspace.shell import ExecTool
from exoclaw_tools_workspace.web import WebSearchTool, WebFetchTool

workspace = Path("~/.nanobot/workspace").expanduser()

tools = [
    ReadFileTool(workspace=workspace),
    WriteFileTool(workspace=workspace),
    EditFileTool(workspace=workspace),
    ListDirTool(workspace=workspace),
    ExecTool(timeout=30, working_dir=str(workspace)),
    WebSearchTool(api_key="..."),   # Brave Search API key, or set BRAVE_API_KEY
    WebFetchTool(),
]

All tools accept an optional allowed_dir to restrict file operations to within a directory. ExecTool ships with a built-in deny-list of destructive shell patterns.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

exoclaw_tools_workspace-0.6.0.tar.gz (14.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

exoclaw_tools_workspace-0.6.0-py3-none-any.whl (17.0 kB view details)

Uploaded Python 3

File details

Details for the file exoclaw_tools_workspace-0.6.0.tar.gz.

File metadata

  • Download URL: exoclaw_tools_workspace-0.6.0.tar.gz
  • Upload date:
  • Size: 14.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for exoclaw_tools_workspace-0.6.0.tar.gz
Algorithm Hash digest
SHA256 d72780ec9c7245e7c67be0fbb68f7cb7039cee1a192d90cb0be7fe318911dc74
MD5 9e58a496223bf3706da6d9116082c4fa
BLAKE2b-256 604fbc4b33ecfb97b8d9dd4c8327069a23e224d226eaea5e56b905da40a256a1

See more details on using hashes here.

File details

Details for the file exoclaw_tools_workspace-0.6.0-py3-none-any.whl.

File metadata

  • Download URL: exoclaw_tools_workspace-0.6.0-py3-none-any.whl
  • Upload date:
  • Size: 17.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for exoclaw_tools_workspace-0.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e5a0f27134c2efe325d4ab8cf57cf55d035931b8dd6d95434b10613eb09c731f
MD5 a64800195d688678b580ef2f1a422564
BLAKE2b-256 04e88e0517509d0b05c21bc99095ef9d4a645dbedf74a610b57aa4eee4b440bc

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page