From f72b5793a5c7e7891e4904be73c0bc6bc038fa18 Mon Sep 17 00:00:00 2001 From: T Date: Wed, 27 May 2026 16:34:32 -0600 Subject: system agent definition scaffolding --- agent/README.md | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 agent/README.md (limited to 'agent/README.md') diff --git a/agent/README.md b/agent/README.md new file mode 100644 index 0000000..00e6e60 --- /dev/null +++ b/agent/README.md @@ -0,0 +1,28 @@ +# panto system agent tree + +Contents of this directory are embedded into the `panto` binary at +build time and staged onto disk at bootstrap into +`$PANTO_HOME/agent/` (i.e. `$XDG_DATA_HOME/panto/agent/`, or +`~/.local/share/panto/agent/` if `XDG_DATA_HOME` is unset). + +The staged tree is the "system" layer of panto's extension/tool +search path — sitting underneath the user layer +(`$XDG_CONFIG_HOME/panto/`) and the project layer +(`./.panto/`). Project shadows user shadows system. + +Files are written with `writeIfDifferent` semantics: on each +bootstrap, embedded contents are compared against what's on disk and +only rewritten when they differ. This keeps mtimes stable across +reruns. + +The staged tree is **panto's territory** — local edits will be +overwritten on the next bootstrap. To customize a system tool, +override it at the user or project layer (a file with the same +basename under `$XDG_CONFIG_HOME/panto/tools/` or `./.panto/tools/` +shadows the system copy). + +## Layout + + agent/ + tools/ single-file tools, one per `.lua` + extensions/ (future) multi-tool extensions -- cgit v1.3