Rewst's lean, open-source command executor that fits right into your Rewst workflows. See community corner for more details.
Agent Smith runs as a system service on Windows, Linux, and macOS. Installation involves configuring the agent with your organization credentials and starting the service.
- A Rewst organization ID
- Configuration URL and secret from your Rewst platform
- Administrative/root privileges for service installation
- Download the appropriate binary for your platform from the releases page
- Configure the agent with your organization credentials:
Windows:
rewst_agent_config.win.exe --org-id YOUR_ORG_ID --config-url CONFIG_URL --config-secret CONFIG_SECRET
Linux/macOS:
./rewst_agent_config.linux.bin --org-id YOUR_ORG_ID --config-url CONFIG_URL --config-secret CONFIG_SECRET
# or
./rewst_agent_config.mac-os.bin --org-id YOUR_ORG_ID --config-url CONFIG_URL --config-secret CONFIG_SECRET
--logging-level
: Set logging verbosity (info
,warn
,error
)--syslog
: Write logs to system log instead of file (Linux/macOS)
Example with optional parameters:
./rewst_agent_config --org-id YOUR_ORG_ID --config-url CONFIG_URL --config-secret CONFIG_SECRET --logging-level info --syslog
Once configured, the agent can run in service mode using the generated configuration:
./rewst_agent_config --org-id YOUR_ORG_ID --config-file /path/to/config.json --log-file /path/to/agent.log
To remove Agent Smith from your system:
# Replace with your organization ID
./rewst_agent_config --org-id YOUR_ORG_ID --uninstall
This will stop the service, remove configuration files, and clean up system service registrations.
- Cross-platform: Runs on Windows, Linux, and macOS
- Secure: Uses Azure IoT Hub MQTT for encrypted communication
- Extensible: Plugin system for custom notifications and integrations
- Reliable: Automatic reconnection and error handling
- Lightweight: Minimal resource footprint
- Agent connects to your Rewst organization via Azure IoT Hub MQTT
- Receives command execution requests from Rewst workflows
- Executes commands using PowerShell (Windows) or Bash (Unix/Linux/macOS)
- Returns results back to the Rewst platform
- Supports system information collection and custom plugins
Required tools and packages:
-
commitizen: To use a standardized description of commits.
pipx ensurepath pipx install commitizen pipx upgrade commitizen
-
go-winres: To embed icons and file versions to windows executables.
go install github.com/tc-hib/go-winres@latest
Run the following command using powershell
or pwsh
to build the binary:
./scripts/build.ps1
Contributions are always welcome. Please submit a PR!
Please use commitizen to format the commit messages. After staging your changes, you can commit the changes with this command.
cz commit
Agent Smith is licensed under GNU GENERAL PUBLIC LICENSE
. See license file for details.