- 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
35 lines
1.6 KiB
YAML
35 lines
1.6 KiB
YAML
- insert:
|
|
- id: dsh-remote
|
|
name: '@local/dsh-remote'
|
|
config:
|
|
# master | slave | auto (auto = slave once paired with a master, else master)
|
|
role: auto
|
|
# Display name of this device (defaults to the hostname); its id is the slug of it.
|
|
deviceName: ''
|
|
# Shown in the Devices page so other machines know where to pair.
|
|
lanUrl: ''
|
|
publicUrl: ''
|
|
sync:
|
|
# slave: pull plugins/config automatically on link-up and when the master pushes.
|
|
auto: true
|
|
# slave: bundle allow/deny lists (exact names or prefix*). deny wins.
|
|
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).
|
|
offerSecrets: []
|
|
# 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
|