feat(fs): add a model-facing directory listing tool
`ctx.fs.listDir` has shipped since the filesystem seam gained it, with skill discovery as its only consumer; the model-facing tool was deferred to a separate decision. Nothing else could answer "what is in this directory": `rg --files` backs glob and grep and never emits a directory entry, so an empty directory is invisible, no output says which names are directories, and no output gives an entry count. `list` takes an optional `path`, defaulting to the session workspace so the common question needs no argument, and returns the direct children of one directory with their type. Two presentation rules carry it: directories sort first, then files, then non-regular children, each alphabetically — so truncation loses leaves rather than the tree — and the footer always states the complete listing's size and composition, so a capped view can never read as a whole directory. It emits no `fs/observed`: seeing a filename is not reading a file, and a listing must never satisfy the read-before-write gate.
This commit is contained in:
@@ -0,0 +1 @@
|
||||
# Project
|
||||
@@ -0,0 +1 @@
|
||||
# Guide
|
||||
@@ -0,0 +1 @@
|
||||
{ "name": "demo" }
|
||||
@@ -0,0 +1 @@
|
||||
export const answer = 42
|
||||
Reference in New Issue
Block a user