picoclaw/pkg/tools
yuchou87 a2591e03a9 fix: improve MCP tool name collision safety and registry overwrite warning
- MCPTool.Name(): append FNV-32a hash of original (unsanitized) server+tool
  names whenever sanitization is lossy or total length exceeds 64 chars,
  ensuring names that differ only in disallowed characters remain distinct
- ToolRegistry.Register(): emit warn log when a tool registration overwrites
  an existing tool with the same name, making collisions observable
- scripts/test-docker-mcp.sh: switch shebang from #/bin/bash /Users/yuchou/Work/klook-calendar/klook-google-cal-sync/src/googlecalconversrv/bin/start.sh to #  for portability on minimal distros and Nix environments
2026-03-01 12:00:26 +08:00
..
base.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
cron.go fix: address PR #662 review comments (bus drain, context timeouts, onebot leak) 2026-02-23 21:34:37 +08:00
edit.go fix(security): workspace sandbox avoid time-of-check/time-of-use (TOCTOU) races (#464) 2026-02-23 20:09:53 +11:00
edit_test.go fix(security): workspace sandbox avoid time-of-check/time-of-use (TOCTOU) races (#464) 2026-02-23 20:09:53 +11:00
filesystem.go refactor(pkg): move atomic file write to dedicated fileutil package 2026-02-24 23:57:13 +08:00
filesystem_test.go fix(security): workspace sandbox avoid time-of-check/time-of-use (TOCTOU) races (#464) 2026-02-23 20:09:53 +11:00
i2c.go refactor: cleanup dead code and turn on dead code detection in CI (#515) 2026-02-24 21:52:25 +08:00
i2c_linux.go feat(linter): Fix govet linter 2026-02-20 22:35:16 +02:00
i2c_other.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
mcp_tool.go fix: improve MCP tool name collision safety and registry overwrite warning 2026-03-01 12:00:26 +08:00
mcp_tool_test.go chore: fix lint issues in mcp and agent packages 2026-03-01 08:53:13 +08:00
message.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
message_test.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
registry.go fix: improve MCP tool name collision safety and registry overwrite warning 2026-03-01 12:00:26 +08:00
registry_test.go feat: integrate Tavily search (#340) 2026-02-23 00:30:14 +08:00
result.go feat(channels): add MediaSender optional interface for outbound media 2026-02-23 03:10:57 +08:00
result_test.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
shell.go enable wastedassign 2026-02-25 21:31:07 +11:00
shell_process_unix.go fix(exec): terminate process tree on timeout 2026-02-18 02:01:29 +08:00
shell_process_windows.go fix(exec): terminate process tree on timeout 2026-02-18 02:01:29 +08:00
shell_test.go fix: golangci-lint run --fix 2026-02-21 16:20:15 +08:00
shell_timeout_unix_test.go feat(fmt): Fix formatting 2026-02-20 20:03:11 +02:00
skills_install.go refactor(pkg): move atomic file write to dedicated fileutil package 2026-02-24 23:57:13 +08:00
skills_install_test.go feat(fmt): Fix formatting 2026-02-20 20:03:11 +02:00
skills_search.go feat(fmt): Fix formatting 2026-02-20 20:03:11 +02:00
skills_search_test.go feat(fmt): Fix formatting 2026-02-20 20:03:11 +02:00
spawn.go fix: reject empty task in spawn tool (#740) 2026-02-25 07:39:49 +11:00
spawn_test.go fix: reject empty task in spawn tool (#740) 2026-02-25 07:39:49 +11:00
spi.go refactor: cleanup dead code and turn on dead code detection in CI (#515) 2026-02-24 21:52:25 +08:00
spi_linux.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
spi_other.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
subagent.go enable misspell 2026-02-25 21:14:19 +11:00
subagent_tool_test.go feat(fmt): Fix formatting 2026-02-19 22:05:15 +02:00
toolloop.go Merge branch 'main' into fix-formatting 2026-02-20 20:02:53 +02:00
types.go feat(fmt): Run formatters 2026-02-18 21:48:23 +02:00
web.go Perf/precompile regex (#687) 2026-02-26 20:44:03 +11:00
web_test.go feat: improve web proxy handling and coverage 2026-02-24 17:17:14 +08:00