1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
|
# assistant
Two settings pages for desktop-assistant, the daemon behind the assistant
canvas (`../../assistant/`).
**Assistant** edits the daemon's `~/.config/desktop-assistant/config.toml`
and switches its tools. The model fields (server, temperature, tool rounds,
thinking) save on Enter, and an emptied field falls back to the daemon's
default, shown as its placeholder; the defaults come from `assistant.py
--defaults`, so they are never copied here. The system prompt has its own
box, Save and "Use the default". The tool environment (`[env]`) is one row
per key, with an add row below. A tool's switch renames `tools/<name>.toml`
to `<name>.toml.off`, which the daemon's `*.toml` glob skips.
The daemon reads all of this only at startup, so after a change the page
says so and offers Restart, which runs `assistant.sh restart`; a daemon that
does not come back shows the script's status, whose log tail says why.
The file is edited line by line (`Config.js`) so the comments the example
ships with survive: an unset key sits commented out, setting it activates
its line, and unsetting comments it back out. Every write first parses the
whole new file with `tomllib`, then replaces the old one atomically, so an
edit can never leave a config the daemon refuses to start with.
**Ask presets** edits the canvas's canned questions for staged files:
label, question, and the file kinds each is offered for. They live in
`Prefs` and the canvas reads them live, so changes apply at once; "Reset to
defaults" drops the saved list and brings back the built-in one in
`../../assistant/Presets.js`. A new preset gets the fallback icon.
Search finds the model fields, every `[env]` key, every tool and every
preset by name.
Check: `node desktop/modules/assistant/test_config.js`.
|