Usage
Usage
Agent management
List agents
command
jack agents listoutput
Accepted
• agent1
• agent3
Candidates
• agent2
Rejected
• agent1Manage agents
command
jack agents <accept|reject|remove> <agent>output
$ jack agents accept agent2Agents health
command
jack agents healthoutput
Agents
• agent1 (connected, active)
• agent2 (connected, inactive)
• agent3 (disconnected, inactive)agent1is connected and had recent activity (e.g. a task has been executed).agent2is connected and did not have any recent activity.agent3is not connected to the manager anymore (e.g. due to service down, or network issue).
Run a task
All targeting modes are documented here.
command
jack run <agent> <plugin:task> <arg1> <argN>One target
example
# Check the health of agent1
$ jack run agent1 health:pingoutput
agent1
→ output:
trueMultiple targets
example
# Execute the 'uptime' command on all agent matching 'agent*'
$ jack run agent* cmd:run "uptime"output
agent1
→ output:
|
14:49:15 up 4:58, 0 user, load average: 0.13, 0.52, 0.65
agent2
→ output:
|
14:49:15 up 4:58, 0 user, load average: 0.13, 0.52, 0.65
agent3
→ output:
|
14:49:15 up 4:58, 0 user, load average: 0.13, 0.52, 0.65Get job results
List jobs
command
jack results listoutput
Task results
[✓] 1757515773331361206 - 2025-09-10 14:49:33
agent1
[✓] 1757515773331318817 - 2025-09-10 14:49:33
agent2
[✓] 1757515755520084702 - 2025-09-10 14:49:15
agent2
[✓] 1757515755520078922 - 2025-09-10 14:49:15
agent1
[✓] 1757515755519920865 - 2025-09-10 14:49:15
1757515755520078922,1757515755520084702Get one job result
command
jack results get <ID>example
# Show the result of the job '1757515755519920865'
$ jack results get 1757515755519920865output
Request:
→ Task: cmd:run
→ Connected targets: agent2, agent1
Agent: agent1
→ groupID: 1757515755519920865
→ id: 1757515755520078922
→ output:
|
14:49:15 up 4:58, 0 user, load average: 0.13, 0.52, 0.65
Agent: agent2
→ groupID: 1757515755519920865
→ id: 1757515755520084702
→ output:
|
14:49:15 up 4:58, 0 user, load average: 0.13, 0.52, 0.65Manage plugins
List installed plugins
command
jack run <agent> plugins:listexample
# List installed plugins on agent1
$ jack run agent1 plugins:listoutput
agent1
→ output:
- specs
- cmd
- health
- pluginsInstall/update/remove plugins
You can synchronize the plugins on the agent using, following plugins.yaml configuration on the manager.
It will:
- Add new plugins not installed on the agent.
- Update existing plugins if necessary.
- Remove unwanted plugins.
command
jack run <agent> plugins:syncexample
# Sync plugins to agent1
$ jack run agent1 plugins:syncoutput
agent1
→ output:
Added:
- Name: demoDuring sync, states can be: Added, Deleted, Unchanged, Updated.
Get version of a plugin
command
jack run <agent> plugins:versionexample
# Get version information of the 'demo' plugin installed on agent1
$ jack run agent1 plugins:version demooutput
agent1
→ output:
BuildTime: "2025-09-10T15:01:00Z"
Commit: v0.0.6
GoVersion: go1.25.1
PluginVersion: v0.0.6Print the help for a plugin
command
jack run <agent> plugins:help <plugin>example
# Print the help of the 'demo' plugin installed on agent1
$ jack run agent1 plugins:help demooutput
agent1
→ output:
demo: |
hello Simple hello world task
configure_service Configure a system service
monitor_health Monitor system health metrics
create_user Create a new user account
get_system_version Get system version (returns string)
get_connection_count Get active connections (returns int64)
is_maintenance_mode Check maintenance mode (returns bool)
get_cpu_usage Get CPU usage (returns float64)
list_services List active services (returns []string)
get_users Get user list (returns []User)
get_env_vars Get environment variables (returns map[string]string)
get_metrics Get system metrics (returns map[string]any)
get_server_info Get server information (returns ServerInfo)
get_reboot_history Get reboot history (returns [3]string)
get_db_stats Get database statistics (returns map[string]DatabaseStats)
find_user Find user by email (returns *User)
upgrade_system Upgrade system packagesPrint the help for a task
command
jack run <agent> plugins:help <plugin:task>example
# Print the help of the task 'configure_service'
# from 'demo' plugin installed on agent1
$ jack run agent1 plugins:help demo:configure_serviceoutput
agent1
→ output:
configure_service: |+
Summary:
Configure a system service
Description:
Configures a named service with regional settings and timeout controls.
Usage:
jack run <target> demo:configure_service <serviceName>
Arguments:
serviceName string e.g. webserver-pro
Lock Mode: write