feat: file access preferences

Three settings: the switch, and the two root fields. Off by default, because the
read half of this feature cannot ask before it happens, and `ipGeolocation` in this
repository is already off for the weaker version of the same reason.

The manifest keeps the file's own formatting rather than prettier's, since the
repository's format script has never covered package.json.
This commit is contained in:
2026-10-07 17:00:52 +08:00
parent f42a828360
commit 36d7d2fdea
3 changed files with 86 additions and 1 deletions
+25 -1
View File
@@ -173,7 +173,31 @@
{ "title": "Unlimited (no cap)", "value": "unlimited" }
]
}
],
,
{
"name": "fileAccess",
"title": "File Access",
"label": "Let Lam read and change files",
"description": "Off by default. When this is on, Lam can list, search and read files under your home directory, and can create, change, move and delete files in Downloads, Documents/Lam Agent and its own folder. Every change is shown to you for approval first, credential stores are never readable, and anything Lam reads is sent to the model provider with the conversation.",
"type": "checkbox",
"required": false,
"default": false
},
{
"name": "readRoots",
"title": "Extra Readable Folders",
"description": "Additional folders Lam may read, one absolute path per line. Your home directory is always readable, except for credential stores. Useful for a project folder or an external drive.",
"type": "textfield",
"required": false
},
{
"name": "writeRoots",
"title": "Extra Writable Folders",
"description": "Additional folders Lam may change, one absolute path per line. Downloads and Documents/Lam Agent are always writable when File Access is on, and everything here is still approved change by change.",
"type": "textfield",
"required": false
}
],
"dependencies": {
"@vicinae/api": "^0.29.0",
"zod": "^4.4.3"