kctl-rmm 0.7.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- kctl_rmm-0.7.3/.gitignore +33 -0
- kctl_rmm-0.7.3/PKG-INFO +145 -0
- kctl_rmm-0.7.3/README.md +116 -0
- kctl_rmm-0.7.3/pyproject.toml +64 -0
- kctl_rmm-0.7.3/skills/rmm-admin/SKILL.md +247 -0
- kctl_rmm-0.7.3/src/kctl_rmm/__init__.py +3 -0
- kctl_rmm-0.7.3/src/kctl_rmm/__main__.py +5 -0
- kctl_rmm-0.7.3/src/kctl_rmm/cli.py +154 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/__init__.py +0 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/agents.py +247 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/alerts.py +68 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/checks.py +177 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/clients.py +106 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/config_cmd.py +484 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/dashboard.py +121 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/doctor_cmd.py +72 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/drivers.py +59 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/health.py +105 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/linux.py +322 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/maintenance.py +121 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/patches.py +77 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/remote.py +116 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/rustdesk.py +466 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/scripts.py +206 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/services.py +79 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/skill_cmd.py +76 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/software.py +116 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/tasks.py +57 -0
- kctl_rmm-0.7.3/src/kctl_rmm/commands/winupdates.py +100 -0
- kctl_rmm-0.7.3/src/kctl_rmm/core/__init__.py +0 -0
- kctl_rmm-0.7.3/src/kctl_rmm/core/callbacks.py +34 -0
- kctl_rmm-0.7.3/src/kctl_rmm/core/client.py +67 -0
- kctl_rmm-0.7.3/src/kctl_rmm/core/config.py +124 -0
- kctl_rmm-0.7.3/tests/__init__.py +0 -0
- kctl_rmm-0.7.3/tests/conftest.py +58 -0
- kctl_rmm-0.7.3/tests/test_core.py +380 -0
- kctl_rmm-0.7.3/tests/test_imports.py +74 -0
- kctl_rmm-0.7.3/tests/test_smoke.py +180 -0
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Python
|
|
2
|
+
__pycache__/
|
|
3
|
+
*.py[cod]
|
|
4
|
+
*.egg-info/
|
|
5
|
+
*.egg
|
|
6
|
+
dist/
|
|
7
|
+
build/
|
|
8
|
+
.eggs/
|
|
9
|
+
|
|
10
|
+
# Virtual environments
|
|
11
|
+
.venv/
|
|
12
|
+
venv/
|
|
13
|
+
|
|
14
|
+
# IDE
|
|
15
|
+
.idea/
|
|
16
|
+
.vscode/
|
|
17
|
+
*.swp
|
|
18
|
+
*.swo
|
|
19
|
+
|
|
20
|
+
# Testing
|
|
21
|
+
.pytest_cache/
|
|
22
|
+
.coverage
|
|
23
|
+
htmlcov/
|
|
24
|
+
.mypy_cache/
|
|
25
|
+
.ruff_cache/
|
|
26
|
+
|
|
27
|
+
# OS
|
|
28
|
+
.DS_Store
|
|
29
|
+
Thumbs.db
|
|
30
|
+
|
|
31
|
+
# Environment
|
|
32
|
+
.env
|
|
33
|
+
.env.local
|
kctl_rmm-0.7.3/PKG-INFO
ADDED
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: kctl-rmm
|
|
3
|
+
Version: 0.7.3
|
|
4
|
+
Summary: Kodemeio Tactical RMM CLI - manage remote monitoring and management
|
|
5
|
+
Author-email: Kodemeio <dev@kodeme.io>
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Keywords: cli,kodemeio,meshcentral,remote-management,rmm,tactical
|
|
8
|
+
Classifier: Development Status :: 3 - Alpha
|
|
9
|
+
Classifier: Environment :: Console
|
|
10
|
+
Classifier: Intended Audience :: System Administrators
|
|
11
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
12
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
13
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
14
|
+
Classifier: Topic :: System :: Systems Administration
|
|
15
|
+
Requires-Python: >=3.12
|
|
16
|
+
Requires-Dist: httpx>=0.28.0
|
|
17
|
+
Requires-Dist: kctl-lib>=0.8.0
|
|
18
|
+
Requires-Dist: pydantic>=2.10.0
|
|
19
|
+
Requires-Dist: pyyaml>=6.0.2
|
|
20
|
+
Requires-Dist: rich>=13.9.0
|
|
21
|
+
Requires-Dist: typer>=0.15.0
|
|
22
|
+
Provides-Extra: dev
|
|
23
|
+
Requires-Dist: mypy>=1.14.0; extra == 'dev'
|
|
24
|
+
Requires-Dist: pytest-httpx>=0.35.0; extra == 'dev'
|
|
25
|
+
Requires-Dist: pytest>=8.3.0; extra == 'dev'
|
|
26
|
+
Requires-Dist: ruff>=0.9.0; extra == 'dev'
|
|
27
|
+
Requires-Dist: types-pyyaml>=6.0.0; extra == 'dev'
|
|
28
|
+
Description-Content-Type: text/markdown
|
|
29
|
+
|
|
30
|
+
# kctl-rmm
|
|
31
|
+
|
|
32
|
+
Kodemeio Tactical RMM CLI — manage remote monitoring and management for all clients.
|
|
33
|
+
|
|
34
|
+
## Installation
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
uv tool install .
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
## Quick Start
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
kctl-rmm config init
|
|
44
|
+
kctl-rmm health
|
|
45
|
+
kctl-rmm dashboard
|
|
46
|
+
kctl-rmm agents list
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
## Setup
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
kctl-rmm config init
|
|
53
|
+
kctl-rmm config add abcfood --url https://api-rmm.abcfood.app --api-key $KEY
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Command Groups
|
|
57
|
+
|
|
58
|
+
| Group | Description |
|
|
59
|
+
|-------|-------------|
|
|
60
|
+
| `config` | Manage CLI configuration and profiles |
|
|
61
|
+
| `doctor` | Diagnostic checks (URL + API key) |
|
|
62
|
+
| `health` | Health checks and diagnostics |
|
|
63
|
+
| `dashboard` | System overview dashboard |
|
|
64
|
+
| `agents` | Manage Tactical RMM agents |
|
|
65
|
+
| `scripts` | Manage and execute scripts |
|
|
66
|
+
| `clients` | Manage clients and sites |
|
|
67
|
+
| `software` | Software inventory management |
|
|
68
|
+
| `patches` | Manage Windows patches and updates |
|
|
69
|
+
| `alerts` | Manage alerts |
|
|
70
|
+
| `tasks` | Manage automated tasks |
|
|
71
|
+
| `services` | Manage Windows services on remote agents |
|
|
72
|
+
| `drivers` | Driver management (POS58 thermal printer) |
|
|
73
|
+
| `remote` | Remote access (Take Control, terminal, MeshCentral) |
|
|
74
|
+
| `maintenance` | RMM stack maintenance (docker services) |
|
|
75
|
+
| `checks` | Manage automated checks |
|
|
76
|
+
| `winupdates` | Manage Windows Updates on agents |
|
|
77
|
+
| `linux` | Linux agent management (install/update/uninstall) |
|
|
78
|
+
| `rustdesk` | RustDesk remote access (connect, deploy, manage) |
|
|
79
|
+
|
|
80
|
+
## Usage Examples
|
|
81
|
+
|
|
82
|
+
```bash
|
|
83
|
+
# Remote Access (opens browser)
|
|
84
|
+
kctl-rmm remote takecontrol PCTMIGBJ # Take Control by hostname
|
|
85
|
+
kctl-rmm remote rmm # Open RMM dashboard
|
|
86
|
+
kctl-rmm remote mesh # Open MeshCentral
|
|
87
|
+
|
|
88
|
+
# Agents
|
|
89
|
+
kctl-rmm agents list
|
|
90
|
+
kctl-rmm agents summary
|
|
91
|
+
kctl-rmm agents offline
|
|
92
|
+
|
|
93
|
+
# Scripts
|
|
94
|
+
kctl-rmm scripts list
|
|
95
|
+
kctl-rmm scripts run 136 --agent <id>
|
|
96
|
+
|
|
97
|
+
# Monitoring
|
|
98
|
+
kctl-rmm dashboard
|
|
99
|
+
kctl-rmm health
|
|
100
|
+
|
|
101
|
+
# Multi-profile
|
|
102
|
+
kctl-rmm -p abcfood agents list
|
|
103
|
+
kctl-rmm -p abcfood remote takecontrol DESKTOP-KR118VQ
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Global Options
|
|
107
|
+
|
|
108
|
+
| Option | Short | Description |
|
|
109
|
+
|--------|-------|-------------|
|
|
110
|
+
| `--json` | | Output as JSON |
|
|
111
|
+
| `--quiet` | `-q` | Suppress info messages |
|
|
112
|
+
| `--format` | | Output format: pretty, json, csv, yaml |
|
|
113
|
+
| `--no-header` | | Omit table headers |
|
|
114
|
+
| `--profile` | `-p` | Config profile name |
|
|
115
|
+
| `--url` | | API URL override |
|
|
116
|
+
| `--api-key` | | X-API-KEY override |
|
|
117
|
+
| `--version` | `-V` | Show version and exit |
|
|
118
|
+
|
|
119
|
+
## Configuration
|
|
120
|
+
|
|
121
|
+
Config lives in `~/.config/kodemeio/config.yaml` under the `rmm` service key.
|
|
122
|
+
|
|
123
|
+
```bash
|
|
124
|
+
# Initialize default profile
|
|
125
|
+
kctl-rmm config init
|
|
126
|
+
|
|
127
|
+
# Add a client-specific profile
|
|
128
|
+
kctl-rmm config add abcfood \
|
|
129
|
+
--url https://api-rmm.abcfood.app \
|
|
130
|
+
--api-key $RMM_API_KEY
|
|
131
|
+
|
|
132
|
+
# List all profiles
|
|
133
|
+
kctl-rmm config profiles
|
|
134
|
+
|
|
135
|
+
# Show current profile
|
|
136
|
+
kctl-rmm config show
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
## Development
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
uv run pytest tests/ -v
|
|
143
|
+
uv run ruff check src/
|
|
144
|
+
uv run mypy src/
|
|
145
|
+
```
|
kctl_rmm-0.7.3/README.md
ADDED
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
# kctl-rmm
|
|
2
|
+
|
|
3
|
+
Kodemeio Tactical RMM CLI — manage remote monitoring and management for all clients.
|
|
4
|
+
|
|
5
|
+
## Installation
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
uv tool install .
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
## Quick Start
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
kctl-rmm config init
|
|
15
|
+
kctl-rmm health
|
|
16
|
+
kctl-rmm dashboard
|
|
17
|
+
kctl-rmm agents list
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
## Setup
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
kctl-rmm config init
|
|
24
|
+
kctl-rmm config add abcfood --url https://api-rmm.abcfood.app --api-key $KEY
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
## Command Groups
|
|
28
|
+
|
|
29
|
+
| Group | Description |
|
|
30
|
+
|-------|-------------|
|
|
31
|
+
| `config` | Manage CLI configuration and profiles |
|
|
32
|
+
| `doctor` | Diagnostic checks (URL + API key) |
|
|
33
|
+
| `health` | Health checks and diagnostics |
|
|
34
|
+
| `dashboard` | System overview dashboard |
|
|
35
|
+
| `agents` | Manage Tactical RMM agents |
|
|
36
|
+
| `scripts` | Manage and execute scripts |
|
|
37
|
+
| `clients` | Manage clients and sites |
|
|
38
|
+
| `software` | Software inventory management |
|
|
39
|
+
| `patches` | Manage Windows patches and updates |
|
|
40
|
+
| `alerts` | Manage alerts |
|
|
41
|
+
| `tasks` | Manage automated tasks |
|
|
42
|
+
| `services` | Manage Windows services on remote agents |
|
|
43
|
+
| `drivers` | Driver management (POS58 thermal printer) |
|
|
44
|
+
| `remote` | Remote access (Take Control, terminal, MeshCentral) |
|
|
45
|
+
| `maintenance` | RMM stack maintenance (docker services) |
|
|
46
|
+
| `checks` | Manage automated checks |
|
|
47
|
+
| `winupdates` | Manage Windows Updates on agents |
|
|
48
|
+
| `linux` | Linux agent management (install/update/uninstall) |
|
|
49
|
+
| `rustdesk` | RustDesk remote access (connect, deploy, manage) |
|
|
50
|
+
|
|
51
|
+
## Usage Examples
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
# Remote Access (opens browser)
|
|
55
|
+
kctl-rmm remote takecontrol PCTMIGBJ # Take Control by hostname
|
|
56
|
+
kctl-rmm remote rmm # Open RMM dashboard
|
|
57
|
+
kctl-rmm remote mesh # Open MeshCentral
|
|
58
|
+
|
|
59
|
+
# Agents
|
|
60
|
+
kctl-rmm agents list
|
|
61
|
+
kctl-rmm agents summary
|
|
62
|
+
kctl-rmm agents offline
|
|
63
|
+
|
|
64
|
+
# Scripts
|
|
65
|
+
kctl-rmm scripts list
|
|
66
|
+
kctl-rmm scripts run 136 --agent <id>
|
|
67
|
+
|
|
68
|
+
# Monitoring
|
|
69
|
+
kctl-rmm dashboard
|
|
70
|
+
kctl-rmm health
|
|
71
|
+
|
|
72
|
+
# Multi-profile
|
|
73
|
+
kctl-rmm -p abcfood agents list
|
|
74
|
+
kctl-rmm -p abcfood remote takecontrol DESKTOP-KR118VQ
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
## Global Options
|
|
78
|
+
|
|
79
|
+
| Option | Short | Description |
|
|
80
|
+
|--------|-------|-------------|
|
|
81
|
+
| `--json` | | Output as JSON |
|
|
82
|
+
| `--quiet` | `-q` | Suppress info messages |
|
|
83
|
+
| `--format` | | Output format: pretty, json, csv, yaml |
|
|
84
|
+
| `--no-header` | | Omit table headers |
|
|
85
|
+
| `--profile` | `-p` | Config profile name |
|
|
86
|
+
| `--url` | | API URL override |
|
|
87
|
+
| `--api-key` | | X-API-KEY override |
|
|
88
|
+
| `--version` | `-V` | Show version and exit |
|
|
89
|
+
|
|
90
|
+
## Configuration
|
|
91
|
+
|
|
92
|
+
Config lives in `~/.config/kodemeio/config.yaml` under the `rmm` service key.
|
|
93
|
+
|
|
94
|
+
```bash
|
|
95
|
+
# Initialize default profile
|
|
96
|
+
kctl-rmm config init
|
|
97
|
+
|
|
98
|
+
# Add a client-specific profile
|
|
99
|
+
kctl-rmm config add abcfood \
|
|
100
|
+
--url https://api-rmm.abcfood.app \
|
|
101
|
+
--api-key $RMM_API_KEY
|
|
102
|
+
|
|
103
|
+
# List all profiles
|
|
104
|
+
kctl-rmm config profiles
|
|
105
|
+
|
|
106
|
+
# Show current profile
|
|
107
|
+
kctl-rmm config show
|
|
108
|
+
```
|
|
109
|
+
|
|
110
|
+
## Development
|
|
111
|
+
|
|
112
|
+
```bash
|
|
113
|
+
uv run pytest tests/ -v
|
|
114
|
+
uv run ruff check src/
|
|
115
|
+
uv run mypy src/
|
|
116
|
+
```
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["hatchling"]
|
|
3
|
+
build-backend = "hatchling.build"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "kctl-rmm"
|
|
7
|
+
version = "0.7.3"
|
|
8
|
+
description = "Kodemeio Tactical RMM CLI - manage remote monitoring and management"
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = "MIT"
|
|
11
|
+
requires-python = ">=3.12"
|
|
12
|
+
authors = [{ name = "Kodemeio", email = "dev@kodeme.io" }]
|
|
13
|
+
keywords = ["rmm", "tactical", "meshcentral", "remote-management", "cli", "kodemeio"]
|
|
14
|
+
classifiers = [
|
|
15
|
+
"Development Status :: 3 - Alpha",
|
|
16
|
+
"Environment :: Console",
|
|
17
|
+
"Intended Audience :: System Administrators",
|
|
18
|
+
"License :: OSI Approved :: MIT License",
|
|
19
|
+
"Programming Language :: Python :: 3.12",
|
|
20
|
+
"Programming Language :: Python :: 3.13",
|
|
21
|
+
"Topic :: System :: Systems Administration",
|
|
22
|
+
]
|
|
23
|
+
dependencies = [
|
|
24
|
+
"kctl-lib>=0.8.0",
|
|
25
|
+
"typer>=0.15.0",
|
|
26
|
+
"httpx>=0.28.0",
|
|
27
|
+
"rich>=13.9.0",
|
|
28
|
+
"pydantic>=2.10.0",
|
|
29
|
+
"pyyaml>=6.0.2",
|
|
30
|
+
]
|
|
31
|
+
|
|
32
|
+
[project.optional-dependencies]
|
|
33
|
+
dev = [
|
|
34
|
+
"pytest>=8.3.0",
|
|
35
|
+
"pytest-httpx>=0.35.0",
|
|
36
|
+
"ruff>=0.9.0",
|
|
37
|
+
"mypy>=1.14.0",
|
|
38
|
+
"types-PyYAML>=6.0.0",
|
|
39
|
+
]
|
|
40
|
+
|
|
41
|
+
[project.scripts]
|
|
42
|
+
kctl-rmm = "kctl_rmm.cli:_run"
|
|
43
|
+
|
|
44
|
+
[project.entry-points."kctl_rmm.plugins"]
|
|
45
|
+
|
|
46
|
+
[tool.hatch.build.targets.wheel]
|
|
47
|
+
packages = ["src/kctl_rmm"]
|
|
48
|
+
|
|
49
|
+
[tool.uv.sources]
|
|
50
|
+
kctl-lib = { workspace = true }
|
|
51
|
+
|
|
52
|
+
[tool.ruff]
|
|
53
|
+
target-version = "py312"
|
|
54
|
+
line-length = 120
|
|
55
|
+
|
|
56
|
+
[tool.ruff.lint]
|
|
57
|
+
select = ["E", "F", "I", "W", "UP", "B", "SIM"]
|
|
58
|
+
|
|
59
|
+
[tool.mypy]
|
|
60
|
+
python_version = "3.12"
|
|
61
|
+
strict = true
|
|
62
|
+
|
|
63
|
+
[tool.pytest.ini_options]
|
|
64
|
+
testpaths = ["tests"]
|
|
@@ -0,0 +1,247 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: rmm-admin
|
|
3
|
+
description: >
|
|
4
|
+
Tactical RMM remote monitoring via kctl-rmm CLI (19 groups, ~68 commands).
|
|
5
|
+
MUST use for ANY kctl-rmm operation.
|
|
6
|
+
Triggers on: "agents", "alerts", "check", "check-printer", "checks", "clients", "config", "connect", "current", "dashboard", "deploy", "dismiss", "drivers", "generate", "health", "history", "init", "install", "install-pos58", "kctl-rmm", "linux", "logs", "maintenance", "mesh", "migrate", "offline", "patches", "ping", "profile", "profiles", "reboot", "remote", "remove", "restart", "results", "rustdesk", "scan", "scripts", "search", "services", "setup", "sites", "skill", "software", "start", "stop", "summary", "takecontrol", "tasks", "terminal", "test", "transfer", "uninstall", "winupdates".
|
|
7
|
+
Auto-generated: 2026-04-05
|
|
8
|
+
registry_hash: caa7b6286d08
|
|
9
|
+
---
|
|
10
|
+
|
|
11
|
+
# rmm-admin — kctl-rmm CLI Reference
|
|
12
|
+
|
|
13
|
+
> Auto-generated from `kctl-rmm` command registry. Do not edit manually.
|
|
14
|
+
> To regenerate: `kctl-rmm skill generate`
|
|
15
|
+
> To add custom content: edit `SKILL.extra.md` in the same directory.
|
|
16
|
+
|
|
17
|
+
## Overview
|
|
18
|
+
|
|
19
|
+
**CLI:** `kctl-rmm`
|
|
20
|
+
**Command groups:** 19
|
|
21
|
+
**Total commands:** ~68
|
|
22
|
+
**Install:** `cd cli && uv tool install --editable .`
|
|
23
|
+
|
|
24
|
+
## Global Options
|
|
25
|
+
|
|
26
|
+
| Flag | Description |
|
|
27
|
+
|------|-------------|
|
|
28
|
+
| `--json` | JSON output |
|
|
29
|
+
| `--quiet`, `-q` | Suppress info messages |
|
|
30
|
+
| `--format`, `-f` | Output format: pretty/json/csv/yaml |
|
|
31
|
+
| `--no-header` | Omit CSV header row |
|
|
32
|
+
| `--profile`, `-p` | Config profile name |
|
|
33
|
+
| `--version`, `-V` | Show version |
|
|
34
|
+
|
|
35
|
+
## Command Reference
|
|
36
|
+
|
|
37
|
+
### `kctl-rmm agents`
|
|
38
|
+
|
|
39
|
+
Manage Tactical RMM agents.
|
|
40
|
+
|
|
41
|
+
| Command | Description |
|
|
42
|
+
|---------|-------------|
|
|
43
|
+
| `agents get <agent_id>` | Get agent details. |
|
|
44
|
+
| `agents list [--detail] [--client] [--site]` | List all agents. |
|
|
45
|
+
| `agents offline` | List agents that are offline/unreachable. |
|
|
46
|
+
| `agents ping <agent_id>` | Ping an agent to check connectivity. |
|
|
47
|
+
| `agents reboot <agent_id> [--force]` | Reboot a remote machine. |
|
|
48
|
+
| `agents summary` | Agent count summary by client/site, online/offline. |
|
|
49
|
+
| `agents update <agent_id>` | Trigger agent update. |
|
|
50
|
+
|
|
51
|
+
### `kctl-rmm alerts`
|
|
52
|
+
|
|
53
|
+
Manage alerts.
|
|
54
|
+
|
|
55
|
+
| Command | Description |
|
|
56
|
+
|---------|-------------|
|
|
57
|
+
| `alerts dismiss <alert_id>` | Dismiss an alert. |
|
|
58
|
+
| `alerts list [--severity]` | List active alerts. |
|
|
59
|
+
|
|
60
|
+
### `kctl-rmm checks`
|
|
61
|
+
|
|
62
|
+
Manage automated checks.
|
|
63
|
+
|
|
64
|
+
| Command | Description |
|
|
65
|
+
|---------|-------------|
|
|
66
|
+
| `checks create <agent> <check_type> [--name] [--threshold] [--alert_severity]` | Create an automated check on an agent. |
|
|
67
|
+
| `checks delete <check_id> [--force]` | Delete an automated check. |
|
|
68
|
+
| `checks list [--agent]` | List automated checks. |
|
|
69
|
+
| `checks results <check_id>` | Show results/history for a check. |
|
|
70
|
+
| `checks run <check_id>` | Manually run a check. |
|
|
71
|
+
|
|
72
|
+
### `kctl-rmm clients`
|
|
73
|
+
|
|
74
|
+
Manage clients and sites.
|
|
75
|
+
|
|
76
|
+
| Command | Description |
|
|
77
|
+
|---------|-------------|
|
|
78
|
+
| `clients get <client_id>` | Get client details with sites. |
|
|
79
|
+
| `clients list` | List all clients. |
|
|
80
|
+
| `clients sites [--client_filter]` | List all sites. |
|
|
81
|
+
|
|
82
|
+
### `kctl-rmm config`
|
|
83
|
+
|
|
84
|
+
Manage CLI configuration and profiles.
|
|
85
|
+
|
|
86
|
+
| Command | Description |
|
|
87
|
+
|---------|-------------|
|
|
88
|
+
| `config add <name> [--url] [--api_key] [--mesh_url] [--set_default]` | Add or update a profile's RMM connection. |
|
|
89
|
+
| `config current` | Show the active profile and connection status. |
|
|
90
|
+
| `config init [--url] [--api_key] [--mesh_url] [--name]` | Initialize CLI configuration (interactive if no flags given). |
|
|
91
|
+
| `config migrate` | Migrate config from flat format to service-scoped format. |
|
|
92
|
+
| `config profiles` | List all profiles with RMM connection status. |
|
|
93
|
+
| `config remove <name> [--force] [--service_only]` | Remove a profile or just its RMM config. |
|
|
94
|
+
| `config set <key> <value> [--profile_arg]` | Set a configuration value for the current service. |
|
|
95
|
+
| `config show` | Show full configuration (API keys masked). |
|
|
96
|
+
| `config test` | Test API connection with current configuration. |
|
|
97
|
+
| `config use <name>` | Switch the default profile. |
|
|
98
|
+
|
|
99
|
+
### `kctl-rmm dashboard`
|
|
100
|
+
|
|
101
|
+
System overview dashboard.
|
|
102
|
+
|
|
103
|
+
### `kctl-rmm drivers`
|
|
104
|
+
|
|
105
|
+
Driver management (POS58 thermal printer).
|
|
106
|
+
|
|
107
|
+
| Command | Description |
|
|
108
|
+
|---------|-------------|
|
|
109
|
+
| `drivers check-printer <agent_id> [--timeout]` | Check printer/USB info on an agent (script 135). |
|
|
110
|
+
| `drivers install-pos58 <agent_id> [--timeout]` | Install POS58 thermal printer driver on an agent (script 136). |
|
|
111
|
+
|
|
112
|
+
### `kctl-rmm health`
|
|
113
|
+
|
|
114
|
+
Health checks and diagnostics.
|
|
115
|
+
|
|
116
|
+
### `kctl-rmm linux`
|
|
117
|
+
|
|
118
|
+
Linux agent management (install/update/uninstall via LinuxRMM-Script).
|
|
119
|
+
|
|
120
|
+
| Command | Description |
|
|
121
|
+
|---------|-------------|
|
|
122
|
+
| `linux install [--mesh_agent_url] [--auth_key] [--client_name] [--site_name] [--client_id] [--site_id] [--agent_type] [--ssh_host] [--ssh_port] [--dry_run]` | Install Tactical RMM agent on a Linux machine. |
|
|
123
|
+
| `linux status <ssh_host> [--ssh_port]` | Check Linux agent status on a remote host via SSH. |
|
|
124
|
+
| `linux uninstall [--mesh_fqdn] [--mesh_id] [--ssh_host] [--ssh_port] [--dry_run]` | Uninstall the Tactical RMM agent from a Linux machine. |
|
|
125
|
+
| `linux update [--ssh_host] [--ssh_port] [--dry_run]` | Update the Tactical RMM agent on a Linux machine. |
|
|
126
|
+
|
|
127
|
+
### `kctl-rmm maintenance`
|
|
128
|
+
|
|
129
|
+
RMM stack maintenance (docker services).
|
|
130
|
+
|
|
131
|
+
| Command | Description |
|
|
132
|
+
|---------|-------------|
|
|
133
|
+
| `maintenance logs <service> [--lines]` | Show log command for a service. |
|
|
134
|
+
| `maintenance restart <service>` | Show restart command for a service. |
|
|
135
|
+
| `maintenance status` | Show expected RMM service list and API health. |
|
|
136
|
+
|
|
137
|
+
### `kctl-rmm patches`
|
|
138
|
+
|
|
139
|
+
Manage Windows patches and updates.
|
|
140
|
+
|
|
141
|
+
| Command | Description |
|
|
142
|
+
|---------|-------------|
|
|
143
|
+
| `patches install <agent_id> [--all_patches] [--kb]` | Install patches on an agent. |
|
|
144
|
+
| `patches list <agent_id>` | List pending patches for an agent. |
|
|
145
|
+
| `patches scan <agent_id>` | Trigger a patch scan on an agent. |
|
|
146
|
+
|
|
147
|
+
### `kctl-rmm remote`
|
|
148
|
+
|
|
149
|
+
Remote access (Take Control, terminal, MeshCentral).
|
|
150
|
+
|
|
151
|
+
| Command | Description |
|
|
152
|
+
|---------|-------------|
|
|
153
|
+
| `remote mesh` | Open MeshCentral dashboard in browser. |
|
|
154
|
+
| `remote rmm` | Open Tactical RMM dashboard in browser. |
|
|
155
|
+
| `remote takecontrol <agent>` | Take Control of agent (opens TRMM remote desktop). |
|
|
156
|
+
| `remote terminal <agent>` | Open terminal for agent via MeshCentral. |
|
|
157
|
+
|
|
158
|
+
### `kctl-rmm rustdesk`
|
|
159
|
+
|
|
160
|
+
RustDesk remote access (connect, deploy, manage).
|
|
161
|
+
|
|
162
|
+
| Command | Description |
|
|
163
|
+
|---------|-------------|
|
|
164
|
+
| `rustdesk connect <agent>` | Open RustDesk remote session to agent. |
|
|
165
|
+
| `rustdesk deploy [--agent_id] [--all_agents] [--client_filter] [--timeout]` | Deploy RustDesk client to agent(s) via TRMM script. |
|
|
166
|
+
| `rustdesk list [--client_filter] [--installed_only]` | List agents with their RustDesk IDs. |
|
|
167
|
+
| `rustdesk setup` | One-time setup: create TRMM custom fields and upload RustDesk scripts. |
|
|
168
|
+
| `rustdesk status <agent_id> [--timeout]` | Check RustDesk status on an agent (runs check script). |
|
|
169
|
+
| `rustdesk transfer <agent>` | Open RustDesk file transfer session to agent. |
|
|
170
|
+
|
|
171
|
+
### `kctl-rmm scripts`
|
|
172
|
+
|
|
173
|
+
Manage and execute scripts.
|
|
174
|
+
|
|
175
|
+
| Command | Description |
|
|
176
|
+
|---------|-------------|
|
|
177
|
+
| `scripts create <name> [--shell] [--file] [--description] [--timeout]` | Upload a new script. |
|
|
178
|
+
| `scripts get <script_id>` | Get script details. |
|
|
179
|
+
| `scripts history [--agent]` | View script execution history. |
|
|
180
|
+
| `scripts list` | List all scripts. |
|
|
181
|
+
| `scripts run <script_id> [--agent] [--all_agents] [--client_filter] [--timeout]` | Run a script on agent(s). |
|
|
182
|
+
|
|
183
|
+
### `kctl-rmm services`
|
|
184
|
+
|
|
185
|
+
Manage Windows services on remote agents.
|
|
186
|
+
|
|
187
|
+
| Command | Description |
|
|
188
|
+
|---------|-------------|
|
|
189
|
+
| `services list <agent_id>` | List Windows services on an agent. |
|
|
190
|
+
| `services restart <agent_id> <service_name>` | Restart a Windows service. |
|
|
191
|
+
| `services start <agent_id> <service_name>` | Start a Windows service. |
|
|
192
|
+
| `services stop <agent_id> <service_name>` | Stop a Windows service. |
|
|
193
|
+
|
|
194
|
+
### `kctl-rmm skill`
|
|
195
|
+
|
|
196
|
+
Claude Code skill management.
|
|
197
|
+
|
|
198
|
+
| Command | Description |
|
|
199
|
+
|---------|-------------|
|
|
200
|
+
| `skill generate [--output] [--install] [--check]` | Auto-generate SKILL.md from CLI command registry. |
|
|
201
|
+
|
|
202
|
+
**Examples:**
|
|
203
|
+
```bash
|
|
204
|
+
kctl-rmm skill generate
|
|
205
|
+
kctl-rmm skill generate --install
|
|
206
|
+
kctl-rmm skill generate --check
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
### `kctl-rmm software`
|
|
210
|
+
|
|
211
|
+
Software inventory management.
|
|
212
|
+
|
|
213
|
+
| Command | Description |
|
|
214
|
+
|---------|-------------|
|
|
215
|
+
| `software list <agent_id>` | List installed software on an agent. |
|
|
216
|
+
| `software search <name> [--agent_id]` | Search for software across agents. |
|
|
217
|
+
|
|
218
|
+
### `kctl-rmm tasks`
|
|
219
|
+
|
|
220
|
+
Manage automated tasks.
|
|
221
|
+
|
|
222
|
+
| Command | Description |
|
|
223
|
+
|---------|-------------|
|
|
224
|
+
| `tasks list [--agent]` | List automated tasks. |
|
|
225
|
+
| `tasks run <task_id>` | Trigger a task manually. |
|
|
226
|
+
|
|
227
|
+
### `kctl-rmm winupdates`
|
|
228
|
+
|
|
229
|
+
Manage Windows Updates on agents.
|
|
230
|
+
|
|
231
|
+
| Command | Description |
|
|
232
|
+
|---------|-------------|
|
|
233
|
+
| `winupdates install <agent_id> [--kb] [--all_updates] [--reboot]` | Install Windows updates on an agent. |
|
|
234
|
+
| `winupdates list <agent_id>` | List Windows updates for an agent. |
|
|
235
|
+
| `winupdates scan <agent_id>` | Trigger a Windows Update scan on an agent. |
|
|
236
|
+
|
|
237
|
+
## Configuration
|
|
238
|
+
|
|
239
|
+
Shared config: `~/.config/kodemeio/config.yaml`
|
|
240
|
+
|
|
241
|
+
```bash
|
|
242
|
+
kctl-rmm config init # Interactive setup
|
|
243
|
+
kctl-rmm config show # Show current config
|
|
244
|
+
kctl-rmm config profiles # List profiles
|
|
245
|
+
kctl-rmm config current # Show active profile
|
|
246
|
+
kctl-rmm config validate # Verify config
|
|
247
|
+
```
|