DanielWalnut
c6cdf200ce
feat(sandbox): add built-in grep and glob tools (#1784)
* feat(sandbox): add grep and glob tools
* refactor(aio-sandbox): use native file search APIs
* fix(sandbox): address review issues in grep/glob tools
- aio_sandbox: use should_ignore_path() instead of should_ignore_name()
for include_dirs=True branch to filter nested ignored paths correctly
- aio_sandbox: add early exit when max_results reached in glob loop
- aio_sandbox: guard entry.path.startswith(path) before stripping prefix
- aio_sandbox: validate regex locally before sending to remote API
- search: skip lines exceeding max_line_chars to prevent ReDoS
- search: remove resolve() syscall in os.walk loop
- tools: avoid double get_thread_data() call in glob_tool/grep_tool
- tests: add 6 new cases covering the above code paths
- tests: patch get_app_config in truncation test to isolate config
* Fix sandbox grep/glob review feedback
* Remove unrelated Langfuse RFC from PR
2026-04-03 16:03:06 +08:00
..
2026-03-24 00:36:08 +08:00
2026-03-26 00:14:08 +08:00
2026-03-24 00:36:08 +08:00
2026-03-29 21:52:28 +08:00
2026-04-02 15:02:09 +08:00
2026-03-14 22:55:52 +08:00
2026-03-23 18:07:33 +08:00
2026-03-14 22:55:52 +08:00
2026-03-01 22:38:58 +08:00
2026-03-14 22:55:52 +08:00
2026-03-13 14:37:40 +08:00
2026-03-29 23:53:23 +08:00
2026-03-29 23:53:23 +08:00
2026-03-29 15:31:18 +08:00
2026-03-14 22:55:52 +08:00
2026-03-14 22:55:52 +08:00
2026-02-01 22:18:25 +08:00
2026-03-29 15:31:18 +08:00
2026-03-25 16:28:33 +08:00
2026-04-03 16:03:06 +08:00
2026-03-27 22:44:01 +08:00
2026-03-14 22:55:52 +08:00
2026-03-14 22:55:52 +08:00
2026-03-29 21:52:28 +08:00
2026-03-14 22:55:52 +08:00