Clarify list_vault path parameter to prevent model confusion

Models kept passing the vault name as both vault_name AND path
(e.g. vault_name='obsidian-skt', path='obsidian-skt'), producing garbage
results. The old description 'Relative path within the vault' was too
vague — models interpreted path as the vault identifier.

- path: now explicitly says 'NOT the vault name — that's vault_name'
- Added concrete Usage section with 4 examples
- Described as 'Subfolder inside the vault' not 'Relative path'
This commit is contained in:
helm 2026-07-07 01:45:09 -04:00
parent c1cb15cb3b
commit 7d0a284422

View file

@ -164,13 +164,21 @@ def list_vault(
Args:
vault_name: Name of the vault (subdirectory name under vaults root)
path: Relative path within the vault. Empty string = vault root.
path: Subfolder inside the vault. Omit or pass "" for vault root.
NOT the vault name that's vault_name. Examples:
"" or omit = vault root, "NPCs" = vault/NPCs/, "NPCs/Hostile" = deeper.
recursive: If True, list all nested contents recursively.
include_files: Include files in results (default True).
include_directories: Include directories in results (default True).
file_extensions: Optional filter only return files with these extensions
(e.g. ['.md', '.canvas']). Case-insensitive.
Usage:
list_vault("obsidian-skt") root listing
list_vault("obsidian-skt", "") same, explicit
list_vault("obsidian-skt", "NPCs") subfolder
list_vault("obsidian-skt", "", True) recursive from root
Returns:
directories: list of subdirectory info dicts
files: list of file info dicts (name, path, type, size, modified)