picoclaw/pkg/tools
Danieldd28 e20ac34f35 feat: add browser automation tool via agent-browser CLI
Integrate agent-browser CLI as a lightweight browser automation tool.
Instead of embedding browser dependencies, this wraps the external
agent-browser binary via exec.Command, keeping PicoClaw lean.

Changes:
- Add BrowserTool (pkg/tools/browser.go) wrapping agent-browser CLI
- Add BrowserConfig to config with enabled, session, headless, timeout, cdp_port
- Register browser tool conditionally in agent loop
- Add unit tests for argument building, command splitting, error handling

The tool accepts a single 'command' parameter and delegates to agent-browser.
Default CDP port is 9222. Zero new Go dependencies - all stdlib imports.
2026-02-16 22:38:02 +07:00
..
base.go feat: US-006 - Add AsyncCallback type and AsyncTool interface 2026-02-12 19:35:41 +08:00
browser.go feat: add browser automation tool via agent-browser CLI 2026-02-16 22:38:02 +07:00
browser_test.go feat: add browser automation tool via agent-browser CLI 2026-02-16 22:38:02 +07:00
cron.go fix: tighten file perms and enforce Slack ACL checks (#186) 2026-02-16 16:06:39 +08:00
edit.go Merge upstream/main into ralph/tool-result-refactor 2026-02-13 01:00:26 +08:00
edit_test.go Merge upstream/main into ralph/tool-result-refactor 2026-02-13 01:00:26 +08:00
filesystem.go fix(security): block critical symlink workspace escape (#188) 2026-02-16 16:20:35 +08:00
filesystem_test.go fix(security): block critical symlink workspace escape (#188) 2026-02-16 16:20:35 +08:00
i2c.go add I2C and SPI tools for hardware interaction (#140) 2026-02-14 16:53:17 +08:00
i2c_linux.go add I2C and SPI tools for hardware interaction (#140) 2026-02-14 16:53:17 +08:00
i2c_other.go add I2C and SPI tools for hardware interaction (#140) 2026-02-14 16:53:17 +08:00
message.go misc: fmt code 2026-02-13 17:51:47 +08:00
message_test.go feat: US-011 - Add MessageTool tests 2026-02-12 19:50:53 +08:00
registry.go refactor(tools): extract shared logic for internal channels and tool definitions 2026-02-13 15:05:16 +08:00
result.go feat: US-002 - Modify Tool interface to return *ToolResult 2026-02-12 19:28:56 +08:00
result_test.go feat: US-002 - Modify Tool interface to return *ToolResult 2026-02-12 19:28:56 +08:00
shell.go misc: fmt code 2026-02-13 17:51:47 +08:00
shell_test.go Merge upstream/main into ralph/tool-result-refactor 2026-02-13 01:00:26 +08:00
spawn.go fix: resolve code review issues in tool-result-refactor 2026-02-13 01:59:50 +08:00
spi.go add I2C and SPI tools for hardware interaction (#140) 2026-02-14 16:53:17 +08:00
spi_linux.go add I2C and SPI tools for hardware interaction (#140) 2026-02-14 16:53:17 +08:00
spi_other.go add I2C and SPI tools for hardware interaction (#140) 2026-02-14 16:53:17 +08:00
subagent.go misc: fmt code 2026-02-13 17:51:47 +08:00
subagent_tool_test.go refactor(heartbeat): add configurable interval and channel-aware routing 2026-02-13 11:13:32 +08:00
toolloop.go refactor(tools): extract shared logic for internal channels and tool definitions 2026-02-13 15:05:16 +08:00
types.go * First commit 2026-02-09 19:20:19 +08:00
web.go refactor: remove unused min func 2026-02-14 16:24:20 +08:00
web_test.go feat: add Codex CLI provider for subprocess integration (#80) 2026-02-16 11:40:17 +08:00