Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

grep_search: spurious "escapes workspace boundary" on first run in a directory with no .claw/ (Windows)

Aperta
#3,278 9 commenti 0 reazioni 0 assegnatari Vedi su GitHub

@SulimanAbdulrazzaq ci sta già lavorando.

Dal 9/8/2026.

  • #3286 di @SulimanAbdulrazzaq — aperta

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
68/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
rust

Direzione di ricerca

Start by reproducing the Windows fresh-directory case using the grep_search entry point, then trace its workspace-boundary check alongside first-run .claw/ initialization. Done means the first search succeeds in a directory without .claw/ and path containment works consistently for plain and extended-length Windows paths.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

On Windows, the first grep_search in a working directory that does not yet contain a .claw/ directory fails with a workspace-boundary error. The reported "escaping" path and the boundary path are the same path, differing only by the \?\ extended-length prefix — which suggests the boundary check compares a plain path against a canonicalized/extended path without normalizing the prefix first.

Once .claw/ exists in that directory, subsequent grep_search calls succeed. So this reads as an initialization-order race rather than a permanent failure.

Error

✗ grep_search
ExecutionError { message: "path C:\tmp\clawpath\normaldir escapes workspace boundary \\?\C:\tmp\clawpath\normaldir", source: None }

Note both sides are C:\tmp\clawpath\normaldir; only the prefix differs.

Reproduction

$env:OPENAI_BASE_URL="http://localhost:1234/v1"   # any OpenAI-compatible local server
$env:OPENAI_API_KEY="local-dev-token"

mkdir C:\tmp\clawpath\brandnew
"hello TARGETSTRING here" | Set-Content C:\tmp\clawpath\brandnew\sample.txt
cd C:\tmp\clawpath\brandnew

claw --model "<your-local-model>" prompt "Use grep_search to find TARGETSTRING in this directory."

Observed

Directory .claw/ present beforehand grep_search
fresh dir, 1st run no fails — escapes workspace boundary
same dir, 2nd/3rd run yes succeeds

Reproduced on 2 of 3 fresh directories; 0 of 3 already-initialized directories. The one fresh directory that succeeded had .claw/sessions/*.jsonl already flushed by the time grep ran, which is consistent with a race between workspace initialization and the tool's boundary check.

Expected

grep_search should resolve/normalize both paths (strip or apply the \?\ prefix consistently) before the containment comparison, and should not depend on .claw/ already existing.

Impact

read_file works in the same directory where grep_search fails, so the failure is partial and easy to misread as a model/tool-calling problem rather than a harness bug — it cost us some misdiagnosis while evaluating local models.

Environment

  • Claw Code v0.1.3 (git 4ea31c1bc91c), built from source
  • Windows 10 Pro 19045, rustc/cargo 1.97.1, MSVC (VS Build Tools 2019)
  • Provider: local OpenAI-compatible server (LM Studio, :1234)

Workaround

Run any command that initializes .claw/ in the directory first, then grep_search works.

Lingua principale
Rust
Stelle
195k
Fork
108k
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ultraworkers/claw-code

Tutte le issue di ultraworkers/claw-code

Issue simili

Altre issue su Rust

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.