Synthèse automatique
Exécute des commandes shell sur un follower de tray SLICC connecté, exposé comme cible d'exécution distante par la CLI slicc follow.
Points forts
- Décrit la découverte des cibles avec host et ssh --list, y compris le contexte MOTD.
- Présente les options --cwd et --timeout ainsi que l'interruption par Ctrl+C.
- Avertit clairement des risques d'exécution de code distant et du contournement de la politique sudo du leader.
Limites
- Ne concerne que les followers SLICC, pas des hôtes SSH arbitraires.
- Le runner d'exécution est imposé par le follower et ne peut pas être modifié.
- Les commandes s'exécutent avec l'utilisateur du follower, hors politique sudo du leader, et la sortie est mise en tampon sans session interactive.
Lorsqu'il faut exécuter une commande shell sur un follower SLICC connecté qui annonce une cible exec.
Pour un accès SSH général, un shell interactif ou le contrôle du runner ou de la sandbox distante.
Analyse de sécurité
PrudenceThe skill is documentation for a legitimate remote-exec feature, not a malicious payload: there are no curl|sh pipes, no exfiltration of secrets/tokens, no obfuscated or base64 payloads, and no attempt to disable safety controls. However, its core purpose is executing arbitrary shell commands on a follower's real machine outside the local sudo policy, which is inherently powerful, so it warrants a caution rating rather than safe. The text itself does contain sensible guardrails (prefer narrowest command, don't pipe untrusted input, treat targets like SSH access), and no prompt-injection or role-change attempts were found in the content.
- •Documents a mechanism for remote code execution on another machine ('runs on the follower's real machine, as the user who started it') — powerful by design
- •Explicitly notes commands run OUTSIDE the leader's sudo policy, so host-side privilege controls do not gate `ssh`
- •Encourages `bash -c`-style runners with no sandbox unless the follower chooses a container runner
- •Skill intentionally enables remote command execution on another user's machine via `ssh <runtime-id> <command>`; it acknowledges this is 'remote code execution by design' and outside the leader's sudo policy.
- •Execution bypasses local sudo/sandbox policy — only the follower's chosen runner (e.g. bare `bash -c`) constrains it, so a compliant agent can run arbitrary commands on a real host.
- •Content is documentation only: no obfuscated payloads, no curl|sh, no credential exfiltration, no attempts to disable safety controls or to alter the auditor's behavior.
Exemples
Run `ssh --list`, then summarize the available exec targets and their MOTD lines.Use `ssh --list` to find the first exec target, run `uname -a` on it, and report the output.On the connected CLI follower, run `ls -la` in /srv/app with a 30-second timeout and summarize the results.name: ssh
description: |
Use this when you need to run a shell command on a connected tray follower —
specifically a slicc … follow <runner> CLI follower that lent its machine as
an exec target. Covers discovering targets (host, ssh --list), running
commands (ssh <runtime-id> <command>), what a runner is, timeouts and Ctrl+C,
and the important trust boundary: the command runs on the follower's real
machine, as the user who started it, OUTSIDE this leader's sudo policy.
allowed-tools: bash
ssh — run a command on a tray follower
A slicc … follow <runner> CLI follower (see packages/slicc-cli) can lend its
machine to you as a remote-exec target. ssh runs a command there and returns its
stdout, stderr, and exit code.
Discover targets
CLI followers started with a runner and iOS followers advertising exec are targets. Find them:
host # every follower: [ssh] exec, [computer] capturable screen, [playwright] browser
ssh --list # just the exec targets + their runtime ids, each with a MOTD line
A target id looks like follower-<uuid>. ssh --list prints each target's
advertised MOTD beneath it so you know what you're connecting to. Browser
followers are never ssh targets. iOS followers accept only
open [--universal|--x-callback] <url>, gate it through on-device scoped
approval, and launch the approved destination. --universal requires a universal
link; --x-callback returns bounded JSON on stdout and distinct success, error,
or cancel exit codes. An unavailable app fails instead of pretending to launch.
host hides capability-less followers (e.g. transient prompt/exec CLI
connections) as a count, so the list stays the actionable targets.
Run a command
ssh <runtime-id> "<command>"
ssh --cwd /some/dir <runtime-id> "ls -la"
ssh --timeout 30 <runtime-id> "<command>" # kill on the follower after 30s
The command runs as <runner> <command> on the follower, where <runner> is
whatever it was started with — e.g. bash -c, sh -c, or a sandbox like
docker exec -i box sh -c. The runner is fixed by the follower; you cannot change
it from here. Output is returned once the command completes (buffered, like
ssh host cmd). Ctrl+C / an aborted turn interrupts the remote command.
Trust boundary (read before using)
- The command executes on the follower's real machine, as the user who started
slicc … follow— this is remote code execution by design. - It runs outside this leader's
/etc/sudoerspolicy. Your sudo rules do NOT gatessh— the follower's own choice of runner is the only sandbox (a container runner scopes it; a barebash -cdoes not). - Treat an exec target like SSH access to someone's box: run only what you'd run there directly, prefer the narrowest command, and never pipe untrusted input into it.
The other direction
ssh goes down the tray, to a follower of yours. To go up — into another
SLICC leader's virtual shell, given its join URL — use the slicc skill.
Du fichier au premier essai
Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.
Consulter la source et ses fichiers annexesCe téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.
1. Télécharger le fichier
Télécharger SKILL.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.
Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.
mkdir -p '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/run-commands-on-a-tray-follower-mvj1ocaa/download' --output '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md.part' && mv '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md.part' '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md'2. Vérifier les prérequis
Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.
Outils déclarés par l’auteur (à vérifier dans votre agent) : bash
Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.
Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.
3. Charger la skill
Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.
Claude Code
test -f '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md' && test -s '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/ssh' && cp -R '.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa' '.claude/skills/ssh'OpenSkills
OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.
Installation officielle d’OpenSkillsopenskills install './.skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa'openskills read 'run-commands-on-a-tray-follower-mvj1ocaa'La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.
Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.
openskills syncMode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.
4. Faire un premier essai
Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :
Lis .skill-downloads/run-commands-on-a-tray-follower-mvj1ocaa/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.
Configurer un canal de discussion avec SecretRefs
DevOps
Configurez des canaux de discussion avec des commandes non interactives, les secrets étant uniquement des SecretRefs. Couvre les étapes de collecte, modification, réparation et vérification.
Enquêter sur les échecs CI de ClickHouse
DevOps
Investigue un échec CI de ClickHouse de bout en bout à partir d'une URL de PR ou de rapport S3. Récupère les tests échoués, classe flaky vs vraie régression, et cherche des issues/fixes existants.
Revue de PR Ansible
DevOps
Examine une PR Ansible selon le processus standardisé du projet, incluant la validation des changelogs, la couverture de tests et le suivi des commentaires.