TRIGGERcmd - Run commands on your computers remotely
by @rvmey
Control TRIGGERcmd computers remotely by listing and running commands via the TRIGGERcmd REST API.
clawhub install triggercmdπ About This Skill
name: triggercmd description: Control TRIGGERcmd computers remotely by listing and running commands via the TRIGGERcmd REST API. homepage: https://www.triggercmd.com metadata: { "openclaw": { "emoji": "πΉοΈ", "requires": { "bins": ["curl", "jq"], "env": ["TRIGGERCMD_TOKEN"], "credentials": { "primary": "TRIGGERCMD_TOKEN environment variable", "fallback": "~/.TRIGGERcmdData/token.tkn file (chmod 600)" } } }, }
TriggerCMD Skill
Use this skill to inspect and run TRIGGERcmd commands on any computer that is registered with the account tied to the local API token.
Authentication
The skill supports two authentication methods (checked in order):
1. Environment Variable (recommended): Set TRIGGERCMD_TOKEN to your personal API token
- Export it in your shell: export TRIGGERCMD_TOKEN='your-token-here'
- Or prefix individual commands: TRIGGERCMD_TOKEN='your-token-here'
2. Token File: Store token at ~/.TRIGGERcmdData/token.tkn
- The file should contain only the raw token text (no quotes, spaces, or trailing newline)
- Must be permission-restricted: chmod 600 ~/.TRIGGERcmdData/token.tkn
- To create: mkdir -p ~/.TRIGGERcmdData && read -s TOKEN && printf "%s" "$TOKEN" > ~/.TRIGGERcmdData/token.tkn && chmod 600 ~/.TRIGGERcmdData/token.tkn
Obtaining your token: 1. Log in at https://www.triggercmd.com 2. Navigate to your profile/settings page 3. Copy the API token (keep it secure and never share it)
Security Warning: Never print, log, or paste your token in shared terminals or outputs.
Common Environment Helpers
# Get token from environment variable or file (checks env var first)
if [ -n "$TRIGGERCMD_TOKEN" ]; then
TOKEN="$TRIGGERCMD_TOKEN"
elif [ -f ~/.TRIGGERcmdData/token.tkn ]; then
TOKEN=$(cat ~/.TRIGGERcmdData/token.tkn)
else
echo "Error: No token found. Set TRIGGERCMD_TOKEN env var or create ~/.TRIGGERcmdData/token.tkn" >&2
exit 1
fiAUTH_HEADER=("-H" "Authorization: Bearer $TOKEN")
BASE_URL=https://www.triggercmd.com/api
Use the snippets above to avoid repeating the authentication logic in each command.
list_commands
Lists every command in the account across all computers.
curl -sS "${BASE_URL}/command/list" "${AUTH_HEADER[@]}" | jq '.records[] | {computer: .computer.name, name, voice, allowParams, id, mcpToolDescription}'
Formatting tips:
jq -r '.records[] | "\(.computer.name): \(.name) (voice: \(.voice // "-"))"'.allowParams when suggesting follow-up commands so the user knows whether parameters are allowed..computer.name and present bullet points per computer.run_command
Run a specific command on a specific computer using the computer name and command name.
# Use jq to safely construct JSON payload and prevent injection
PAYLOAD=$(jq -n \
--arg computer "$COMPUTER" \
--arg command "$COMMAND" \
--arg params "$PARAMS" \
'{computer: $computer, command: $command, params: $params}')curl -sS -X POST "${BASE_URL}/run/trigger" \
"${AUTH_HEADER[@]}" \
-H "Content-Type: application/json" \
-d "$PAYLOAD"
$COMPUTER should be the computer name (e.g., "MyLaptop")$COMMAND should be the command name (e.g., "calculator")--arg params "$PARAMS" and params: $params from the jq command when the command does not accept parameters.jq -n with --arg ensures all values are properly escaped and prevents JSON injection attacks.Error Handling
~/.TRIGGERcmdData/token.tkn and remind them to keep it private.allowParams: true when relevant.Testing workflow
1. Verify authentication is configured:
[ -n "$TRIGGERCMD_TOKEN" ] || [ -f ~/.TRIGGERcmdData/token.tkn ] || echo "Error: No token configured"
2. Test API connectivity (using the helper variables above):
curl -sS "${BASE_URL}/command/list" "${AUTH_HEADER[@]}" | jq -r '.records[0].computer.name // "No commands found"'
3. Dry-run a command by listing IDs, then run with known-safe commands (e.g., toggling a harmless script) before invoking anything destructive.
Security Notes
~/.TRIGGERcmdData/token.tkn has permissions set to 600 (readable only by owner).TRIGGERCMD_TOKEN environment variable for temporary sessions or when you don't want to persist the token on disk.