@elvatis_com/openclaw-ispconfig 0.1.2 → 0.2.1
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.
- package/README.md +149 -37
- package/dist/index.d.ts +54 -43
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +76 -1
- package/dist/index.js.map +1 -1
- package/dist/templates/github-issue-helper.d.ts +10 -0
- package/dist/templates/github-issue-helper.d.ts.map +1 -0
- package/dist/templates/github-issue-helper.js +43 -0
- package/dist/templates/github-issue-helper.js.map +1 -0
- package/dist/tools.d.ts.map +1 -1
- package/dist/tools.js +167 -0
- package/dist/tools.js.map +1 -1
- package/dist/types.d.ts +5 -0
- package/dist/types.d.ts.map +1 -1
- package/openclaw.plugin.json +55 -45
- package/package.json +9 -8
package/README.md
CHANGED
|
@@ -1,11 +1,14 @@
|
|
|
1
1
|
# @elvatis_com/openclaw-ispconfig
|
|
2
2
|
|
|
3
|
+
**Current version:** 0.2.1
|
|
4
|
+
|
|
3
5
|
OpenClaw plugin to manage ISPConfig via the Remote JSON API.
|
|
4
6
|
|
|
5
7
|
## Features
|
|
6
8
|
|
|
7
9
|
- Session-based API client with auto-reconnect
|
|
8
10
|
- 31 tools for read, write, and one-command provisioning
|
|
11
|
+
- `/ispconfig` chat command for quick help and tool reference
|
|
9
12
|
- Safety guards via `readOnly` and `allowedOperations`
|
|
10
13
|
- Live integration tests against a real ISPConfig host (read-only)
|
|
11
14
|
|
|
@@ -54,45 +57,96 @@ npm install @elvatis_com/openclaw-ispconfig
|
|
|
54
57
|
- `allowedOperations` (default `[]`): whitelist of tool names
|
|
55
58
|
- `verifySsl` (default `true`): TLS certificate verification
|
|
56
59
|
|
|
60
|
+
## Chat Command
|
|
61
|
+
|
|
62
|
+
### `/ispconfig`
|
|
63
|
+
|
|
64
|
+
Type `/ispconfig` in any connected chat to display the full list of available tools, the plugin version, and the connected ISPConfig hostname (credentials are never shown).
|
|
65
|
+
|
|
66
|
+
Example output:
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
🖥️ ISPConfig Plugin
|
|
70
|
+
Version 0.2.0 | Connected to isp.elvatis.com
|
|
71
|
+
|
|
72
|
+
📋 Read Commands
|
|
73
|
+
• isp_system_info — Server-Info
|
|
74
|
+
• isp_client_list — Alle Clients
|
|
75
|
+
...
|
|
76
|
+
|
|
77
|
+
✏️ Write Commands
|
|
78
|
+
• isp_client_add — Client anlegen
|
|
79
|
+
...
|
|
80
|
+
|
|
81
|
+
🚀 Provisioning
|
|
82
|
+
• isp_provision_site — Alles auf einmal (domain, clientName, clientEmail)
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
## OpenClaw Plugin API
|
|
86
|
+
|
|
87
|
+
This plugin uses the modern OpenClaw Plugin API (`api.*`) instead of the legacy `(runtime, config)` registration pattern.
|
|
88
|
+
|
|
89
|
+
The entry point exports a default plugin object with a `register(api)` function:
|
|
90
|
+
|
|
91
|
+
```ts
|
|
92
|
+
export default {
|
|
93
|
+
manifest: pluginManifest,
|
|
94
|
+
register(api: PluginApi): void {
|
|
95
|
+
// Register tools
|
|
96
|
+
api.registerTool({ name, description, parameters, execute });
|
|
97
|
+
|
|
98
|
+
// Register chat commands
|
|
99
|
+
api.registerCommand({ name, description, usage, handler });
|
|
100
|
+
},
|
|
101
|
+
};
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
Key API methods used:
|
|
105
|
+
|
|
106
|
+
- `api.registerTool({ name, description, parameters, execute })` — exposes an AI-callable tool with JSON Schema parameters
|
|
107
|
+
- `api.registerCommand({ name, description, usage, handler })` — registers a `/command` for chat
|
|
108
|
+
- `api.pluginConfig` — typed plugin configuration from `openclaw.json`
|
|
109
|
+
- `api.logger` — structured logger (info, warn, error)
|
|
110
|
+
|
|
57
111
|
## Tools
|
|
58
112
|
|
|
59
|
-
### Read tools
|
|
60
|
-
|
|
61
|
-
- `
|
|
62
|
-
- `
|
|
63
|
-
- `isp_client_list` params: optional filter fields
|
|
64
|
-
- `isp_client_get` params: `client_id`
|
|
65
|
-
- `isp_sites_list` params: optional filters accepted by `sites_web_domain_get`
|
|
66
|
-
- `isp_site_get` params: `primary_id` (or `site_id`, `domain_id`)
|
|
67
|
-
- `isp_domains_list` params: none
|
|
68
|
-
- `isp_dns_zone_list` params: user-related filter params
|
|
69
|
-
- `isp_dns_record_list` params: `zone_id`
|
|
70
|
-
- `isp_mail_domain_list` params: optional filters
|
|
71
|
-
- `isp_mail_user_list` params: optional filters
|
|
72
|
-
- `isp_db_list` params: user-related filters
|
|
73
|
-
- `isp_ssl_status` params: none
|
|
74
|
-
- `isp_quota_check` params: `client_id`
|
|
75
|
-
- `
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
- `
|
|
81
|
-
- `
|
|
82
|
-
- `
|
|
83
|
-
- `
|
|
84
|
-
- `
|
|
85
|
-
- `
|
|
86
|
-
- `
|
|
87
|
-
- `
|
|
88
|
-
- `
|
|
89
|
-
- `
|
|
90
|
-
- `
|
|
91
|
-
- `
|
|
92
|
-
- `
|
|
93
|
-
- `
|
|
94
|
-
|
|
95
|
-
### Provisioning tool
|
|
113
|
+
### Read tools (15)
|
|
114
|
+
|
|
115
|
+
- `isp_system_info` — params: none
|
|
116
|
+
- `isp_methods_list` — params: none
|
|
117
|
+
- `isp_client_list` — params: optional filter fields
|
|
118
|
+
- `isp_client_get` — params: `client_id`
|
|
119
|
+
- `isp_sites_list` — params: optional filters accepted by `sites_web_domain_get`
|
|
120
|
+
- `isp_site_get` — params: `primary_id` (or `site_id`, `domain_id`)
|
|
121
|
+
- `isp_domains_list` — params: none
|
|
122
|
+
- `isp_dns_zone_list` — params: user-related filter params
|
|
123
|
+
- `isp_dns_record_list` — params: `zone_id`
|
|
124
|
+
- `isp_mail_domain_list` — params: optional filters
|
|
125
|
+
- `isp_mail_user_list` — params: optional filters
|
|
126
|
+
- `isp_db_list` — params: user-related filters
|
|
127
|
+
- `isp_ssl_status` — params: none
|
|
128
|
+
- `isp_quota_check` — params: `client_id`
|
|
129
|
+
- `isp_cron_list` — params: optional filters
|
|
130
|
+
|
|
131
|
+
### Write tools (15)
|
|
132
|
+
|
|
133
|
+
- `isp_client_add` — params: ISPConfig `client_add` payload
|
|
134
|
+
- `isp_site_add` — params: ISPConfig `sites_web_domain_add` payload
|
|
135
|
+
- `isp_domain_add` — alias for `isp_site_add`
|
|
136
|
+
- `isp_dns_zone_add` — params: ISPConfig `dns_zone_add` payload
|
|
137
|
+
- `isp_dns_record_add` — params: include `type` (`A`, `AAAA`, `MX`, `TXT`, `CNAME`) and matching payload
|
|
138
|
+
- `isp_dns_record_delete` — params: include `type` and matching delete payload
|
|
139
|
+
- `isp_mail_domain_add` — params: ISPConfig `mail_domain_add` payload
|
|
140
|
+
- `isp_mail_user_add` — params: ISPConfig `mail_user_add` payload
|
|
141
|
+
- `isp_mail_user_delete` — params: ISPConfig `mail_user_delete` payload
|
|
142
|
+
- `isp_db_add` — params: ISPConfig `sites_database_add` payload
|
|
143
|
+
- `isp_db_user_add` — params: ISPConfig `sites_database_user_add` payload
|
|
144
|
+
- `isp_shell_user_add` — params: ISPConfig `sites_shell_user_add` payload
|
|
145
|
+
- `isp_ftp_user_add` — params: ISPConfig `sites_ftp_user_add` payload
|
|
146
|
+
- `isp_cron_add` — params: ISPConfig `sites_cron_add` payload
|
|
147
|
+
- `isp_backup_list` — params: none (returns skipped if API method unavailable)
|
|
148
|
+
|
|
149
|
+
### Provisioning tool (1)
|
|
96
150
|
|
|
97
151
|
- `isp_provision_site`
|
|
98
152
|
- Required params:
|
|
@@ -115,11 +169,48 @@ Workflow:
|
|
|
115
169
|
6. Optionally create DB user and database
|
|
116
170
|
7. Ensure SSL flags are enabled on the site
|
|
117
171
|
|
|
172
|
+
**Total: 31 tools** (15 read + 14 write + 1 alias + 1 provisioning)
|
|
173
|
+
|
|
118
174
|
## Safety
|
|
119
175
|
|
|
120
176
|
- `readOnly=true` blocks all write and provisioning tools
|
|
121
177
|
- `allowedOperations=[...]` allows only named tools
|
|
122
178
|
|
|
179
|
+
## Roadmap
|
|
180
|
+
|
|
181
|
+
ISPConfig's Remote JSON API supports many more methods not yet covered by this plugin. Planned additions:
|
|
182
|
+
|
|
183
|
+
### Client Management
|
|
184
|
+
- `client_update` — update existing client fields
|
|
185
|
+
- `client_delete` — remove a client
|
|
186
|
+
|
|
187
|
+
### Website / Domain Management
|
|
188
|
+
- `sites_web_domain_delete` — delete a website
|
|
189
|
+
- `sites_web_domain_update` — update site config (internal helper exists, but no dedicated tool yet)
|
|
190
|
+
|
|
191
|
+
### Mail
|
|
192
|
+
- `mail_alias_add` / `mail_alias_delete` / `mail_alias_get` — mail aliases
|
|
193
|
+
- `mail_forward_add` / `mail_forward_delete` / `mail_forward_get` — mail forwards
|
|
194
|
+
- `mail_domain_delete` — remove a mail domain
|
|
195
|
+
- `mail_domain_update` — update mail domain settings
|
|
196
|
+
|
|
197
|
+
### DNS
|
|
198
|
+
- `dns_zone_delete` — remove a DNS zone
|
|
199
|
+
- `dns_zone_update` — update zone settings (TTL, SOA, etc.)
|
|
200
|
+
- `dns_a_update` / `dns_aaaa_update` / `dns_cname_update` / `dns_mx_update` / `dns_txt_update` — update individual DNS records (currently only add/delete is supported)
|
|
201
|
+
|
|
202
|
+
### Databases
|
|
203
|
+
- `sites_database_delete` — remove a database
|
|
204
|
+
- `sites_database_user_delete` — remove a database user
|
|
205
|
+
|
|
206
|
+
### FTP / Shell
|
|
207
|
+
- `sites_ftp_user_delete` — remove an FTP user
|
|
208
|
+
- `sites_shell_user_delete` — remove a shell user
|
|
209
|
+
|
|
210
|
+
### Cron
|
|
211
|
+
- `sites_cron_delete` — remove a cron job
|
|
212
|
+
- `sites_cron_update` — update an existing cron job
|
|
213
|
+
|
|
123
214
|
## Development
|
|
124
215
|
|
|
125
216
|
```bash
|
|
@@ -133,6 +224,27 @@ For live tests, provide environment variables:
|
|
|
133
224
|
- `ISPCONFIG_USER`
|
|
134
225
|
- `ISPCONFIG_PASS`
|
|
135
226
|
|
|
227
|
+
## Shared Template
|
|
228
|
+
|
|
229
|
+
For automation that creates GitHub issues, use `src/templates/github-issue-helper.ts`.
|
|
230
|
+
It provides `isValidIssueRepoSlug()`, `resolveIssueRepo()`, and `buildGhIssueCreateCommand()`.
|
|
231
|
+
|
|
232
|
+
## Changelog
|
|
233
|
+
|
|
234
|
+
### 0.2.1 (2026-03-15)
|
|
235
|
+
|
|
236
|
+
**Bug fix:** Resolve `"Cannot read properties of undefined (reading 'properties')"` crash in OpenClaw UI.
|
|
237
|
+
|
|
238
|
+
- **Added JSON Schema `parameters` to all 31 tool definitions** — previously tools only had `name`, `description`, and `run`, causing the UI to crash when accessing `tool.parameters.properties`
|
|
239
|
+
- **Fixed `registerViaApi()` to pass `parameters` through** to `api.registerTool()` — schemas were defined but never forwarded to OpenClaw
|
|
240
|
+
- **Changed tool registration from `run` to `execute`** — OpenClaw's plugin API expects `execute(params)`, not `run(params)`
|
|
241
|
+
- **Updated `BoundTool` interface** to include optional `parameters` field
|
|
242
|
+
- **Updated `ToolDefinition` interface** to include optional `parameters` field
|
|
243
|
+
|
|
244
|
+
### 0.2.0 (2026-03-07)
|
|
245
|
+
|
|
246
|
+
- Initial release with 31 tools, `/ispconfig` command, safety guards
|
|
247
|
+
|
|
136
248
|
## License
|
|
137
249
|
|
|
138
250
|
MIT
|
package/dist/index.d.ts
CHANGED
|
@@ -3,69 +3,80 @@ import { ISPConfigPluginConfig, JsonMap } from "./types";
|
|
|
3
3
|
export interface OpenClawRuntimeLike {
|
|
4
4
|
registerTool: (name: string, definition: {
|
|
5
5
|
description: string;
|
|
6
|
+
parameters?: Record<string, unknown>;
|
|
6
7
|
run: (params: JsonMap) => Promise<unknown>;
|
|
7
8
|
}) => void;
|
|
8
9
|
}
|
|
9
10
|
export interface BoundTool {
|
|
10
11
|
name: string;
|
|
11
12
|
description: string;
|
|
13
|
+
parameters?: {
|
|
14
|
+
type: "object";
|
|
15
|
+
properties: Record<string, unknown>;
|
|
16
|
+
required?: string[];
|
|
17
|
+
};
|
|
12
18
|
run: (params: JsonMap) => Promise<unknown>;
|
|
13
19
|
}
|
|
14
20
|
export declare function buildToolset(config: Partial<ISPConfigPluginConfig>): BoundTool[];
|
|
15
21
|
export declare function registerAllTools(runtime: OpenClawRuntimeLike, config: Partial<ISPConfigPluginConfig>): void;
|
|
22
|
+
declare function registerViaApi(api: any): void;
|
|
16
23
|
declare const plugin: {
|
|
17
24
|
manifest: {
|
|
18
25
|
name: string;
|
|
26
|
+
id: string;
|
|
19
27
|
version: string;
|
|
20
28
|
description: string;
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
description: string;
|
|
30
|
-
required: boolean;
|
|
31
|
-
};
|
|
32
|
-
password: {
|
|
33
|
-
type: string;
|
|
34
|
-
description: string;
|
|
35
|
-
required: boolean;
|
|
36
|
-
secret: boolean;
|
|
37
|
-
};
|
|
38
|
-
serverId: {
|
|
39
|
-
type: string;
|
|
40
|
-
description: string;
|
|
41
|
-
default: number;
|
|
42
|
-
};
|
|
43
|
-
defaultServerIp: {
|
|
44
|
-
type: string;
|
|
45
|
-
description: string;
|
|
46
|
-
};
|
|
47
|
-
readOnly: {
|
|
48
|
-
type: string;
|
|
49
|
-
description: string;
|
|
50
|
-
default: boolean;
|
|
51
|
-
};
|
|
52
|
-
allowedOperations: {
|
|
53
|
-
type: string;
|
|
54
|
-
description: string;
|
|
55
|
-
items: {
|
|
29
|
+
tools: string[];
|
|
30
|
+
configSchema: {
|
|
31
|
+
$schema: string;
|
|
32
|
+
type: string;
|
|
33
|
+
additionalProperties: boolean;
|
|
34
|
+
required: string[];
|
|
35
|
+
properties: {
|
|
36
|
+
apiUrl: {
|
|
56
37
|
type: string;
|
|
38
|
+
description: string;
|
|
39
|
+
};
|
|
40
|
+
username: {
|
|
41
|
+
type: string;
|
|
42
|
+
description: string;
|
|
43
|
+
};
|
|
44
|
+
password: {
|
|
45
|
+
type: string;
|
|
46
|
+
description: string;
|
|
47
|
+
secret: boolean;
|
|
48
|
+
};
|
|
49
|
+
serverId: {
|
|
50
|
+
type: string;
|
|
51
|
+
description: string;
|
|
52
|
+
default: number;
|
|
53
|
+
};
|
|
54
|
+
defaultServerIp: {
|
|
55
|
+
type: string;
|
|
56
|
+
description: string;
|
|
57
|
+
};
|
|
58
|
+
readOnly: {
|
|
59
|
+
type: string;
|
|
60
|
+
description: string;
|
|
61
|
+
default: boolean;
|
|
62
|
+
};
|
|
63
|
+
allowedOperations: {
|
|
64
|
+
type: string;
|
|
65
|
+
description: string;
|
|
66
|
+
default: never[];
|
|
67
|
+
items: {
|
|
68
|
+
type: string;
|
|
69
|
+
};
|
|
70
|
+
};
|
|
71
|
+
verifySsl: {
|
|
72
|
+
type: string;
|
|
73
|
+
description: string;
|
|
74
|
+
default: boolean;
|
|
57
75
|
};
|
|
58
|
-
default: never[];
|
|
59
|
-
};
|
|
60
|
-
verifySsl: {
|
|
61
|
-
type: string;
|
|
62
|
-
description: string;
|
|
63
|
-
default: boolean;
|
|
64
76
|
};
|
|
65
77
|
};
|
|
66
|
-
tools: string[];
|
|
67
78
|
};
|
|
68
|
-
register: typeof
|
|
79
|
+
register: typeof registerViaApi;
|
|
69
80
|
};
|
|
70
81
|
export default plugin;
|
|
71
82
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAE9E,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAA;KAAE,KAAK,IAAI,CAAC;CAC7J;AAoBD,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE;QACX,IAAI,EAAE,QAAQ,CAAC;QACf,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;KACrB,CAAC;IACF,GAAG,EAAE,CAAC,MAAM,EAAE,OAAO,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5C;AAED,wBAAgB,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,SAAS,EAAE,CAShF;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,mBAAmB,EAAE,MAAM,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAS3G;AAGD,iBAAS,cAAc,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CA0EtC;AAED,QAAA,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAGX,CAAC;AAEF,eAAe,MAAM,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -33,6 +33,7 @@ function buildToolset(config) {
|
|
|
33
33
|
return (0, tools_1.createTools)().map((tool) => ({
|
|
34
34
|
name: tool.name,
|
|
35
35
|
description: tool.description,
|
|
36
|
+
parameters: tool.parameters ?? { type: "object", properties: {} },
|
|
36
37
|
run: (params) => tool.run(params, context),
|
|
37
38
|
}));
|
|
38
39
|
}
|
|
@@ -41,13 +42,87 @@ function registerAllTools(runtime, config) {
|
|
|
41
42
|
for (const tool of tools) {
|
|
42
43
|
runtime.registerTool(tool.name, {
|
|
43
44
|
description: tool.description,
|
|
45
|
+
parameters: tool.parameters,
|
|
44
46
|
run: (params) => tool.run(params),
|
|
45
47
|
});
|
|
46
48
|
}
|
|
47
49
|
}
|
|
50
|
+
// OpenClaw PluginApi adapter
|
|
51
|
+
function registerViaApi(api) {
|
|
52
|
+
const config = (api.pluginConfig ?? {});
|
|
53
|
+
const tools = buildToolset(config);
|
|
54
|
+
for (const tool of tools) {
|
|
55
|
+
api.registerTool({
|
|
56
|
+
name: tool.name,
|
|
57
|
+
description: tool.description,
|
|
58
|
+
parameters: tool.parameters,
|
|
59
|
+
execute: (params) => tool.run(params),
|
|
60
|
+
});
|
|
61
|
+
}
|
|
62
|
+
// Command: /ispconfig — show plugin help
|
|
63
|
+
api.registerCommand({
|
|
64
|
+
name: "ispconfig",
|
|
65
|
+
description: "Show ISPConfig plugin help and list of available tools.",
|
|
66
|
+
usage: "/ispconfig",
|
|
67
|
+
requireAuth: false,
|
|
68
|
+
acceptsArgs: false,
|
|
69
|
+
handler: async () => {
|
|
70
|
+
const rawUrl = (config.apiUrl ?? "").trim();
|
|
71
|
+
// Extract hostname only — never expose credentials
|
|
72
|
+
let displayHost = "(not configured)";
|
|
73
|
+
try {
|
|
74
|
+
if (rawUrl) {
|
|
75
|
+
displayHost = new URL(rawUrl).hostname;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
displayHost = rawUrl.replace(/^https?:\/\//, "").split("/")[0] ?? rawUrl;
|
|
80
|
+
}
|
|
81
|
+
const version = openclaw_plugin_json_1.default.version ?? "0.2.0";
|
|
82
|
+
const text = [
|
|
83
|
+
`🖥️ *ISPConfig Plugin*`,
|
|
84
|
+
`Version ${version} | Connected to ${displayHost}`,
|
|
85
|
+
``,
|
|
86
|
+
`📋 *Read Commands*`,
|
|
87
|
+
`• isp_system_info — Server-Info`,
|
|
88
|
+
`• isp_client_list — Alle Clients`,
|
|
89
|
+
`• isp_client_get — Client Details (client_id)`,
|
|
90
|
+
`• isp_sites_list — Alle Websites`,
|
|
91
|
+
`• isp_site_get — Site Details (site_id)`,
|
|
92
|
+
`• isp_domains_list — Alle Domains`,
|
|
93
|
+
`• isp_dns_zone_list — DNS Zonen`,
|
|
94
|
+
`• isp_dns_record_list — DNS Records (zone_id)`,
|
|
95
|
+
`• isp_mail_domain_list — Mail-Domains`,
|
|
96
|
+
`• isp_mail_user_list — Mail-User`,
|
|
97
|
+
`• isp_db_list — Datenbanken`,
|
|
98
|
+
`• isp_cron_list — Cron Jobs`,
|
|
99
|
+
`• isp_ssl_status — SSL/LE Status`,
|
|
100
|
+
`• isp_quota_check — Quota (client_id)`,
|
|
101
|
+
`• isp_methods_list — Verfügbare API-Methoden`,
|
|
102
|
+
``,
|
|
103
|
+
`✏️ *Write Commands*`,
|
|
104
|
+
`• isp_client_add — Client anlegen`,
|
|
105
|
+
`• isp_site_add — Website anlegen`,
|
|
106
|
+
`• isp_dns_zone_add — DNS Zone`,
|
|
107
|
+
`• isp_dns_record_add — DNS Record (type: A/AAAA/MX/TXT/CNAME)`,
|
|
108
|
+
`• isp_dns_record_delete — DNS Record löschen`,
|
|
109
|
+
`• isp_mail_domain_add — Mail-Domain`,
|
|
110
|
+
`• isp_mail_user_add / _delete — Mail-User`,
|
|
111
|
+
`• isp_db_add / isp_db_user_add — Datenbank`,
|
|
112
|
+
`• isp_ftp_user_add — FTP User`,
|
|
113
|
+
`• isp_shell_user_add — Shell User`,
|
|
114
|
+
`• isp_cron_add — Cron Job`,
|
|
115
|
+
``,
|
|
116
|
+
`🚀 *Provisioning*`,
|
|
117
|
+
`• isp_provision_site — Alles auf einmal (domain, clientName, clientEmail)`,
|
|
118
|
+
].join("\n");
|
|
119
|
+
return { text };
|
|
120
|
+
},
|
|
121
|
+
});
|
|
122
|
+
}
|
|
48
123
|
const plugin = {
|
|
49
124
|
manifest: openclaw_plugin_json_1.default,
|
|
50
|
-
register:
|
|
125
|
+
register: registerViaApi,
|
|
51
126
|
};
|
|
52
127
|
exports.default = plugin;
|
|
53
128
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function shellQuote(value: string): string;
|
|
2
|
+
export declare function isValidIssueRepoSlug(value: string): boolean;
|
|
3
|
+
export declare function resolveIssueRepo(configValue: unknown, envValue: unknown, defaultRepo: string): string;
|
|
4
|
+
export declare function buildGhIssueCreateCommand(args: {
|
|
5
|
+
repo: string;
|
|
6
|
+
title: string;
|
|
7
|
+
body: string;
|
|
8
|
+
labels?: string[];
|
|
9
|
+
}): string;
|
|
10
|
+
//# sourceMappingURL=github-issue-helper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-issue-helper.d.ts","sourceRoot":"","sources":["../../src/templates/github-issue-helper.ts"],"names":[],"mappings":"AAEA,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAEhD;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAE3D;AAED,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAUrG;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;CACnB,GAAG,MAAM,CAmBT"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.shellQuote = shellQuote;
|
|
4
|
+
exports.isValidIssueRepoSlug = isValidIssueRepoSlug;
|
|
5
|
+
exports.resolveIssueRepo = resolveIssueRepo;
|
|
6
|
+
exports.buildGhIssueCreateCommand = buildGhIssueCreateCommand;
|
|
7
|
+
const ISSUE_REPO_SLUG_RE = /^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/;
|
|
8
|
+
function shellQuote(value) {
|
|
9
|
+
return `'${String(value).replace(/'/g, `"'"'`)}'`;
|
|
10
|
+
}
|
|
11
|
+
function isValidIssueRepoSlug(value) {
|
|
12
|
+
return ISSUE_REPO_SLUG_RE.test(value.trim());
|
|
13
|
+
}
|
|
14
|
+
function resolveIssueRepo(configValue, envValue, defaultRepo) {
|
|
15
|
+
const candidates = [configValue, envValue, defaultRepo];
|
|
16
|
+
for (const candidate of candidates) {
|
|
17
|
+
if (typeof candidate !== "string")
|
|
18
|
+
continue;
|
|
19
|
+
const trimmed = candidate.trim();
|
|
20
|
+
if (trimmed && isValidIssueRepoSlug(trimmed)) {
|
|
21
|
+
return trimmed;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
return defaultRepo;
|
|
25
|
+
}
|
|
26
|
+
function buildGhIssueCreateCommand(args) {
|
|
27
|
+
const repo = args.repo.trim();
|
|
28
|
+
if (!isValidIssueRepoSlug(repo)) {
|
|
29
|
+
throw new Error(`Invalid issue repository slug: ${args.repo}`);
|
|
30
|
+
}
|
|
31
|
+
const labels = (args.labels ?? []).map((label) => label.trim()).filter(Boolean);
|
|
32
|
+
const parts = [
|
|
33
|
+
"gh issue create",
|
|
34
|
+
`-R ${shellQuote(repo)}`,
|
|
35
|
+
`--title ${shellQuote(args.title)}`,
|
|
36
|
+
`--body ${shellQuote(args.body)}`,
|
|
37
|
+
];
|
|
38
|
+
if (labels.length > 0) {
|
|
39
|
+
parts.push(`--label ${shellQuote(labels.join(","))}`);
|
|
40
|
+
}
|
|
41
|
+
return parts.join(" ");
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=github-issue-helper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-issue-helper.js","sourceRoot":"","sources":["../../src/templates/github-issue-helper.ts"],"names":[],"mappings":";;AAEA,gCAEC;AAED,oDAEC;AAED,4CAUC;AAED,8DAwBC;AA9CD,MAAM,kBAAkB,GAAG,oCAAoC,CAAC;AAEhE,SAAgB,UAAU,CAAC,KAAa;IACtC,OAAO,IAAI,MAAM,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,CAAC;AACpD,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAa;IAChD,OAAO,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,SAAgB,gBAAgB,CAAC,WAAoB,EAAE,QAAiB,EAAE,WAAmB;IAC3F,MAAM,UAAU,GAAG,CAAC,WAAW,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACxD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,OAAO,SAAS,KAAK,QAAQ;YAAE,SAAS;QAC5C,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,OAAO,IAAI,oBAAoB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC7C,OAAO,OAAO,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAgB,yBAAyB,CAAC,IAKzC;IACC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;IAC9B,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,EAAE,CAAC;QAChC,MAAM,IAAI,KAAK,CAAC,kCAAkC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAChF,MAAM,KAAK,GAAG;QACZ,iBAAiB;QACjB,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE;QACxB,WAAW,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;QACnC,UAAU,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;KAClC,CAAC;IAEF,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,WAAW,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC"}
|
package/dist/tools.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,cAAc,EAAE,MAAM,SAAS,CAAC;AAkE/D,wBAAgB,WAAW,IAAI,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAAwB,cAAc,EAAE,MAAM,SAAS,CAAC;AAkE/D,wBAAgB,WAAW,IAAI,cAAc,EAAE,CAsgB9C"}
|
package/dist/tools.js
CHANGED
|
@@ -69,6 +69,7 @@ function createTools() {
|
|
|
69
69
|
{
|
|
70
70
|
name: "isp_methods_list",
|
|
71
71
|
description: "Discover available ISPConfig API methods (dynamic via get_function_list, falls back to probing known methods)",
|
|
72
|
+
parameters: { type: "object", properties: {} },
|
|
72
73
|
run: async (_params, context) => withClient(context, "isp_methods_list", async (client) => {
|
|
73
74
|
// Try dynamic discovery first (ISPConfig 3.2+)
|
|
74
75
|
try {
|
|
@@ -115,6 +116,7 @@ function createTools() {
|
|
|
115
116
|
{
|
|
116
117
|
name: "isp_system_info",
|
|
117
118
|
description: "Get ISPConfig server list and server details",
|
|
119
|
+
parameters: { type: "object", properties: {} },
|
|
118
120
|
run: async (_params, context) => withClient(context, "isp_system_info", async (client) => {
|
|
119
121
|
const servers = await client.call("server_get_all", {});
|
|
120
122
|
const details = [];
|
|
@@ -130,6 +132,19 @@ function createTools() {
|
|
|
130
132
|
{
|
|
131
133
|
name: "isp_provision_site",
|
|
132
134
|
description: "Provision client, site, DNS, mail and database in one workflow",
|
|
135
|
+
parameters: {
|
|
136
|
+
type: "object",
|
|
137
|
+
properties: {
|
|
138
|
+
domain: { type: "string", description: "Domain name to provision" },
|
|
139
|
+
clientName: { type: "string", description: "Client company/contact name" },
|
|
140
|
+
clientEmail: { type: "string", description: "Client email address" },
|
|
141
|
+
serverIp: { type: "string", description: "Server IP address for DNS A record" },
|
|
142
|
+
createMail: { type: "boolean", description: "Whether to create mail domain and users (default: true)" },
|
|
143
|
+
createDb: { type: "boolean", description: "Whether to create a database and user (default: true)" },
|
|
144
|
+
serverId: { type: "number", description: "ISPConfig server ID (default: 1)" },
|
|
145
|
+
},
|
|
146
|
+
required: ["domain", "clientName", "clientEmail"],
|
|
147
|
+
},
|
|
133
148
|
run: async (params, context) => withClient(context, "isp_provision_site", async (client) => {
|
|
134
149
|
const domain = String(params.domain ?? "").trim();
|
|
135
150
|
const clientName = String(params.clientName ?? "").trim();
|
|
@@ -212,6 +227,7 @@ function createTools() {
|
|
|
212
227
|
{
|
|
213
228
|
name: "isp_client_list",
|
|
214
229
|
description: "List clients with details",
|
|
230
|
+
parameters: { type: "object", properties: {} },
|
|
215
231
|
run: async (_params, context) => withClient(context, "isp_client_list", async (client) => {
|
|
216
232
|
const clients = await client.call("client_get_all", {});
|
|
217
233
|
const details = [];
|
|
@@ -226,16 +242,32 @@ function createTools() {
|
|
|
226
242
|
{
|
|
227
243
|
name: "isp_client_add",
|
|
228
244
|
description: "Create a new ISPConfig client",
|
|
245
|
+
parameters: {
|
|
246
|
+
type: "object",
|
|
247
|
+
properties: {
|
|
248
|
+
company_name: { type: "string", description: "Client company name" },
|
|
249
|
+
contact_name: { type: "string", description: "Contact person name" },
|
|
250
|
+
email: { type: "string", description: "Client email address" },
|
|
251
|
+
},
|
|
252
|
+
},
|
|
229
253
|
run: async (params, context) => withClient(context, "isp_client_add", (client) => client.call("client_add", { reseller_id: 0, params })),
|
|
230
254
|
},
|
|
231
255
|
{
|
|
232
256
|
name: "isp_client_get",
|
|
233
257
|
description: "Get client details by client_id",
|
|
258
|
+
parameters: {
|
|
259
|
+
type: "object",
|
|
260
|
+
properties: {
|
|
261
|
+
client_id: { type: "number", description: "Client ID" },
|
|
262
|
+
},
|
|
263
|
+
required: ["client_id"],
|
|
264
|
+
},
|
|
234
265
|
run: async (params, context) => withClient(context, "isp_client_get", (client) => client.call("client_get", { client_id: toNumber(params.client_id ?? params.clientId) })),
|
|
235
266
|
},
|
|
236
267
|
{
|
|
237
268
|
name: "isp_sites_list",
|
|
238
269
|
description: "List web sites with optional filters",
|
|
270
|
+
parameters: { type: "object", properties: {} },
|
|
239
271
|
run: async (params, context) => withClient(context, "isp_sites_list", async (client) => {
|
|
240
272
|
if (Object.keys(params).length > 0) {
|
|
241
273
|
return client.call("sites_web_domain_get", params);
|
|
@@ -246,16 +278,33 @@ function createTools() {
|
|
|
246
278
|
{
|
|
247
279
|
name: "isp_site_get",
|
|
248
280
|
description: "Get one site by primary_id",
|
|
281
|
+
parameters: {
|
|
282
|
+
type: "object",
|
|
283
|
+
properties: {
|
|
284
|
+
primary_id: { type: "number", description: "Site ID" },
|
|
285
|
+
domain_id: { type: "number", description: "Alias for primary_id" },
|
|
286
|
+
site_id: { type: "number", description: "Alias for primary_id" },
|
|
287
|
+
},
|
|
288
|
+
},
|
|
249
289
|
run: async (params, context) => withClient(context, "isp_site_get", (client) => client.call("sites_web_domain_get", { primary_id: toNumber(params.primary_id ?? params.domain_id ?? params.site_id) })),
|
|
250
290
|
},
|
|
251
291
|
{
|
|
252
292
|
name: "isp_site_add",
|
|
253
293
|
description: "Create web site",
|
|
294
|
+
parameters: {
|
|
295
|
+
type: "object",
|
|
296
|
+
properties: {
|
|
297
|
+
client_id: { type: "number", description: "Client ID" },
|
|
298
|
+
params: { type: "object", description: "Site parameters" },
|
|
299
|
+
},
|
|
300
|
+
required: ["client_id", "params"],
|
|
301
|
+
},
|
|
254
302
|
run: async (params, context) => withClient(context, "isp_site_add", (client) => client.call("sites_web_domain_add", params)),
|
|
255
303
|
},
|
|
256
304
|
{
|
|
257
305
|
name: "isp_domains_list",
|
|
258
306
|
description: "List all web domains",
|
|
307
|
+
parameters: { type: "object", properties: {} },
|
|
259
308
|
run: async (_params, context) => withClient(context, "isp_domains_list", async (client) => {
|
|
260
309
|
const sites = await fetchSites(client);
|
|
261
310
|
return sites.map((s) => ({ domain_id: s.domain_id, domain: s.domain, active: s.active }));
|
|
@@ -264,26 +313,59 @@ function createTools() {
|
|
|
264
313
|
{
|
|
265
314
|
name: "isp_domain_add",
|
|
266
315
|
description: "Alias for isp_site_add",
|
|
316
|
+
parameters: {
|
|
317
|
+
type: "object",
|
|
318
|
+
properties: {
|
|
319
|
+
client_id: { type: "number", description: "Client ID" },
|
|
320
|
+
params: { type: "object", description: "Domain/site parameters" },
|
|
321
|
+
},
|
|
322
|
+
required: ["client_id", "params"],
|
|
323
|
+
},
|
|
267
324
|
run: async (params, context) => withClient(context, "isp_domain_add", (client) => client.call("sites_web_domain_add", params)),
|
|
268
325
|
},
|
|
269
326
|
{
|
|
270
327
|
name: "isp_dns_zone_list",
|
|
271
328
|
description: "List DNS zones by user",
|
|
329
|
+
parameters: { type: "object", properties: {} },
|
|
272
330
|
run: async (params, context) => withClient(context, "isp_dns_zone_list", (client) => client.call("dns_zone_get_by_user", params)),
|
|
273
331
|
},
|
|
274
332
|
{
|
|
275
333
|
name: "isp_dns_zone_add",
|
|
276
334
|
description: "Create DNS zone",
|
|
335
|
+
parameters: {
|
|
336
|
+
type: "object",
|
|
337
|
+
properties: {
|
|
338
|
+
client_id: { type: "number", description: "Client ID" },
|
|
339
|
+
params: { type: "object", description: "DNS zone parameters" },
|
|
340
|
+
},
|
|
341
|
+
required: ["client_id", "params"],
|
|
342
|
+
},
|
|
277
343
|
run: async (params, context) => withClient(context, "isp_dns_zone_add", (client) => client.call("dns_zone_add", params)),
|
|
278
344
|
},
|
|
279
345
|
{
|
|
280
346
|
name: "isp_dns_record_list",
|
|
281
347
|
description: "List DNS records by zone_id",
|
|
348
|
+
parameters: {
|
|
349
|
+
type: "object",
|
|
350
|
+
properties: {
|
|
351
|
+
zone_id: { type: "number", description: "DNS zone ID" },
|
|
352
|
+
},
|
|
353
|
+
required: ["zone_id"],
|
|
354
|
+
},
|
|
282
355
|
run: async (params, context) => withClient(context, "isp_dns_record_list", (client) => client.call("dns_rr_get_all_by_zone", { zone_id: toNumber(params.zone_id ?? params.zoneId) })),
|
|
283
356
|
},
|
|
284
357
|
{
|
|
285
358
|
name: "isp_dns_record_add",
|
|
286
359
|
description: "Add DNS record using type-specific method",
|
|
360
|
+
parameters: {
|
|
361
|
+
type: "object",
|
|
362
|
+
properties: {
|
|
363
|
+
type: { type: "string", enum: ["A", "AAAA", "MX", "TXT", "CNAME"], description: "DNS record type" },
|
|
364
|
+
client_id: { type: "number", description: "Client ID" },
|
|
365
|
+
params: { type: "object", description: "DNS record parameters" },
|
|
366
|
+
},
|
|
367
|
+
required: ["type"],
|
|
368
|
+
},
|
|
287
369
|
run: async (params, context) => withClient(context, "isp_dns_record_add", (client) => {
|
|
288
370
|
const method = dnsMethodForType(String(params.type ?? ""), "add");
|
|
289
371
|
return client.call(method, params);
|
|
@@ -292,6 +374,15 @@ function createTools() {
|
|
|
292
374
|
{
|
|
293
375
|
name: "isp_dns_record_delete",
|
|
294
376
|
description: "Delete DNS record using type-specific method",
|
|
377
|
+
parameters: {
|
|
378
|
+
type: "object",
|
|
379
|
+
properties: {
|
|
380
|
+
type: { type: "string", enum: ["A", "AAAA", "MX", "TXT", "CNAME"], description: "DNS record type" },
|
|
381
|
+
primary_id: { type: "number", description: "DNS record primary ID to delete" },
|
|
382
|
+
client_id: { type: "number", description: "Client ID" },
|
|
383
|
+
},
|
|
384
|
+
required: ["type"],
|
|
385
|
+
},
|
|
295
386
|
run: async (params, context) => withClient(context, "isp_dns_record_delete", (client) => {
|
|
296
387
|
const method = dnsMethodForType(String(params.type ?? ""), "delete");
|
|
297
388
|
return client.call(method, params);
|
|
@@ -300,46 +391,89 @@ function createTools() {
|
|
|
300
391
|
{
|
|
301
392
|
name: "isp_mail_domain_list",
|
|
302
393
|
description: "List mail domains",
|
|
394
|
+
parameters: { type: "object", properties: {} },
|
|
303
395
|
run: async (params, context) => withClient(context, "isp_mail_domain_list", (client) => client.call("mail_domain_get", params)),
|
|
304
396
|
},
|
|
305
397
|
{
|
|
306
398
|
name: "isp_mail_domain_add",
|
|
307
399
|
description: "Create mail domain",
|
|
400
|
+
parameters: {
|
|
401
|
+
type: "object",
|
|
402
|
+
properties: {
|
|
403
|
+
client_id: { type: "number", description: "Client ID" },
|
|
404
|
+
params: { type: "object", description: "Mail domain parameters" },
|
|
405
|
+
},
|
|
406
|
+
required: ["client_id", "params"],
|
|
407
|
+
},
|
|
308
408
|
run: async (params, context) => withClient(context, "isp_mail_domain_add", (client) => client.call("mail_domain_add", params)),
|
|
309
409
|
},
|
|
310
410
|
{
|
|
311
411
|
name: "isp_mail_user_list",
|
|
312
412
|
description: "List mail users",
|
|
413
|
+
parameters: { type: "object", properties: {} },
|
|
313
414
|
run: async (params, context) => withClient(context, "isp_mail_user_list", (client) => client.call("mail_user_get", params)),
|
|
314
415
|
},
|
|
315
416
|
{
|
|
316
417
|
name: "isp_mail_user_add",
|
|
317
418
|
description: "Create mail user",
|
|
419
|
+
parameters: {
|
|
420
|
+
type: "object",
|
|
421
|
+
properties: {
|
|
422
|
+
client_id: { type: "number", description: "Client ID" },
|
|
423
|
+
params: { type: "object", description: "Mail user parameters" },
|
|
424
|
+
},
|
|
425
|
+
required: ["client_id", "params"],
|
|
426
|
+
},
|
|
318
427
|
run: async (params, context) => withClient(context, "isp_mail_user_add", (client) => client.call("mail_user_add", params)),
|
|
319
428
|
},
|
|
320
429
|
{
|
|
321
430
|
name: "isp_mail_user_delete",
|
|
322
431
|
description: "Delete mail user",
|
|
432
|
+
parameters: {
|
|
433
|
+
type: "object",
|
|
434
|
+
properties: {
|
|
435
|
+
primary_id: { type: "number", description: "Mail user ID to delete" },
|
|
436
|
+
},
|
|
437
|
+
required: ["primary_id"],
|
|
438
|
+
},
|
|
323
439
|
run: async (params, context) => withClient(context, "isp_mail_user_delete", (client) => client.call("mail_user_delete", params)),
|
|
324
440
|
},
|
|
325
441
|
{
|
|
326
442
|
name: "isp_db_list",
|
|
327
443
|
description: "List databases by user",
|
|
444
|
+
parameters: { type: "object", properties: {} },
|
|
328
445
|
run: async (params, context) => withClient(context, "isp_db_list", (client) => client.call("sites_database_get_all_by_user", params)),
|
|
329
446
|
},
|
|
330
447
|
{
|
|
331
448
|
name: "isp_db_add",
|
|
332
449
|
description: "Create database",
|
|
450
|
+
parameters: {
|
|
451
|
+
type: "object",
|
|
452
|
+
properties: {
|
|
453
|
+
client_id: { type: "number", description: "Client ID" },
|
|
454
|
+
params: { type: "object", description: "Database parameters" },
|
|
455
|
+
},
|
|
456
|
+
required: ["client_id", "params"],
|
|
457
|
+
},
|
|
333
458
|
run: async (params, context) => withClient(context, "isp_db_add", (client) => client.call("sites_database_add", params)),
|
|
334
459
|
},
|
|
335
460
|
{
|
|
336
461
|
name: "isp_db_user_add",
|
|
337
462
|
description: "Create database user",
|
|
463
|
+
parameters: {
|
|
464
|
+
type: "object",
|
|
465
|
+
properties: {
|
|
466
|
+
client_id: { type: "number", description: "Client ID" },
|
|
467
|
+
params: { type: "object", description: "Database user parameters" },
|
|
468
|
+
},
|
|
469
|
+
required: ["client_id", "params"],
|
|
470
|
+
},
|
|
338
471
|
run: async (params, context) => withClient(context, "isp_db_user_add", (client) => client.call("sites_database_user_add", params)),
|
|
339
472
|
},
|
|
340
473
|
{
|
|
341
474
|
name: "isp_ssl_status",
|
|
342
475
|
description: "Check SSL and Let's Encrypt status for sites",
|
|
476
|
+
parameters: { type: "object", properties: {} },
|
|
343
477
|
run: async (_params, context) => withClient(context, "isp_ssl_status", async (client) => {
|
|
344
478
|
const sites = await fetchSites(client);
|
|
345
479
|
const status = (sites ?? []).map((site) => ({
|
|
@@ -354,6 +488,13 @@ function createTools() {
|
|
|
354
488
|
{
|
|
355
489
|
name: "isp_quota_check",
|
|
356
490
|
description: "Check quota values for a client",
|
|
491
|
+
parameters: {
|
|
492
|
+
type: "object",
|
|
493
|
+
properties: {
|
|
494
|
+
client_id: { type: "number", description: "Client ID" },
|
|
495
|
+
},
|
|
496
|
+
required: ["client_id"],
|
|
497
|
+
},
|
|
357
498
|
run: async (params, context) => withClient(context, "isp_quota_check", async (client) => {
|
|
358
499
|
const details = await client.call("client_get", { client_id: toNumber(params.client_id ?? params.clientId) });
|
|
359
500
|
return {
|
|
@@ -367,6 +508,7 @@ function createTools() {
|
|
|
367
508
|
{
|
|
368
509
|
name: "isp_backup_list",
|
|
369
510
|
description: "Backup list if API supports backup methods",
|
|
511
|
+
parameters: { type: "object", properties: {} },
|
|
370
512
|
run: async (_params, context) => withClient(context, "isp_backup_list", async () => ({
|
|
371
513
|
skipped: true,
|
|
372
514
|
reason: "No backup list method discovered in ISPConfig API",
|
|
@@ -375,21 +517,46 @@ function createTools() {
|
|
|
375
517
|
{
|
|
376
518
|
name: "isp_shell_user_add",
|
|
377
519
|
description: "Create shell user",
|
|
520
|
+
parameters: {
|
|
521
|
+
type: "object",
|
|
522
|
+
properties: {
|
|
523
|
+
client_id: { type: "number", description: "Client ID" },
|
|
524
|
+
params: { type: "object", description: "Shell user parameters" },
|
|
525
|
+
},
|
|
526
|
+
required: ["client_id", "params"],
|
|
527
|
+
},
|
|
378
528
|
run: async (params, context) => withClient(context, "isp_shell_user_add", (client) => client.call("sites_shell_user_add", params)),
|
|
379
529
|
},
|
|
380
530
|
{
|
|
381
531
|
name: "isp_ftp_user_add",
|
|
382
532
|
description: "Create FTP user",
|
|
533
|
+
parameters: {
|
|
534
|
+
type: "object",
|
|
535
|
+
properties: {
|
|
536
|
+
client_id: { type: "number", description: "Client ID" },
|
|
537
|
+
params: { type: "object", description: "FTP user parameters" },
|
|
538
|
+
},
|
|
539
|
+
required: ["client_id", "params"],
|
|
540
|
+
},
|
|
383
541
|
run: async (params, context) => withClient(context, "isp_ftp_user_add", (client) => client.call("sites_ftp_user_add", params)),
|
|
384
542
|
},
|
|
385
543
|
{
|
|
386
544
|
name: "isp_cron_list",
|
|
387
545
|
description: "List cron jobs",
|
|
546
|
+
parameters: { type: "object", properties: {} },
|
|
388
547
|
run: async (params, context) => withClient(context, "isp_cron_list", (client) => client.call("sites_cron_get", params)),
|
|
389
548
|
},
|
|
390
549
|
{
|
|
391
550
|
name: "isp_cron_add",
|
|
392
551
|
description: "Create cron job",
|
|
552
|
+
parameters: {
|
|
553
|
+
type: "object",
|
|
554
|
+
properties: {
|
|
555
|
+
client_id: { type: "number", description: "Client ID" },
|
|
556
|
+
params: { type: "object", description: "Cron job parameters" },
|
|
557
|
+
},
|
|
558
|
+
required: ["client_id", "params"],
|
|
559
|
+
},
|
|
393
560
|
run: async (params, context) => withClient(context, "isp_cron_add", (client) => client.call("sites_cron_add", params)),
|
|
394
561
|
},
|
|
395
562
|
];
|
package/dist/tools.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../src/tools.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -125,6 +125,11 @@ export interface ToolContext {
|
|
|
125
125
|
export interface ToolDefinition {
|
|
126
126
|
name: string;
|
|
127
127
|
description: string;
|
|
128
|
+
parameters?: {
|
|
129
|
+
type: "object";
|
|
130
|
+
properties: Record<string, unknown>;
|
|
131
|
+
required?: string[];
|
|
132
|
+
};
|
|
128
133
|
run: (params: JsonMap, context: ToolContext) => Promise<unknown>;
|
|
129
134
|
}
|
|
130
135
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/openclaw.plugin.json
CHANGED
|
@@ -1,50 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ISPConfig",
|
|
3
|
-
"
|
|
3
|
+
"id": "openclaw-ispconfig",
|
|
4
|
+
"version": "0.2.1",
|
|
4
5
|
"description": "Manage ISPConfig servers: automated site provisioning, domains, mailboxes, DNS, databases, SSL, backups, and more.",
|
|
5
|
-
"config": {
|
|
6
|
-
"apiUrl": {
|
|
7
|
-
"type": "string",
|
|
8
|
-
"description": "ISPConfig Remote JSON API URL (e.g. https://server:8080/remote/json.php)",
|
|
9
|
-
"required": true
|
|
10
|
-
},
|
|
11
|
-
"username": {
|
|
12
|
-
"type": "string",
|
|
13
|
-
"description": "ISPConfig remote API username",
|
|
14
|
-
"required": true
|
|
15
|
-
},
|
|
16
|
-
"password": {
|
|
17
|
-
"type": "string",
|
|
18
|
-
"description": "ISPConfig remote API password",
|
|
19
|
-
"required": true,
|
|
20
|
-
"secret": true
|
|
21
|
-
},
|
|
22
|
-
"serverId": {
|
|
23
|
-
"type": "number",
|
|
24
|
-
"description": "Default ISPConfig server ID (usually 1 for single-server setups)",
|
|
25
|
-
"default": 1
|
|
26
|
-
},
|
|
27
|
-
"defaultServerIp": {
|
|
28
|
-
"type": "string",
|
|
29
|
-
"description": "Default server IP for DNS A records"
|
|
30
|
-
},
|
|
31
|
-
"readOnly": {
|
|
32
|
-
"type": "boolean",
|
|
33
|
-
"description": "If true, only read operations are allowed",
|
|
34
|
-
"default": false
|
|
35
|
-
},
|
|
36
|
-
"allowedOperations": {
|
|
37
|
-
"type": "array",
|
|
38
|
-
"description": "Whitelist of allowed tool names. Empty = all allowed.",
|
|
39
|
-
"items": { "type": "string" },
|
|
40
|
-
"default": []
|
|
41
|
-
},
|
|
42
|
-
"verifySsl": {
|
|
43
|
-
"type": "boolean",
|
|
44
|
-
"description": "Verify SSL certificate of ISPConfig server",
|
|
45
|
-
"default": true
|
|
46
|
-
}
|
|
47
|
-
},
|
|
48
6
|
"tools": [
|
|
49
7
|
"isp_methods_list",
|
|
50
8
|
"isp_system_info",
|
|
@@ -77,5 +35,57 @@
|
|
|
77
35
|
"isp_ftp_user_add",
|
|
78
36
|
"isp_cron_list",
|
|
79
37
|
"isp_cron_add"
|
|
80
|
-
]
|
|
38
|
+
],
|
|
39
|
+
"configSchema": {
|
|
40
|
+
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
41
|
+
"type": "object",
|
|
42
|
+
"additionalProperties": false,
|
|
43
|
+
"required": [
|
|
44
|
+
"apiUrl",
|
|
45
|
+
"username",
|
|
46
|
+
"password"
|
|
47
|
+
],
|
|
48
|
+
"properties": {
|
|
49
|
+
"apiUrl": {
|
|
50
|
+
"type": "string",
|
|
51
|
+
"description": "ISPConfig Remote JSON API URL (e.g. https://server:8080/remote/json.php)"
|
|
52
|
+
},
|
|
53
|
+
"username": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"description": "ISPConfig remote API username"
|
|
56
|
+
},
|
|
57
|
+
"password": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"description": "ISPConfig remote API password",
|
|
60
|
+
"secret": true
|
|
61
|
+
},
|
|
62
|
+
"serverId": {
|
|
63
|
+
"type": "number",
|
|
64
|
+
"description": "Default ISPConfig server ID (usually 1 for single-server setups)",
|
|
65
|
+
"default": 1
|
|
66
|
+
},
|
|
67
|
+
"defaultServerIp": {
|
|
68
|
+
"type": "string",
|
|
69
|
+
"description": "Default server IP for DNS A records"
|
|
70
|
+
},
|
|
71
|
+
"readOnly": {
|
|
72
|
+
"type": "boolean",
|
|
73
|
+
"description": "If true, only read operations are allowed",
|
|
74
|
+
"default": false
|
|
75
|
+
},
|
|
76
|
+
"allowedOperations": {
|
|
77
|
+
"type": "array",
|
|
78
|
+
"description": "Whitelist of allowed tool names. Empty = all allowed.",
|
|
79
|
+
"default": [],
|
|
80
|
+
"items": {
|
|
81
|
+
"type": "string"
|
|
82
|
+
}
|
|
83
|
+
},
|
|
84
|
+
"verifySsl": {
|
|
85
|
+
"type": "boolean",
|
|
86
|
+
"description": "Verify SSL certificate of ISPConfig server",
|
|
87
|
+
"default": true
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
}
|
|
81
91
|
}
|
package/package.json
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@elvatis_com/openclaw-ispconfig",
|
|
3
|
-
"version": "0.1
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "OpenClaw plugin for ISPConfig server management - domains, mailboxes, databases, DNS, websites",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
7
|
"scripts": {
|
|
8
8
|
"build": "tsc",
|
|
9
|
-
"test": "
|
|
10
|
-
"prepublishOnly": "npm run build"
|
|
9
|
+
"test": "vitest run",
|
|
10
|
+
"prepublishOnly": "npm run build",
|
|
11
|
+
"test:watch": "vitest"
|
|
11
12
|
},
|
|
12
13
|
"files": [
|
|
13
14
|
"dist",
|
|
@@ -28,17 +29,17 @@
|
|
|
28
29
|
"type": "git",
|
|
29
30
|
"url": "git+https://github.com/elvatis/openclaw-ispconfig.git"
|
|
30
31
|
},
|
|
31
|
-
"dependencies": {},
|
|
32
32
|
"devDependencies": {
|
|
33
|
-
"typescript": "^5.7.0",
|
|
34
33
|
"@types/node": "^22.0.0",
|
|
35
|
-
"
|
|
36
|
-
"
|
|
37
|
-
"@types/jest": "^29.5.0"
|
|
34
|
+
"typescript": "^5.7.0",
|
|
35
|
+
"vitest": "^3.0.0"
|
|
38
36
|
},
|
|
39
37
|
"openclaw": {
|
|
40
38
|
"extensions": [
|
|
41
39
|
"./src/index.ts"
|
|
42
40
|
]
|
|
41
|
+
},
|
|
42
|
+
"overrides": {
|
|
43
|
+
"test-exclude": "^7.0.1"
|
|
43
44
|
}
|
|
44
45
|
}
|