@Micael-Sousa, good to know. I'm glad you figured this out.
Russ
@Russ
I'm a tech enthusiast with about 30 years experience in IT. Recently I'm also a TRIGGERcmd developer.
Best posts made by Russ
-
RE: internal server errorposted in Alexa
-
RE: Laptop Battery Management - Automated On/Off Cycleposted in Example Commands
@philip-nguyen, there's a similar question here.
These are the high level steps:
- Create 2 commands that just run echo (doesn't matter what), and name them PlugOn and PlugOff.
- Setup two Alexa routines - one that turns on your smart plug when the PlugOn command runs, and other that turns it off when the PlugOff command runs.
- Create a script. At the beginning of the script, do the following:
- Set variable called PLUG_IS_ON with a default value of true.
- To make sure the plug is on at first, run the tcmd utility like this: tcmd -t plugon -c (your TRIGGERcmd computer name)
- Create a loop that repeats every minute. Inside the loop, do the following:
- Check your battery level with BatteryInfoView.exe
- When the level is below 30 percent and PLUG_IS_ON = false, run tcmd utility like this: tcmd -t plugon -c (your TRIGGERcmd computer name)
- When the level is above 99 percent and PLUG_IS_ON = true, run tcmd utility like this: tcmd -t plugoff -c (your TRIGGERcmd computer name)
- Also set PLUG_IS_ON to true when you run plugon, and set it to false when you run plugoff
I think that should work. Do you know how to do that? Let me know if you get stuck, and where you get stuck. I can look at your script if you paste it here.
-
Autohotkey script for Play, Pause, Volume Up/Down, Next/Previousposted in Windows
You'll need to install this on your Windows box to make it work: https://autohotkey.com
This is my media.ahk autohotkey script:
Gosub, %1%
returnnext:
Send {Media_Next}
returnprevious:
Send {Media_Prev}
returnpause:
Send {Media_Play_Pause}
returnplay:
Send {Media_Play_Pause}
returnstop:
Send {Media_Stop}
returnvolup:
Send {Volume_Up}
returnvoldown:
Send {Volume_Down}
returnmute:
Send {Volume_Mute}
returnThese are the corresponding commands.json entries:
{"trigger":"Mute","command":"start C:\\autohotkeyscripts\\media.ahk mute","ground":"foreground","voice":"mute"},
{"trigger":"Volume Up","command":"start C:\\autohotkeyscripts\\media.ahk volup","ground":"foreground","voice":"volume up"},
{"trigger":"Volume Down","command":"start C:\\autohotkeyscripts\\media.ahk voldown","ground":"foreground","voice":"volume down"},
{"trigger":"Media Next","command":"start C:\\autohotkeyscripts\\media.ahk next","ground":"foreground","voice":"next"},
{"trigger":"Media Stop","command":"start C:\\autohotkeyscripts\\media.ahk stop","ground":"foreground","voice":"stop"},
{"trigger":"Media Previous","command":"start C:\\autohotkeyscripts\\media.ahk previous","ground":"foreground","voice":"previous"},
{"trigger":"Media Play Pause","command":"start C:\\autohotkeyscripts\\media.ahk pause","ground":"foreground","voice":"pause"},NOTE: You don't need a Play and a Pause because they do the same thing - they just toggle between play and pause.
This is optional, but I'm also using my Raspberry Pi based IR receiver to trigger the above commands with a VCR remote.
I have these entries in my /etc/lirc/lircrc file on the Pi:
begin prog = irexec button = KEY_1 config = export HOME=/root ; /root/triggertest.sh play downstairs end begin prog = irexec button = KEY_2 config = export HOME=/root ; /root/triggertest.sh notepad downstairs end begin prog = irexec button = KEY_PLAY config = export HOME=/root ; /root/triggertest.sh "Media Play Pause" downstairs end begin prog = irexec button = KEY_PAUSE config = export HOME=/root ; /root/triggertest.sh "Media Play Pause" downstairs end begin prog = irexec button = KEY_RIGHT config = export HOME=/root ; /root/triggertest.sh "Media Next" downstairs end begin prog = irexec button = KEY_LEFT config = export HOME=/root ; /root/triggertest.sh "Media Previous" downstairs end begin prog = irexec button = KEY_STOP config = export HOME=/root ; /root/triggertest.sh "Media Stop" downstairs end begin prog = irexec button = KEY_UP config = export HOME=/root ; /root/triggertest.sh "Volume Up" downstairs end begin prog = irexec button = KEY_DOWN config = export HOME=/root ; /root/triggertest.sh "Volume Down" downstairs end begin prog = irexec button = KEY_MUTE config = export HOME=/root ; /root/triggertest.sh "Mute" downstairs end -
List of ways to trigger your commandsposted in Instructions
You can use this web page of course, but don't stop there. Check out this list of ways to run your commands on your computers.
The Smart Home version of the Alexa skill and Google Assistant action does the best job of matching your spoken words to your commands.
Smart Home voice assistant skills (Example: "Alexa, turn on calculator") <--Recommended
TRIGGERcmd Mission Control (demo video)
Original "conversational" voice assistant skills (Example: "Alexa, ask TRIGGERcmd to run calculator"):
- Original Alexa skill
- Original Google Assistant action (deprecated)
Mobile apps:
- Apple App Store: TRIGGERcmd
- Google Play Store: TRIGGERcmd (supports widgets)
- Amazon App Store: TRIGGERcmd
Progressive Web App (PWA)
Run your commands when things happen in other Internet services:
- Zapier - create a "Zap" that runs your command when something happens on one of their 1500+ supported apps.
- Make - create "scenarios" that run commands on your computers.
- IFTTT - If This Then run a command, or if a TRIGGERcmd command runs, run an IFTTT applet.
- Microsoft Power Automate (aka Flow) - run commands when things happen in Office 365 and other services.
- Pipedream - build workflows that run your commands.
AI methods:
- ChatGPT app (Youtube demo video)
- Claude skill
- OpenClaw skill.
- Local stdio MCP - Run commands from local AI LLM chat tools like Claude Desktop or VS Code. Use the "MCP Tool Description" field of each command to tell the LLM what the command does, and how to use the parameters.
- Online Streamable HTTP MCP - Same as above but for online AI tools like Mistral AI.
IoT Smart Home hubs:
- Home Assistant - Flip virtual HA switches to run your TRIGGERcmd commands.
- Samsung SmartThings - Create virtual switches for each command, then flip the switches to run them. (Not working as of 6/21/2025)
- Homey - Use the ‘run command’ flow action.
- Hubitat - Trigger a command like you'd flip a switch.
- Node-RED - Run commands using an "http request".
- HomeKit - Connect the agent directly to a Homekit hub for offline local runs.
Other cool methods:
- Run an Alexa routine - when one of your TRIGGERcmd commands runs.
- Google Assistant routine (aka automation) - use one of your TRIGGERcmd commands as a "starter" to run your routine when the command runs, or run one of your commands as a routine's "action." Either way, you must use the google automations script editor, not the Home app.
- n8n community node - Run your commands from n8n AI workflows.
- Bookmarks - Create and share URL's that run your commands without authentication. You can set an optional timeout to make bookmark URL's expire. People can also scan your bookmark's QR code to run the command.
- iOS shortcut - Use the iOS Shortcuts app to run your commands with Siri.
- REST API - Use curl or other client to call the TRIGGERcmd API.
- tcmd - Command line tool written in Go.
- Tasker - Tasker is an Android app for automating things with your phone.
- Slack app - Run your commands with Slack "slash" commands.
- Powershell - Run a command on a computer across the Internet from your powershell script.
- Roku channel - Run a command from your Roku.
- Unity - Run a command from a Unity game or utility you made.
- Streamdeck - Configure a Streamdeck button to run a command on a remote computer.
- Python - Run a command on a remote computer from a python script.
- viaSocket - Run commands from your viaSocket flow.
-
RE: Doc Apiposted in API
@Ruan-Santana, I added two pages to the documentation this morning:
https://docs.triggercmd.com/#/./API/TriggerCommand
https://docs.triggercmd.com/#/./API/ListCommandsIs that what you're looking for?
-
RE: New Bookmark option for each triggerposted in Announcements
@tim-s, that's right - you could even just change the trigger name and change it back, and it would invalidate the bookmark URL.
-
RE: Shutdown não funciona no macposted in Mac
@Waldex-Santos, I think this should work:
osascript -e 'delay 60' -e 'tell app "System Events" to shut down' -
RE: Triggercmd smart home not reachableposted in Google Home
It's back up now.
One of my servers went down last night, and Kubernetes didn't handle the fail-over well.
I got an email from my monitoring system while I was sleeping. I'll need to setup something else that will actually wake me up.
I'm sorry about this outage.
-
smartthings-cliposted in Example Commands
This works in Windows, Mac, Linux, Raspberry Pi. You can list and control your SmartThings devices with the Samsung SmartThings cli (command line interface) tool.
https://github.com/SmartThingsCommunity/smartthings-cli#smartthings-devicescommands-id-command
smartthings.exe devices ────────────────────────────────────────────────────────────────────────────────────────────────────────────── # Label Name Type Device Id ────────────────────────────────────────────────────────────────────────────────────────────────────────────── 1 Front Door base-contact ZWAVE 5bebe423-f899-486e-9f62-8c63707a9b6c 2 Front Lights switch1 DTH fb132245-8bd0-478d-be4b-ca311ae64656 3 Home Hub SmartThings v2 Hub HUB 9079eb4d-10b4-435d-9a05-b2b9629cb50a 4 Motion Sensor Motion Sensor DTH b8a3a1ab-daac-44fb-a6c9-53bac4382df9 5 Notepad Notepad DTH a83bbda3-d461-44ae-948a-7d8fd13b5799 6 Samsung 7 Series (40) [TV] Samsung 7 Series (40) OCF 01253b2b-71ed-4b74-b7dd-74dd94522d96 7 THERMOSTAT Honeywell TCC 6000 Thermostat VIPER 86b567ac-0da3-4257-9b03-47a3cfc3b469 8 Kitchen Switch Z-Wave Switch DTH e2237460-e3fa-4bf5-8a24-3e6d64f89352To turn on my Kitchen z-wave switch, I can run a command like this:
smartthings.exe devices:commands e2237460-e3fa-4bf5-8a24-3e6d64f89352 switch:onSmartThings devices can be controlled with the SmartThings app of course, but this might be useful in scripts - whether you run them remotely via TRIGGERcmd or not.
-
Alexa bug fixedposted in Announcements
Some of you might have noticed, when you'd say something like:
Alexa, ask TRIGGER cmd to run notepad on downstairs
You'd get an answer like this:
"Could not find a command with voice word cmd notepad on downstairs, ..."
I fixed that today.
For some reason Alexa started sending the "cmd" part of "TRIGGER cmd" as a prefix in the command name. I actually had to add code to strip that out.
Latest posts made by Russ
-
New "Computer" device option for TRIGGERcmd Smart Home Alexa skill usersposted in Announcements
If you check the new Create Alexa Smart Home device for this computer checkbox, you'll get an Alexa Smart Home device that you can use to:
- "Alexa, set X volume to 50 percent" - run the volume control command with 50 (for example) as the parameter
- "Alexa, unmute X" - runs the mute control command with unmute or mute as the parameter
- "Alexa, turn on X" - sends a Wake-on-LAN magic packet from your local Echo device to turn on your computer
- "Alexa, turn off X" - runs the shutdown command
X is your computer's voice word, or its name if you don't have a voice word for it.

To enable Wake-On-LAN, enable it in your BIOS and test it, then enable it like this:


-
RE: [BUG] I`m adding new commands and it`s executes the command but Alexas threats as a doorbellposted in General Discussion
Awesome @Vinicius-Gimenez-Figuerola. Thanks for letting me know it's working for you.
-
You could have Claude run a command each time it finishes a prompt.posted in MCP
You could have Claude run a command each time it finishes a prompt.

One idea: turn a light green when it's finished, and turn it red when it's working on something.
I tend to use the notepad command when I test parameters.
[repo path]\.claude\settings.json:
{ "hooks": { "UserPromptSubmit": [ { "hooks": [ { "type": "mcp_tool", "server": "triggercmd", "tool": "run_command", "input": { "computer": "New Laptop", "command": "Notepad", "parameters": "started" } } ] } ], "Stop": [ { "hooks": [ { "type": "mcp_tool", "server": "triggercmd", "tool": "run_command", "input": { "computer": "New Laptop", "command": "Notepad", "parameters": "done" } } ] } ] } } -
Roku app updated 7-20-2026posted in Announcements
I updated the Roku app. Now it groups commands by computers, or panel buttons by panel.
Reminder, the app shows computers and commands if this checkbox is unchecked on your profile page:

It shows panels with their panel buttons if you check the checkbox.FYI @mlabombarda
-
RE: [BUG] I`m adding new commands and it`s executes the command but Alexas threats as a doorbellposted in General Discussion
@Vinicius-Gimenez-Figuerola if you rename your command, and rename it back, it will re-create the Alexa device with this new UI option to disable the doorbell press notifications. Does that solve it? I tried to default it to false, but there doesn't seem to be a way to do that.

-
RE: [BUG] I`m adding new commands and it`s executes the command but Alexas threats as a doorbellposted in General Discussion
@Vinicius-Gimenez-Figuerola , interesting. What triggers that routine? I would think the command couldn't trigger it because it would be too late. I'll try it.
EDIT: I tried it - that works, but I don't want everyone to have to do that for every command, so I'm still looking for a solution. Worst case, I could make the doorbell feature (for running routines) a toggle for each command, and default it to false.
EDIT2: I added a feature to each device to allow you to disable the "Doorbell Press Notifications".

-
RE: [BUG] I`m adding new commands and it`s executes the command but Alexas threats as a doorbellposted in General Discussion
@Vinicius-Gimenez-Figuerola, I noticed the same thing yesterday. When I trigger a new or changed command via the virtual Alexa Smart Home device, my Echo device says, "Ding dong, someone is at [voice word]." Old commands are not affected.
For now, I set my Alexa device to "Do Not Disturb" so I don't hear the announcement like this article suggested:
https://www.amazon.com/gp/help/customer/display.html?nodeId=GV7ZJNSWKL8E3D7TI'm looking into what changed. I think Amazon changed something recently because I didn't change anything related to the doorbell feature. You probably know this, but the doorbell feature is needed to trigger an Alexa routine when a command runs.
It doesn't have anything to do with the Voice/MCP Reply field. The TRIGGERcmd Smart Home Alexa skill doesn't use it. Only the legacy conversational Alexa skills (called TRIGGERcmd, Trigger Command, and TC) use it.
I opened a case with Amazon about it.
-
RE: Purchased but Cancelled Renewalposted in General Discussion
@Pierce-Ó-Brádaigh, I'll refund your money. If you use Paddle instead of Paypal to re-subscribe, you can cancel the auto-renewal and it won't immediately stop your subscription benefits.
-
Claude TRIGGERcmd dashboard artifactposted in MCP
Use this prompt in claude code to produce a dashboard artifact like this:
Create a claude.ai Artifact that's a control-panel dashboard for my TRIGGERcmd connector — it lists all my TRIGGERcmd commands, grouped by computer, and lets me run any of them with an optional parameter, right from the page. Before writing any code: 1. Load the artifact-capabilities skill and read the mcp.d.ts type definitions for the current runtime contract — follow that contract exactly, don't rely on remembered API shape. 2. Find my TRIGGERcmd MCP tools (they'll appear as mcp__<connector>__list_commands and mcp__<connector>__run_command or similar). Actually call list_commands, and actually call run_command once (e.g. trigger a harmless command like a Calculator command) to observe the REAL response shape — TRIGGERcmd tools return plain text, not JSON, so you'll need to parse that text yourself rather than assume structured JSON. 3. Note: the manifest `capabilities` you pass to the Artifact tool uses the connector name segment from the tool's internal name (e.g. "claude_ai_TRIGGERcmd"), which gets auto-resolved to the display name at publish time. BUT the actual `window.claude.mcp.callTool()` / `watchTool()` calls inside the page's JavaScript must use the connector's real DISPLAY NAME (e.g. "TRIGGERcmd"), not that internal segment — using the segment at runtime causes a `not_in_manifest` error even though the manifest itself is correct. Get this right the first time. Dashboard requirements: - Use watchTool for list_commands (it's a read, should stay live/refreshable) and callTool for run_command (it's an action, fire on click). - Parse the text response into computer → [commands] groups; each command may have a voice-trigger label and/or a description (commands with descriptions typically accept a text parameter). - Layout: sidebar or nav of computers with command counts, a search box that filters across all commands, collapsible groups per computer, and a Run button + optional parameter input per command. - Show a live activity log (e.g. fixed panel) of triggered commands with pending/success/error status, since these are fire-and-forget hardware/device triggers with no persistent state to poll. - Handle MCP failure states distinctly per the type definitions — don't collapse everything into one generic error banner: distinguish "connector not connected/needs reauth" (show a reconnect message) from "temporarily unavailable" (offer retry, keep last-good data visible) from "not available in this context" (full-page fallback, e.g. when window.claude.mcp is undefined). - Design it as a real control-panel UI (dark/light theme aware, decent typography, not a default Bootstrap-y look) — apply the artifact-design skill's guidance for a UI/dashboard treatment. Publish it as a shareable Artifact with an appropriate favicon.
Then you'll find this and other artifacts here: https://claude.ai/artifacts
-
RE: Error while installing the triggercmdagentposted in Raspberry Pi
@Hannibal said in Error while installing the triggercmdagent:
Notice: Download is performed unsandboxed as root as file '/home/hannibal/downloads/triggercmdagent_1.0.1_all.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
Copy/paste that into ChatGPT to know why, but you can safely ignore that "Notice". Basically it means the _apt user doesn't have access to your user's home directory where the .deb file is, so it's using root to access it instead.
It looks like the agent is installed now, so you can move on to the next step:
node /usr/lib/triggercmdagent/resources/app/src/agent.js --consoleIt should prompt you for a token which you can copy/paste from the Instructions page while logged in at https://www.triggercmd.com