clawsql 0.1.8 → 0.2.0
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/.env.example +20 -0
- package/README.md +11 -23
- package/dist/app.js +2 -2
- package/dist/app.js.map +1 -1
- package/dist/bin/clawsql.js +0 -0
- package/dist/cli/agent/index.d.ts +1 -1
- package/dist/cli/agent/index.d.ts.map +1 -1
- package/dist/cli/agent/index.js +6 -1
- package/dist/cli/agent/index.js.map +1 -1
- package/dist/cli/agent/openclaw-integration.d.ts +33 -29
- package/dist/cli/agent/openclaw-integration.d.ts.map +1 -1
- package/dist/cli/agent/openclaw-integration.js +273 -202
- package/dist/cli/agent/openclaw-integration.js.map +1 -1
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +99 -0
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +86 -0
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/status.d.ts.map +1 -1
- package/dist/cli/commands/status.js +25 -0
- package/dist/cli/commands/status.js.map +1 -1
- package/dist/config/settings.d.ts +37 -37
- package/dist/config/settings.d.ts.map +1 -1
- package/dist/config/settings.js +3 -1
- package/dist/config/settings.js.map +1 -1
- package/docker/openclaw/openclaw.json +10 -0
- package/docker/orchestrator/orchestrator.conf.json +1 -1
- package/docker-compose.allinone.yml +37 -3
- package/docker-compose.yml +41 -1
- package/package.json +1 -1
package/.env.example
CHANGED
|
@@ -83,6 +83,26 @@ MYSQL_ADMIN_PASSWORD=clawsql_password
|
|
|
83
83
|
MYSQL_REPLICATION_USER=repl
|
|
84
84
|
MYSQL_REPLICATION_PASSWORD=repl_password
|
|
85
85
|
|
|
86
|
+
# =============================================================================
|
|
87
|
+
# OpenClaw AI Gateway Configuration
|
|
88
|
+
# =============================================================================
|
|
89
|
+
# OpenClaw provides AI-powered operations for intelligent cluster management
|
|
90
|
+
# The OpenClaw container starts automatically with the platform
|
|
91
|
+
# If a local OpenClaw gateway is already running, Docker OpenClaw is skipped
|
|
92
|
+
|
|
93
|
+
# Gateway WebSocket URL
|
|
94
|
+
# - Default: ws://localhost:18789 (from host)
|
|
95
|
+
# - Docker internal: ws://openclaw:18789 (container-to-container)
|
|
96
|
+
OPENCLAW_GATEWAY_URL=ws://localhost:18789
|
|
97
|
+
|
|
98
|
+
# Gateway authentication token
|
|
99
|
+
OPENCLAW_GATEWAY_TOKEN=clawsql-openclaw-token
|
|
100
|
+
|
|
101
|
+
# Optional: configure AI model provider (defaults to bundled qwen model)
|
|
102
|
+
# Supported: anthropic, openai, azure, ollama, etc.
|
|
103
|
+
OPENCLAW_MODEL_PROVIDER=
|
|
104
|
+
OPENCLAW_MODEL_API_KEY=
|
|
105
|
+
|
|
86
106
|
# =============================================================================
|
|
87
107
|
# Logging Configuration
|
|
88
108
|
# =============================================================================
|
package/README.md
CHANGED
|
@@ -108,6 +108,8 @@ After starting, access these services:
|
|
|
108
108
|
| Prometheus | http://localhost:9090 | Metrics collection |
|
|
109
109
|
| Grafana | http://localhost:3001 | Dashboards (admin/admin) |
|
|
110
110
|
| ProxySQL | localhost:6033 | MySQL traffic (read/write split) |
|
|
111
|
+
| OpenClaw Gateway | ws://localhost:18789 | AI agent gateway |
|
|
112
|
+
| OpenClaw UI | http://localhost:18790 | AI control panel |
|
|
111
113
|
|
|
112
114
|
### Demo MySQL Cluster
|
|
113
115
|
|
|
@@ -302,39 +304,24 @@ Key settings:
|
|
|
302
304
|
│ │ Orchestrator│ │ Failover │ │ Monitoring │ │
|
|
303
305
|
│ │ Client │ │ Engine │ │ Service │ │
|
|
304
306
|
│ └─────────────┘ └─────────────┘ └─────────────┘ │
|
|
307
|
+
│ ┌─────────────────────────────────────────────────┐ │
|
|
308
|
+
│ │ OpenClaw AI Gateway │ │
|
|
309
|
+
│ │ Port 18789 - Gateway | Port 18790 - UI │ │
|
|
310
|
+
│ └─────────────────────────────────────────────────┘ │
|
|
305
311
|
└─────────────────────────────────────────────────────────────────┘
|
|
306
312
|
```
|
|
307
313
|
|
|
308
314
|
## AI Agent Integration
|
|
309
315
|
|
|
310
|
-
ClawSQL
|
|
311
|
-
|
|
312
|
-
### Prerequisites
|
|
313
|
-
|
|
314
|
-
Install and configure the OpenClaw CLI following the [OpenClaw documentation](https://github.com/anthropics/openclaw#installation).
|
|
315
|
-
|
|
316
|
-
### Using the AI Agent
|
|
317
|
-
|
|
318
|
-
Start the CLI and interact naturally:
|
|
316
|
+
ClawSQL integrates with [OpenClaw](https://github.com/openclaw/openclaw) for AI-powered database operations. OpenClaw starts automatically with the platform.
|
|
319
317
|
|
|
320
318
|
```
|
|
321
319
|
clawsql> show me the cluster topology
|
|
322
|
-
clawsql> what's the replication lag
|
|
323
|
-
clawsql> help me
|
|
324
|
-
clawsql> explain the failover process
|
|
320
|
+
clawsql> what's the replication lag?
|
|
321
|
+
clawsql> help me troubleshoot replication issues
|
|
325
322
|
```
|
|
326
323
|
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
- **Topology queries**: "show me the cluster", "what's the primary?"
|
|
330
|
-
- **Status checks**: "check replication status", "is the cluster healthy?"
|
|
331
|
-
- **Guided operations**: "how do I add a replica?", "help me set up failover"
|
|
332
|
-
- **Troubleshooting**: "why is replication lag high?", "diagnose connection issues"
|
|
333
|
-
- **Explanations**: "explain read/write splitting", "how does failover work?"
|
|
334
|
-
|
|
335
|
-
### Stopping AI Operations
|
|
336
|
-
|
|
337
|
-
During AI processing, press **ESC twice** (within 500ms) to stop the current operation.
|
|
324
|
+
See **[AI Integration Documentation](docs/AI.md)** for details on setup, configuration, and usage.
|
|
338
325
|
|
|
339
326
|
## Development
|
|
340
327
|
|
|
@@ -410,6 +397,7 @@ docker exec proxysql mysql -h127.0.0.1 -P6032 -uadmin -padmin -e "DELETE FROM my
|
|
|
410
397
|
## Documentation
|
|
411
398
|
|
|
412
399
|
- [Getting Started](docs/GET_STARTED.md) - Step-by-step tutorial
|
|
400
|
+
- [AI Integration](docs/AI.md) - OpenClaw AI agent setup and usage
|
|
413
401
|
- [API Documentation](docs/API.md) - REST API reference
|
|
414
402
|
- [Demo Guide](docs/DEMO.md) - Testing with demo cluster
|
|
415
403
|
- [Failover Documentation](docs/failover.md) - Failover architecture and operations
|
package/dist/app.js
CHANGED
|
@@ -90,7 +90,7 @@ ClawSQL provides comprehensive automation for MySQL cluster management:
|
|
|
90
90
|
- Prometheus for metrics collection
|
|
91
91
|
- Grafana for visualization
|
|
92
92
|
`,
|
|
93
|
-
version:
|
|
93
|
+
version: settings.appVersion,
|
|
94
94
|
},
|
|
95
95
|
servers: [
|
|
96
96
|
{ url: '/', description: 'Current server' },
|
|
@@ -115,7 +115,7 @@ ClawSQL provides comprehensive automation for MySQL cluster management:
|
|
|
115
115
|
fastify.get('/', async () => {
|
|
116
116
|
return {
|
|
117
117
|
name: 'ClawSQL',
|
|
118
|
-
version:
|
|
118
|
+
version: settings.appVersion,
|
|
119
119
|
description: 'MySQL Cluster Automation and Operations Management',
|
|
120
120
|
docs: '/docs',
|
|
121
121
|
health: '/health',
|
package/dist/app.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;AA+BH,8BAsIC;AAKD,kCA6CC;AArND,sDAAgD;AAChD,yDAAiC;AACjC,6DAAqC;AACrC,+DAAuC;AACvC,qEAA4C;AAC5C,yEAImC;AACnC,sDAAmD;AACnD,iDAAgD;AAChD,qDAAmD;AACnD,yDAAqD;AAErD,gBAAgB;AAChB,6EAAwD;AACxD,2EAAsD;AACtD,2EAAsD;AACtD,+EAA0D;AAC1D,uEAAkD;AAClD,2EAAqD;AAErD,uBAAuB;AACvB,yEAAqE;AAErE;;GAEG;AACI,KAAK,UAAU,SAAS;IAC7B,MAAM,QAAQ,GAAG,IAAA,yBAAW,GAAE,CAAC;IAC/B,IAAA,uBAAW,GAAE,CAAC;IAEd,MAAM,OAAO,GAAG,IAAA,iBAAO,EAAC;QACtB,MAAM,EAAE;YACN,KAAK,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,EAAE;YAC3C,SAAS,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY;gBACpF,CAAC,CAAC;oBACE,MAAM,EAAE,aAAa;oBACrB,OAAO,EAAE;wBACP,QAAQ,EAAE,IAAI;wBACd,aAAa,EAAE,cAAc;wBAC7B,MAAM,EAAE,cAAc;qBACvB;iBACF;gBACH,CAAC,CAAC,SAAS;SACd;KACF,CAAC,CAAC,gBAAgB,EAAmB,CAAC;IAEvC,wBAAwB;IACxB,OAAO,CAAC,oBAAoB,CAAC,6CAAiB,CAAC,CAAC;IAChD,OAAO,CAAC,qBAAqB,CAAC,8CAAkB,CAAC,CAAC;IAElD,mBAAmB;IACnB,MAAM,OAAO,CAAC,QAAQ,CAAC,gBAAM,EAAE;QAC7B,qBAAqB,EAAE;YACrB,UAAU,EAAE;gBACV,UAAU,EAAE,CAAC,QAAQ,CAAC;gBACtB,QAAQ,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;gBACvC,MAAM,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,sBAAsB,CAAC;gBACnD,SAAS,EAAE,CAAC,QAAQ,EAAE,iBAAiB,CAAC;aACzC;SACF;KACF,CAAC,CAAC;IAEH,MAAM,OAAO,CAAC,QAAQ,CAAC,cAAI,EAAE;QAC3B,MAAM,EAAE,IAAI;QACZ,WAAW,EAAE,IAAI;KAClB,CAAC,CAAC;IAEH,wBAAwB;IACxB,MAAM,OAAO,CAAC,QAAQ,CAAC,iBAAO,EAAE;QAC9B,OAAO,EAAE;YACP,OAAO,EAAE,OAAO;YAChB,IAAI,EAAE;gBACJ,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE;;;;;;;;;;;;;;;;;SAiBZ;gBACD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
package/dist/bin/clawsql.js
CHANGED
|
File without changes
|
|
@@ -10,5 +10,5 @@ export { loadAIConfig } from './providers/base.js';
|
|
|
10
10
|
export { AnthropicProvider, getAnthropicProvider } from './providers/anthropic.js';
|
|
11
11
|
export { OpenAIProvider, getOpenAIProvider } from './providers/openai.js';
|
|
12
12
|
export { createAgentTools } from './tools/index.js';
|
|
13
|
-
export { OpenClawAgent, createOpenClawAgent, isOpenClawAvailable, sendToOpenClaw, scheduleCron, sendNotification, writeToMemory, } from './openclaw-integration.js';
|
|
13
|
+
export { OpenClawAgent, createOpenClawAgent, isOpenClawAvailable, isDockerOpenClawAvailable, isLocalOpenClawAvailable, isGatewayHealthy, getOpenClawStatus, ensureOpenClawRunning, sendToOpenClaw, scheduleCron, sendNotification, writeToMemory, } from './openclaw-integration.js';
|
|
14
14
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAClH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACtD,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAChD,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAClH,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACnF,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,EACd,YAAY,EACZ,gBAAgB,EAChB,aAAa,GACd,MAAM,2BAA2B,CAAC"}
|
package/dist/cli/agent/index.js
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Exports for the AI agent system.
|
|
6
6
|
*/
|
|
7
7
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
-
exports.writeToMemory = exports.sendNotification = exports.scheduleCron = exports.sendToOpenClaw = exports.isOpenClawAvailable = exports.createOpenClawAgent = exports.OpenClawAgent = exports.createAgentTools = exports.getOpenAIProvider = exports.OpenAIProvider = exports.getAnthropicProvider = exports.AnthropicProvider = exports.loadAIConfig = exports.createAIAgent = exports.AIAgent = void 0;
|
|
8
|
+
exports.writeToMemory = exports.sendNotification = exports.scheduleCron = exports.sendToOpenClaw = exports.ensureOpenClawRunning = exports.getOpenClawStatus = exports.isGatewayHealthy = exports.isLocalOpenClawAvailable = exports.isDockerOpenClawAvailable = exports.isOpenClawAvailable = exports.createOpenClawAgent = exports.OpenClawAgent = exports.createAgentTools = exports.getOpenAIProvider = exports.OpenAIProvider = exports.getAnthropicProvider = exports.AnthropicProvider = exports.loadAIConfig = exports.createAIAgent = exports.AIAgent = void 0;
|
|
9
9
|
var handler_js_1 = require("./handler.js");
|
|
10
10
|
Object.defineProperty(exports, "AIAgent", { enumerable: true, get: function () { return handler_js_1.AIAgent; } });
|
|
11
11
|
Object.defineProperty(exports, "createAIAgent", { enumerable: true, get: function () { return handler_js_1.createAIAgent; } });
|
|
@@ -23,6 +23,11 @@ var openclaw_integration_js_1 = require("./openclaw-integration.js");
|
|
|
23
23
|
Object.defineProperty(exports, "OpenClawAgent", { enumerable: true, get: function () { return openclaw_integration_js_1.OpenClawAgent; } });
|
|
24
24
|
Object.defineProperty(exports, "createOpenClawAgent", { enumerable: true, get: function () { return openclaw_integration_js_1.createOpenClawAgent; } });
|
|
25
25
|
Object.defineProperty(exports, "isOpenClawAvailable", { enumerable: true, get: function () { return openclaw_integration_js_1.isOpenClawAvailable; } });
|
|
26
|
+
Object.defineProperty(exports, "isDockerOpenClawAvailable", { enumerable: true, get: function () { return openclaw_integration_js_1.isDockerOpenClawAvailable; } });
|
|
27
|
+
Object.defineProperty(exports, "isLocalOpenClawAvailable", { enumerable: true, get: function () { return openclaw_integration_js_1.isLocalOpenClawAvailable; } });
|
|
28
|
+
Object.defineProperty(exports, "isGatewayHealthy", { enumerable: true, get: function () { return openclaw_integration_js_1.isGatewayHealthy; } });
|
|
29
|
+
Object.defineProperty(exports, "getOpenClawStatus", { enumerable: true, get: function () { return openclaw_integration_js_1.getOpenClawStatus; } });
|
|
30
|
+
Object.defineProperty(exports, "ensureOpenClawRunning", { enumerable: true, get: function () { return openclaw_integration_js_1.ensureOpenClawRunning; } });
|
|
26
31
|
Object.defineProperty(exports, "sendToOpenClaw", { enumerable: true, get: function () { return openclaw_integration_js_1.sendToOpenClaw; } });
|
|
27
32
|
Object.defineProperty(exports, "scheduleCron", { enumerable: true, get: function () { return openclaw_integration_js_1.scheduleCron; } });
|
|
28
33
|
Object.defineProperty(exports, "sendNotification", { enumerable: true, get: function () { return openclaw_integration_js_1.sendNotification; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/agent/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,2CAAsD;AAA7C,qGAAA,OAAO,OAAA;AAAE,2GAAA,aAAa,OAAA;AAG/B,+CAAmD;AAA1C,uGAAA,YAAY,OAAA;AACrB,yDAAmF;AAA1E,iHAAA,iBAAiB,OAAA;AAAE,oHAAA,oBAAoB,OAAA;AAChD,mDAA0E;AAAjE,2GAAA,cAAc,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AAC1C,6CAAoD;AAA3C,4GAAA,gBAAgB,OAAA;AACzB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/agent/index.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAEH,2CAAsD;AAA7C,qGAAA,OAAO,OAAA;AAAE,2GAAA,aAAa,OAAA;AAG/B,+CAAmD;AAA1C,uGAAA,YAAY,OAAA;AACrB,yDAAmF;AAA1E,iHAAA,iBAAiB,OAAA;AAAE,oHAAA,oBAAoB,OAAA;AAChD,mDAA0E;AAAjE,2GAAA,cAAc,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AAC1C,6CAAoD;AAA3C,4GAAA,gBAAgB,OAAA;AACzB,qEAamC;AAZjC,wHAAA,aAAa,OAAA;AACb,8HAAA,mBAAmB,OAAA;AACnB,8HAAA,mBAAmB,OAAA;AACnB,oIAAA,yBAAyB,OAAA;AACzB,mIAAA,wBAAwB,OAAA;AACxB,2HAAA,gBAAgB,OAAA;AAChB,4HAAA,iBAAiB,OAAA;AACjB,gIAAA,qBAAqB,OAAA;AACrB,yHAAA,cAAc,OAAA;AACd,uHAAA,YAAY,OAAA;AACZ,2HAAA,gBAAgB,OAAA;AAChB,wHAAA,aAAa,OAAA"}
|
|
@@ -2,21 +2,39 @@
|
|
|
2
2
|
* ClawSQL CLI - OpenClaw Integration
|
|
3
3
|
*
|
|
4
4
|
* Integrates with OpenClaw gateway for AI-powered operations.
|
|
5
|
+
* Supports both Docker-based gateway and local CLI installation.
|
|
5
6
|
*/
|
|
6
7
|
import { CLIContext } from '../registry.js';
|
|
7
|
-
/**
|
|
8
|
-
* OpenClaw integration options
|
|
9
|
-
*/
|
|
10
8
|
export interface OpenClawOptions {
|
|
11
9
|
gatewayUrl?: string;
|
|
10
|
+
gatewayToken?: string;
|
|
12
11
|
timeout?: number;
|
|
13
12
|
}
|
|
13
|
+
export interface OpenClawStatus {
|
|
14
|
+
available: boolean;
|
|
15
|
+
isLocal: boolean;
|
|
16
|
+
isDocker: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Check if OpenClaw Docker container is running
|
|
20
|
+
*/
|
|
21
|
+
export declare function isDockerOpenClawAvailable(): Promise<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* Check if OpenClaw gateway health endpoint responds
|
|
24
|
+
*/
|
|
25
|
+
export declare function isGatewayHealthy(): Promise<boolean>;
|
|
14
26
|
/**
|
|
15
|
-
* Check if OpenClaw gateway is running
|
|
16
|
-
|
|
17
|
-
|
|
27
|
+
* Check if local OpenClaw CLI gateway is running (not Docker)
|
|
28
|
+
*/
|
|
29
|
+
export declare function isLocalOpenClawAvailable(): Promise<boolean>;
|
|
30
|
+
/**
|
|
31
|
+
* Check if any OpenClaw gateway is available (Docker or local)
|
|
18
32
|
*/
|
|
19
33
|
export declare function isOpenClawAvailable(): Promise<boolean>;
|
|
34
|
+
/**
|
|
35
|
+
* Get detailed OpenClaw status
|
|
36
|
+
*/
|
|
37
|
+
export declare function getOpenClawStatus(): Promise<OpenClawStatus>;
|
|
20
38
|
/**
|
|
21
39
|
* Send a message to OpenClaw agent
|
|
22
40
|
*/
|
|
@@ -24,12 +42,7 @@ export declare function sendToOpenClaw(message: string, options?: OpenClawOption
|
|
|
24
42
|
signal?: AbortSignal;
|
|
25
43
|
}): Promise<string>;
|
|
26
44
|
/**
|
|
27
|
-
* Send a message to OpenClaw
|
|
28
|
-
* Calls onChunk callback for each chunk of output as it arrives
|
|
29
|
-
*
|
|
30
|
-
* NOTE: OpenClaw's agent command outputs all at once after processing completes,
|
|
31
|
-
* not incrementally. The streaming callback will typically receive one large chunk.
|
|
32
|
-
* This is a limitation of OpenClaw's internal output handling, not Node.js buffering.
|
|
45
|
+
* Send a message to OpenClaw with streaming output
|
|
33
46
|
*/
|
|
34
47
|
export declare function sendToOpenClawStream(message: string, onChunk: (chunk: string) => void, options?: OpenClawOptions & {
|
|
35
48
|
signal?: AbortSignal;
|
|
@@ -51,31 +64,22 @@ export declare function writeToMemory(content: string, filename?: string): Promi
|
|
|
51
64
|
*/
|
|
52
65
|
export declare class OpenClawAgent {
|
|
53
66
|
private context;
|
|
54
|
-
private
|
|
67
|
+
private _available;
|
|
55
68
|
constructor(ctx: CLIContext);
|
|
56
|
-
/**
|
|
57
|
-
* Check if OpenClaw is available
|
|
58
|
-
*/
|
|
59
69
|
isAvailable(): Promise<boolean>;
|
|
60
|
-
/**
|
|
61
|
-
* Process a natural language query
|
|
62
|
-
*/
|
|
63
70
|
process(input: string): Promise<string>;
|
|
64
|
-
/**
|
|
65
|
-
* Build context prompt with current cluster state
|
|
66
|
-
*/
|
|
67
|
-
private buildContextPrompt;
|
|
68
|
-
/**
|
|
69
|
-
* Schedule periodic health checks
|
|
70
|
-
*/
|
|
71
71
|
scheduleHealthCheck(schedule?: string): Promise<string>;
|
|
72
|
-
/**
|
|
73
|
-
* Send an alert through configured channels
|
|
74
|
-
*/
|
|
75
72
|
alert(channel: string, message: string): Promise<string>;
|
|
73
|
+
private buildContextPrompt;
|
|
76
74
|
}
|
|
77
75
|
/**
|
|
78
76
|
* Create an OpenClaw agent instance
|
|
79
77
|
*/
|
|
80
78
|
export declare function createOpenClawAgent(ctx: CLIContext): OpenClawAgent;
|
|
79
|
+
/** @deprecated Use isDockerOpenClawAvailable instead */
|
|
80
|
+
export declare const isDockerOpenClawContainerRunning: typeof isDockerOpenClawAvailable;
|
|
81
|
+
/** @deprecated Use isGatewayHealthy instead */
|
|
82
|
+
export declare const isOpenClawGatewayReachable: typeof isGatewayHealthy;
|
|
83
|
+
/** @deprecated Use getOpenClawStatus() or individual detection functions */
|
|
84
|
+
export declare function ensureOpenClawRunning(timeoutSeconds?: number): Promise<boolean>;
|
|
81
85
|
//# sourceMappingURL=openclaw-integration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"openclaw-integration.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/openclaw-integration.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"openclaw-integration.d.ts","sourceRoot":"","sources":["../../../src/cli/agent/openclaw-integration.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAqB5C,MAAM,WAAW,eAAe;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAkED;;GAEG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,OAAO,CAAC,CAMlE;AAED;;GAEG;AACH,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAAC,CAUzD;AAED;;GAEG;AACH,wBAAsB,wBAAwB,IAAI,OAAO,CAAC,OAAO,CAAC,CAuBjE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,OAAO,CAAC,CAE5D;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,cAAc,CAAC,CAWjE;AAMD;;GAEG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,eAAe,GAAG;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GACnD,OAAO,CAAC,MAAM,CAAC,CA6DjB;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,EAChC,OAAO,CAAC,EAAE,eAAe,GAAG;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,GACnD,OAAO,CAAC,MAAM,CAAC,CAkEjB;AAMD;;GAEG;AACH,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC,CAajB;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAYnF;AAED;;GAEG;AACH,wBAAsB,aAAa,CACjC,OAAO,EAAE,MAAM,EACf,QAAQ,GAAE,MAAmC,GAC5C,OAAO,CAAC,IAAI,CAAC,CAUf;AAMD;;GAEG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,UAAU,CAAwB;gBAE9B,GAAG,EAAE,UAAU;IAIrB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAO/B,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IASvC,mBAAmB,CAAC,QAAQ,GAAE,MAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQpE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAI9D,OAAO,CAAC,kBAAkB;CAW3B;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,UAAU,GAAG,aAAa,CAElE;AAMD,wDAAwD;AACxD,eAAO,MAAM,gCAAgC,kCAA4B,CAAC;AAE1E,+CAA+C;AAC/C,eAAO,MAAM,0BAA0B,yBAAmB,CAAC;AAE3D,4EAA4E;AAC5E,wBAAsB,qBAAqB,CAAC,cAAc,GAAE,MAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAOzF"}
|