## Summary What changed and why? ## Change Type - [ ] Cowork feature - [ ] Bug fix - [ ] Core AI contribution - [ ] Test / hardening - [ ] Performance - [ ] Documentation ## Related Work Cowork Task: Core Repo: http://34.143.229.138/gitea-admin/fsg-ai-core-assets Core AI Issue: Core Task: Related PR: ## Scope What is intentionally included? What is intentionally NOT included? ## Validation - [ ] Unit tests - [ ] Integration tests - [ ] Manual verification - [ ] Regression check Commands / evidence: ## Security Impact Permission / credential / network / customer data impact: ## Compatibility - [ ] No breaking change - [ ] Breaking change documented ## Reviewer Notes Anything Cowork reviewers should pay attention to. --------- Co-authored-by: thanhnv <thanhnv.ip@gmail.com> Co-authored-by: Vu Dam Tuan <vudt15@fpt.com> Reviewed-on: #9
This commit was merged in pull request #9.
This commit is contained in:
@@ -74,6 +74,14 @@ class CoreToolRuntime:
|
||||
đều phải tra tên, tra trên danh sách sẽ chậm dần theo số tool.
|
||||
"""
|
||||
self._output_dir = Path(output_dir)
|
||||
# Every sandboxed tool (run_command included) gets this as its cwd —
|
||||
# it must exist BEFORE the first tool call, same as the older
|
||||
# run_cowork() (core/chat_agent.py) already does at its output_dir.
|
||||
# Without this, a per-turn ".turns/<id>" folder that was never created
|
||||
# makes run_command's subprocess.Popen(cwd=...) fail immediately with
|
||||
# WinError 267 ("directory name is invalid") before the command even
|
||||
# starts — no network, no output, just an opaque OS error.
|
||||
self._output_dir.mkdir(parents=True, exist_ok=True)
|
||||
self._title = title
|
||||
self._extra_tools = list(extra_tools or ())
|
||||
self._extra_names = {getattr(t, "name", "") for t in self._extra_tools}
|
||||
|
||||
Reference in New Issue
Block a user