dsh-remote 0.2.0: agent tools to drive slaves from the master

- remote_devices / remote_exec / remote_file / remote_task tools on the master
  (exec: bash -lc with timeout + output clipping; files: read/write/list;
  task: delegate a prompt to the device's own AI, wait for turn end, return
  its answer; optional permission preset, status/cancel)
- only the master may control devices (allowPeerControl to relay between slaves),
  agentTools.enabled=false opts a device out
- FORGE_CREDENTIALS opt-in pseudo-secret: ships the master's tea logins to a
  slave (tea config + git credential store + identity)
- /dsh-remote/debug/inspect + deploy/session-log.mjs for transcripts
- tests for exec/files/task/forge install
This commit is contained in:
lyuksovannyy committed 2026-10-11 10:08:04 +00:00
1 parent 8872e73e76
commit d1e134196d
7 files changed
+625 -8

No files matched your search

+9
View File
@@ -16,6 +16,7 @@
allow: []
deny: []
# slave: names of credential refs to accept from the master (opt-in, per secret).
# FORGE_CREDENTIALS = the master's Gitea/Forgejo (tea) logins + git https credentials.
secrets: []
# master: credential refs offered to devices (each device still opts in on the master
# Devices page AND locally via `secrets` above).
@@ -23,3 +24,11 @@
# master: never sync these bundles / cordis.patch.yml entry ids.
excludeBundles: []
excludePatchIds: []
agentTools:
# Register remote_devices / remote_exec / remote_file / remote_task.
# Unset = on for the master only; true = also on a slave.
# tools: true
# false = refuse agent control of THIS device (exec/files/tasks from the master).
enabled: true
# master: let slaves relay agent ops to other devices.
allowPeerControl: false