aboutsummaryrefslogtreecommitdiffstats
path: root/AGENTS.md
diff options
context:
space:
mode:
authorDanilo M. <danix@danix.xyz>2026-10-21 10:12:29 +0200
committerDanilo M. <danix@danix.xyz>2026-10-21 10:12:29 +0200
commit26d7799fe90e621994503231ac917336f99b6145 (patch)
tree286306f6f9bd74e9e1090f7927e9efd343d2df01 /AGENTS.md
parent1c1fb069f7f3bae5946c485ef48846c150ef1d54 (diff)
downloadsb-builder-26d7799fe90e621994503231ac917336f99b6145.tar.gz
sb-builder-26d7799fe90e621994503231ac917336f99b6145.zip
sbb-remote 0.10.0: config-get/config-set; GUI watches its config
Keystone's settings pages edit both configs. config-get returns the VM config text, the defaults and the path; config-set validates new text with the same check() as load_config, keeps .bak and replaces the file atomically. Both run before load_config, so a broken config can still be read and fixed. The GUI reloads its config when the file changes, re-adding the watch after an atomic write replaces the inode. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'AGENTS.md')
-rw-r--r--AGENTS.md6
1 files changed, 6 insertions, 0 deletions
diff --git a/AGENTS.md b/AGENTS.md
index 155b496..f1d9048 100644
--- a/AGENTS.md
+++ b/AGENTS.md
@@ -33,6 +33,12 @@ plans are working files, kept out of git (`.superpowers/`).
`gpg-preset-passphrase`. Every other subprocess in the helper runs with
`stdin=DEVNULL`, so nothing can read the passphrase off the ssh channel.
Never put the passphrase in argv, env, logs or files.
+- Second exception: `config-get` / `config-set` (Keystone's settings page)
+ run before `load_config`, so a broken helper config stays fixable;
+ `config-set` reads the new text from stdin, validates it with `check()`
+ (the same rules as `load_config`), keeps `.bak` and replaces atomically.
+ The config names paths and scripts the helper runs: the ssh login is root
+ already, so this grants nothing new.
- Hints are parsed (`shlex`), never sourced. `sb_builder/hints.py` mirrors
slackrepo's own rules (`libexec/functions.d/parsefunctions.sh` in [slackrepo](https://github.com/aclemons/slackrepo));
check that file when changing it.