@basilica/openclaw 0.1.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.
Files changed (80) hide show
  1. package/dist/gateway/index.d.ts +7 -0
  2. package/dist/gateway/index.d.ts.map +1 -0
  3. package/dist/gateway/index.js +21 -0
  4. package/dist/gateway/index.js.map +1 -0
  5. package/dist/gateway/status.d.ts +12 -0
  6. package/dist/gateway/status.d.ts.map +1 -0
  7. package/dist/gateway/status.js +33 -0
  8. package/dist/gateway/status.js.map +1 -0
  9. package/dist/gateway/sync-service.d.ts +17 -0
  10. package/dist/gateway/sync-service.d.ts.map +1 -0
  11. package/dist/gateway/sync-service.js +46 -0
  12. package/dist/gateway/sync-service.js.map +1 -0
  13. package/dist/gateway/webhook.d.ts +12 -0
  14. package/dist/gateway/webhook.d.ts.map +1 -0
  15. package/dist/gateway/webhook.js +23 -0
  16. package/dist/gateway/webhook.js.map +1 -0
  17. package/dist/hooks/audit.d.ts +17 -0
  18. package/dist/hooks/audit.d.ts.map +1 -0
  19. package/dist/hooks/audit.js +28 -0
  20. package/dist/hooks/audit.js.map +1 -0
  21. package/dist/hooks/index.d.ts +5 -0
  22. package/dist/hooks/index.d.ts.map +1 -0
  23. package/dist/hooks/index.js +14 -0
  24. package/dist/hooks/index.js.map +1 -0
  25. package/dist/hooks/model-routing.d.ts +3 -0
  26. package/dist/hooks/model-routing.d.ts.map +1 -0
  27. package/dist/hooks/model-routing.js +11 -0
  28. package/dist/hooks/model-routing.js.map +1 -0
  29. package/dist/hooks/prompt-context.d.ts +3 -0
  30. package/dist/hooks/prompt-context.d.ts.map +1 -0
  31. package/dist/hooks/prompt-context.js +11 -0
  32. package/dist/hooks/prompt-context.js.map +1 -0
  33. package/dist/hooks/tool-policy.d.ts +3 -0
  34. package/dist/hooks/tool-policy.d.ts.map +1 -0
  35. package/dist/hooks/tool-policy.js +44 -0
  36. package/dist/hooks/tool-policy.js.map +1 -0
  37. package/dist/index.d.ts +5 -0
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +11 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/tools/context.d.ts +6 -0
  42. package/dist/tools/context.d.ts.map +1 -0
  43. package/dist/tools/context.js +28 -0
  44. package/dist/tools/context.js.map +1 -0
  45. package/dist/tools/datasets.d.ts +3 -0
  46. package/dist/tools/datasets.d.ts.map +1 -0
  47. package/dist/tools/datasets.js +57 -0
  48. package/dist/tools/datasets.js.map +1 -0
  49. package/dist/tools/deployments.d.ts +3 -0
  50. package/dist/tools/deployments.d.ts.map +1 -0
  51. package/dist/tools/deployments.js +58 -0
  52. package/dist/tools/deployments.js.map +1 -0
  53. package/dist/tools/gpu.d.ts +3 -0
  54. package/dist/tools/gpu.d.ts.map +1 -0
  55. package/dist/tools/gpu.js +63 -0
  56. package/dist/tools/gpu.js.map +1 -0
  57. package/dist/tools/index.d.ts +3 -0
  58. package/dist/tools/index.d.ts.map +1 -0
  59. package/dist/tools/index.js +15 -0
  60. package/dist/tools/index.js.map +1 -0
  61. package/dist/tools/inference.d.ts +3 -0
  62. package/dist/tools/inference.d.ts.map +1 -0
  63. package/dist/tools/inference.js +42 -0
  64. package/dist/tools/inference.js.map +1 -0
  65. package/dist/tools/jobs.d.ts +3 -0
  66. package/dist/tools/jobs.d.ts.map +1 -0
  67. package/dist/tools/jobs.js +58 -0
  68. package/dist/tools/jobs.js.map +1 -0
  69. package/dist/tools/logs.d.ts +3 -0
  70. package/dist/tools/logs.d.ts.map +1 -0
  71. package/dist/tools/logs.js +44 -0
  72. package/dist/tools/logs.js.map +1 -0
  73. package/dist/tools/schemas.d.ts +18 -0
  74. package/dist/tools/schemas.d.ts.map +1 -0
  75. package/dist/tools/schemas.js +135 -0
  76. package/dist/tools/schemas.js.map +1 -0
  77. package/openclaw.plugin.json +38 -0
  78. package/package.json +41 -0
  79. package/skills/basilica-operator/index.md +56 -0
  80. package/skills/basilica-platform/index.md +67 -0
@@ -0,0 +1,58 @@
1
+ import { resolveBasilicaClient, resolveProjectId, formatError } from "./context.js";
2
+ import { deploySchema, deploymentHealthSchema, deploymentRestartSchema } from "./schemas.js";
3
+ export function registerDeploymentTools(api) {
4
+ api.registerTool((ctx) => ({
5
+ name: "basilica_deploy",
6
+ label: "Deploy on Basilica",
7
+ description: "Deploy a model on Basilica platform",
8
+ parameters: deploySchema,
9
+ async execute(_toolCallId, params) {
10
+ try {
11
+ const client = resolveBasilicaClient(ctx);
12
+ const result = await client.deployments.deploy({
13
+ name: params.name,
14
+ modelId: params.modelId,
15
+ config: params.config,
16
+ projectId: resolveProjectId(ctx, params),
17
+ });
18
+ return { content: JSON.stringify(result, null, 2) };
19
+ }
20
+ catch (err) {
21
+ return { content: formatError(err) };
22
+ }
23
+ },
24
+ }));
25
+ api.registerTool((ctx) => ({
26
+ name: "basilica_deployment_health",
27
+ label: "Check Basilica Deployment Health",
28
+ description: "Check the health of a Basilica deployment",
29
+ parameters: deploymentHealthSchema,
30
+ async execute(_toolCallId, params) {
31
+ try {
32
+ const client = resolveBasilicaClient(ctx);
33
+ const result = await client.deployments.healthCheck(params.deploymentId);
34
+ return { content: JSON.stringify(result, null, 2) };
35
+ }
36
+ catch (err) {
37
+ return { content: formatError(err) };
38
+ }
39
+ },
40
+ }));
41
+ api.registerTool((ctx) => ({
42
+ name: "basilica_restart_deployment",
43
+ label: "Restart Basilica Deployment",
44
+ description: "Restart a Basilica deployment",
45
+ parameters: deploymentRestartSchema,
46
+ async execute(_toolCallId, params) {
47
+ try {
48
+ const client = resolveBasilicaClient(ctx);
49
+ const result = await client.deployments.restart(params.deploymentId);
50
+ return { content: JSON.stringify(result, null, 2) };
51
+ }
52
+ catch (err) {
53
+ return { content: formatError(err) };
54
+ }
55
+ },
56
+ }));
57
+ }
58
+ //# sourceMappingURL=deployments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployments.js","sourceRoot":"","sources":["../../src/tools/deployments.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAE7F,MAAM,UAAU,uBAAuB,CAAC,GAAsB;IAC5D,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,iBAAiB;QACvB,KAAK,EAAE,oBAAoB;QAC3B,WAAW,EAAE,qCAAqC;QAClD,UAAU,EAAE,YAAY;QACxB,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC;oBAC7C,IAAI,EAAE,MAAM,CAAC,IAAc;oBAC3B,OAAO,EAAE,MAAM,CAAC,OAAiB;oBACjC,MAAM,EAAE,MAAM,CAAC,MAA6C;oBAC5D,SAAS,EAAE,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;iBACzC,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,4BAA4B;QAClC,KAAK,EAAE,kCAAkC;QACzC,WAAW,EAAE,2CAA2C;QACxD,UAAU,EAAE,sBAAsB;QAClC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,WAAW,CAAC,MAAM,CAAC,YAAsB,CAAC,CAAC;gBACnF,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,6BAA6B;QACnC,KAAK,EAAE,6BAA6B;QACpC,WAAW,EAAE,+BAA+B;QAC5C,UAAU,EAAE,uBAAuB;QACnC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,YAAsB,CAAC,CAAC;gBAC/E,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { OpenClawPluginApi } from "openclaw-plugin-types";
2
+ export declare function registerGpuTools(api: OpenClawPluginApi): void;
3
+ //# sourceMappingURL=gpu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu.d.ts","sourceRoot":"","sources":["../../src/tools/gpu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CA0D7D"}
@@ -0,0 +1,63 @@
1
+ import { resolveBasilicaClient, resolveProjectId, formatError } from "./context.js";
2
+ import { gpuListSchema, gpuRequestSchema, gpuInspectSchema } from "./schemas.js";
3
+ export function registerGpuTools(api) {
4
+ api.registerTool((ctx) => ({
5
+ name: "basilica_list_gpu",
6
+ label: "List Basilica GPU Resources",
7
+ description: "List available GPU resources on Basilica",
8
+ parameters: gpuListSchema,
9
+ async execute(_toolCallId, params) {
10
+ try {
11
+ const client = resolveBasilicaClient(ctx);
12
+ const result = await client.gpu.listResources({
13
+ projectId: resolveProjectId(ctx, params),
14
+ page: params.page,
15
+ pageSize: params.pageSize,
16
+ });
17
+ return { content: JSON.stringify(result, null, 2) };
18
+ }
19
+ catch (err) {
20
+ return { content: formatError(err) };
21
+ }
22
+ },
23
+ }));
24
+ api.registerTool((ctx) => ({
25
+ name: "basilica_request_compute",
26
+ label: "Request Basilica Compute",
27
+ description: "Request GPU compute allocation on Basilica",
28
+ parameters: gpuRequestSchema,
29
+ async execute(_toolCallId, params) {
30
+ try {
31
+ const client = resolveBasilicaClient(ctx);
32
+ const result = await client.gpu.requestCompute({
33
+ gpuType: params.gpuType,
34
+ count: params.count,
35
+ region: params.region,
36
+ projectId: resolveProjectId(ctx, params),
37
+ durationHours: params.durationHours,
38
+ });
39
+ return { content: JSON.stringify(result, null, 2) };
40
+ }
41
+ catch (err) {
42
+ return { content: formatError(err) };
43
+ }
44
+ },
45
+ }));
46
+ api.registerTool((ctx) => ({
47
+ name: "basilica_inspect_allocation",
48
+ label: "Inspect Basilica Allocation",
49
+ description: "Inspect a GPU compute allocation on Basilica",
50
+ parameters: gpuInspectSchema,
51
+ async execute(_toolCallId, params) {
52
+ try {
53
+ const client = resolveBasilicaClient(ctx);
54
+ const result = await client.gpu.getAllocation(params.allocationId);
55
+ return { content: JSON.stringify(result, null, 2) };
56
+ }
57
+ catch (err) {
58
+ return { content: formatError(err) };
59
+ }
60
+ },
61
+ }));
62
+ }
63
+ //# sourceMappingURL=gpu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gpu.js","sourceRoot":"","sources":["../../src/tools/gpu.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { OpenClawPluginApi } from "openclaw-plugin-types";
2
+ export declare function registerBasilicaTools(api: OpenClawPluginApi): void;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAQ/D,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAOlE"}
@@ -0,0 +1,15 @@
1
+ import { registerInferenceTools } from "./inference.js";
2
+ import { registerJobTools } from "./jobs.js";
3
+ import { registerGpuTools } from "./gpu.js";
4
+ import { registerDeploymentTools } from "./deployments.js";
5
+ import { registerDatasetTools } from "./datasets.js";
6
+ import { registerLogTools } from "./logs.js";
7
+ export function registerBasilicaTools(api) {
8
+ registerInferenceTools(api);
9
+ registerJobTools(api);
10
+ registerGpuTools(api);
11
+ registerDeploymentTools(api);
12
+ registerDatasetTools(api);
13
+ registerLogTools(api);
14
+ }
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/tools/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAE7C,MAAM,UAAU,qBAAqB,CAAC,GAAsB;IAC1D,sBAAsB,CAAC,GAAG,CAAC,CAAC;IAC5B,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtB,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACtB,uBAAuB,CAAC,GAAG,CAAC,CAAC;IAC7B,oBAAoB,CAAC,GAAG,CAAC,CAAC;IAC1B,gBAAgB,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { OpenClawPluginApi } from "openclaw-plugin-types";
2
+ export declare function registerInferenceTools(api: OpenClawPluginApi): void;
3
+ //# sourceMappingURL=inference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inference.d.ts","sourceRoot":"","sources":["../../src/tools/inference.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAI/D,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAqCnE"}
@@ -0,0 +1,42 @@
1
+ import { resolveBasilicaClient, resolveProjectId, formatError } from "./context.js";
2
+ import { inferenceStartSchema, inferenceQuerySchema } from "./schemas.js";
3
+ export function registerInferenceTools(api) {
4
+ api.registerTool((ctx) => ({
5
+ name: "basilica_start_inference",
6
+ label: "Start Basilica Inference",
7
+ description: "Start an inference run on a Basilica model",
8
+ parameters: inferenceStartSchema,
9
+ async execute(_toolCallId, params) {
10
+ try {
11
+ const client = resolveBasilicaClient(ctx);
12
+ const result = await client.inference.start({
13
+ modelId: params.modelId,
14
+ input: params.input,
15
+ parameters: params.parameters,
16
+ projectId: resolveProjectId(ctx, params),
17
+ });
18
+ return { content: JSON.stringify(result, null, 2) };
19
+ }
20
+ catch (err) {
21
+ return { content: formatError(err) };
22
+ }
23
+ },
24
+ }));
25
+ api.registerTool((ctx) => ({
26
+ name: "basilica_query_inference",
27
+ label: "Query Basilica Inference",
28
+ description: "Query the status and result of a Basilica inference run",
29
+ parameters: inferenceQuerySchema,
30
+ async execute(_toolCallId, params) {
31
+ try {
32
+ const client = resolveBasilicaClient(ctx);
33
+ const result = await client.inference.get(params.inferenceId);
34
+ return { content: JSON.stringify(result, null, 2) };
35
+ }
36
+ catch (err) {
37
+ return { content: formatError(err) };
38
+ }
39
+ },
40
+ }));
41
+ }
42
+ //# sourceMappingURL=inference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inference.js","sourceRoot":"","sources":["../../src/tools/inference.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAE1E,MAAM,UAAU,sBAAsB,CAAC,GAAsB;IAC3D,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,4CAA4C;QACzD,UAAU,EAAE,oBAAoB;QAChC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC;oBAC1C,OAAO,EAAE,MAAM,CAAC,OAAiB;oBACjC,KAAK,EAAE,MAAM,CAAC,KAAe;oBAC7B,UAAU,EAAE,MAAM,CAAC,UAAqC;oBACxD,SAAS,EAAE,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;iBACzC,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,0BAA0B;QAChC,KAAK,EAAE,0BAA0B;QACjC,WAAW,EAAE,yDAAyD;QACtE,UAAU,EAAE,oBAAoB;QAChC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,WAAqB,CAAC,CAAC;gBACxE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { OpenClawPluginApi } from "openclaw-plugin-types";
2
+ export declare function registerJobTools(api: OpenClawPluginApi): void;
3
+ //# sourceMappingURL=jobs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.d.ts","sourceRoot":"","sources":["../../src/tools/jobs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAqD7D"}
@@ -0,0 +1,58 @@
1
+ import { resolveBasilicaClient, resolveProjectId, formatError } from "./context.js";
2
+ import { jobSubmitSchema, jobStatusSchema, jobCancelSchema } from "./schemas.js";
3
+ export function registerJobTools(api) {
4
+ api.registerTool((ctx) => ({
5
+ name: "basilica_submit_job",
6
+ label: "Submit Basilica Job",
7
+ description: "Submit a training, inference, fine-tune, or evaluation job to Basilica",
8
+ parameters: jobSubmitSchema,
9
+ async execute(_toolCallId, params) {
10
+ try {
11
+ const client = resolveBasilicaClient(ctx);
12
+ const result = await client.jobs.submit({
13
+ name: params.name,
14
+ type: params.type,
15
+ config: params.config,
16
+ projectId: resolveProjectId(ctx, params),
17
+ });
18
+ return { content: JSON.stringify(result, null, 2) };
19
+ }
20
+ catch (err) {
21
+ return { content: formatError(err) };
22
+ }
23
+ },
24
+ }));
25
+ api.registerTool((ctx) => ({
26
+ name: "basilica_job_status",
27
+ label: "Basilica Job Status",
28
+ description: "Query the status of a Basilica job",
29
+ parameters: jobStatusSchema,
30
+ async execute(_toolCallId, params) {
31
+ try {
32
+ const client = resolveBasilicaClient(ctx);
33
+ const result = await client.jobs.get(params.jobId);
34
+ return { content: JSON.stringify(result, null, 2) };
35
+ }
36
+ catch (err) {
37
+ return { content: formatError(err) };
38
+ }
39
+ },
40
+ }));
41
+ api.registerTool((ctx) => ({
42
+ name: "basilica_cancel_job",
43
+ label: "Cancel Basilica Job",
44
+ description: "Cancel a running Basilica job",
45
+ parameters: jobCancelSchema,
46
+ async execute(_toolCallId, params) {
47
+ try {
48
+ const client = resolveBasilicaClient(ctx);
49
+ const result = await client.jobs.cancel(params.jobId);
50
+ return { content: JSON.stringify(result, null, 2) };
51
+ }
52
+ catch (err) {
53
+ return { content: formatError(err) };
54
+ }
55
+ },
56
+ }));
57
+ }
58
+ //# sourceMappingURL=jobs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"jobs.js","sourceRoot":"","sources":["../../src/tools/jobs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEjF,MAAM,UAAU,gBAAgB,CAAC,GAAsB;IACrD,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,wEAAwE;QACrF,UAAU,EAAE,eAAe;QAC3B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;oBACtC,IAAI,EAAE,MAAM,CAAC,IAAc;oBAC3B,IAAI,EAAE,MAAM,CAAC,IAAe;oBAC5B,MAAM,EAAE,MAAM,CAAC,MAAiC;oBAChD,SAAS,EAAE,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;iBACzC,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,oCAAoC;QACjD,UAAU,EAAE,eAAe;QAC3B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,KAAe,CAAC,CAAC;gBAC7D,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,+BAA+B;QAC5C,UAAU,EAAE,eAAe;QAC3B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,KAAe,CAAC,CAAC;gBAChE,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,3 @@
1
+ import type { OpenClawPluginApi } from "openclaw-plugin-types";
2
+ export declare function registerLogTools(api: OpenClawPluginApi): void;
3
+ //# sourceMappingURL=logs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/tools/logs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAK/D,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,iBAAiB,GAAG,IAAI,CA0C7D"}
@@ -0,0 +1,44 @@
1
+ import { resolveBasilicaClient, resolveProjectId, formatError } from "./context.js";
2
+ import { logsQuerySchema, logsRecentErrorsSchema } from "./schemas.js";
3
+ export function registerLogTools(api) {
4
+ api.registerTool((ctx) => ({
5
+ name: "basilica_query_logs",
6
+ label: "Query Basilica Logs",
7
+ description: "Query logs from Basilica platform",
8
+ parameters: logsQuerySchema,
9
+ async execute(_toolCallId, params) {
10
+ try {
11
+ const client = resolveBasilicaClient(ctx);
12
+ const result = await client.logs.query({
13
+ source: params.source,
14
+ level: params.level,
15
+ since: params.since,
16
+ until: params.until,
17
+ limit: params.limit,
18
+ projectId: resolveProjectId(ctx, params),
19
+ });
20
+ return { content: JSON.stringify(result, null, 2) };
21
+ }
22
+ catch (err) {
23
+ return { content: formatError(err) };
24
+ }
25
+ },
26
+ }));
27
+ api.registerTool((ctx) => ({
28
+ name: "basilica_recent_errors",
29
+ label: "Basilica Recent Errors",
30
+ description: "Get recent error logs from Basilica",
31
+ parameters: logsRecentErrorsSchema,
32
+ async execute(_toolCallId, params) {
33
+ try {
34
+ const client = resolveBasilicaClient(ctx);
35
+ const result = await client.logs.getRecentErrors(resolveProjectId(ctx, params), params.limit);
36
+ return { content: JSON.stringify(result, null, 2) };
37
+ }
38
+ catch (err) {
39
+ return { content: formatError(err) };
40
+ }
41
+ },
42
+ }));
43
+ }
44
+ //# sourceMappingURL=logs.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/tools/logs.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACpF,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAEvE,MAAM,UAAU,gBAAgB,CAAC,GAAsB;IACrD,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,qBAAqB;QAC3B,KAAK,EAAE,qBAAqB;QAC5B,WAAW,EAAE,mCAAmC;QAChD,UAAU,EAAE,eAAe;QAC3B,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC;oBACrC,MAAM,EAAE,MAAM,CAAC,MAA4B;oBAC3C,KAAK,EAAE,MAAM,CAAC,KAA6B;oBAC3C,KAAK,EAAE,MAAM,CAAC,KAA2B;oBACzC,KAAK,EAAE,MAAM,CAAC,KAA2B;oBACzC,KAAK,EAAE,MAAM,CAAC,KAA2B;oBACzC,SAAS,EAAE,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;iBACzC,CAAC,CAAC;gBACH,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;IAEJ,GAAG,CAAC,YAAY,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;QACzB,IAAI,EAAE,wBAAwB;QAC9B,KAAK,EAAE,wBAAwB;QAC/B,WAAW,EAAE,qCAAqC;QAClD,UAAU,EAAE,sBAAsB;QAClC,KAAK,CAAC,OAAO,CAAC,WAAW,EAAE,MAAM;YAC/B,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,qBAAqB,CAAC,GAAG,CAAC,CAAC;gBAC1C,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,IAAI,CAAC,eAAe,CAC9C,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC,EAC7B,MAAM,CAAC,KAA2B,CACnC,CAAC;gBACF,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;YACtD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACvC,CAAC;QACH,CAAC;KACF,CAAC,CAAC,CAAC;AACN,CAAC"}
@@ -0,0 +1,18 @@
1
+ import type { ToolSchema } from "openclaw-plugin-types";
2
+ export declare const inferenceStartSchema: ToolSchema;
3
+ export declare const inferenceQuerySchema: ToolSchema;
4
+ export declare const jobSubmitSchema: ToolSchema;
5
+ export declare const jobStatusSchema: ToolSchema;
6
+ export declare const jobCancelSchema: ToolSchema;
7
+ export declare const gpuListSchema: ToolSchema;
8
+ export declare const gpuRequestSchema: ToolSchema;
9
+ export declare const gpuInspectSchema: ToolSchema;
10
+ export declare const deploySchema: ToolSchema;
11
+ export declare const deploymentHealthSchema: ToolSchema;
12
+ export declare const deploymentRestartSchema: ToolSchema;
13
+ export declare const datasetListSchema: ToolSchema;
14
+ export declare const datasetGetSchema: ToolSchema;
15
+ export declare const datasetArtifactsSchema: ToolSchema;
16
+ export declare const logsQuerySchema: ToolSchema;
17
+ export declare const logsRecentErrorsSchema: ToolSchema;
18
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAMxD,eAAO,MAAM,oBAAoB,EAAE,UASlC,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,UAMlC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,UAS7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,UAM7B,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,UAM7B,CAAC;AAEF,eAAO,MAAM,aAAa,EAAE,UAO3B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,UAU9B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,UAM9B,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,UAS1B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,UAMpC,CAAC;AAEF,eAAO,MAAM,uBAAuB,EAAE,UAMrC,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,UAO/B,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,UAM9B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,UAMpC,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,UAU7B,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,UAMpC,CAAC"}
@@ -0,0 +1,135 @@
1
+ const projectIdProp = {
2
+ projectId: { type: "string", description: "Project ID (uses default if omitted)" },
3
+ };
4
+ export const inferenceStartSchema = {
5
+ type: "object",
6
+ properties: {
7
+ modelId: { type: "string", description: "Model identifier to run inference against" },
8
+ input: { type: "string", description: "Input text for inference" },
9
+ parameters: { type: "object", description: "Optional model parameters" },
10
+ ...projectIdProp,
11
+ },
12
+ required: ["modelId", "input"],
13
+ };
14
+ export const inferenceQuerySchema = {
15
+ type: "object",
16
+ properties: {
17
+ inferenceId: { type: "string", description: "Inference run ID to query" },
18
+ },
19
+ required: ["inferenceId"],
20
+ };
21
+ export const jobSubmitSchema = {
22
+ type: "object",
23
+ properties: {
24
+ name: { type: "string", description: "Job name" },
25
+ type: { type: "string", enum: ["training", "inference", "fine-tune", "evaluation"], description: "Job type" },
26
+ config: { type: "object", description: "Job configuration" },
27
+ ...projectIdProp,
28
+ },
29
+ required: ["name", "type", "config"],
30
+ };
31
+ export const jobStatusSchema = {
32
+ type: "object",
33
+ properties: {
34
+ jobId: { type: "string", description: "Job ID to query" },
35
+ },
36
+ required: ["jobId"],
37
+ };
38
+ export const jobCancelSchema = {
39
+ type: "object",
40
+ properties: {
41
+ jobId: { type: "string", description: "Job ID to cancel" },
42
+ },
43
+ required: ["jobId"],
44
+ };
45
+ export const gpuListSchema = {
46
+ type: "object",
47
+ properties: {
48
+ ...projectIdProp,
49
+ page: { type: "number", description: "Page number" },
50
+ pageSize: { type: "number", description: "Page size" },
51
+ },
52
+ };
53
+ export const gpuRequestSchema = {
54
+ type: "object",
55
+ properties: {
56
+ gpuType: { type: "string", enum: ["A100", "H100", "H200", "L40S", "T4"], description: "GPU type" },
57
+ count: { type: "number", description: "Number of GPUs to request" },
58
+ region: { type: "string", description: "Preferred region" },
59
+ durationHours: { type: "number", description: "Duration in hours" },
60
+ ...projectIdProp,
61
+ },
62
+ required: ["gpuType", "count"],
63
+ };
64
+ export const gpuInspectSchema = {
65
+ type: "object",
66
+ properties: {
67
+ allocationId: { type: "string", description: "Allocation ID to inspect" },
68
+ },
69
+ required: ["allocationId"],
70
+ };
71
+ export const deploySchema = {
72
+ type: "object",
73
+ properties: {
74
+ name: { type: "string", description: "Deployment name" },
75
+ modelId: { type: "string", description: "Model to deploy" },
76
+ config: { type: "object", description: "Deployment configuration" },
77
+ ...projectIdProp,
78
+ },
79
+ required: ["name", "modelId"],
80
+ };
81
+ export const deploymentHealthSchema = {
82
+ type: "object",
83
+ properties: {
84
+ deploymentId: { type: "string", description: "Deployment ID to check" },
85
+ },
86
+ required: ["deploymentId"],
87
+ };
88
+ export const deploymentRestartSchema = {
89
+ type: "object",
90
+ properties: {
91
+ deploymentId: { type: "string", description: "Deployment ID to restart" },
92
+ },
93
+ required: ["deploymentId"],
94
+ };
95
+ export const datasetListSchema = {
96
+ type: "object",
97
+ properties: {
98
+ ...projectIdProp,
99
+ page: { type: "number", description: "Page number" },
100
+ pageSize: { type: "number", description: "Page size" },
101
+ },
102
+ };
103
+ export const datasetGetSchema = {
104
+ type: "object",
105
+ properties: {
106
+ datasetId: { type: "string", description: "Dataset ID" },
107
+ },
108
+ required: ["datasetId"],
109
+ };
110
+ export const datasetArtifactsSchema = {
111
+ type: "object",
112
+ properties: {
113
+ datasetId: { type: "string", description: "Dataset ID to get artifacts for" },
114
+ },
115
+ required: ["datasetId"],
116
+ };
117
+ export const logsQuerySchema = {
118
+ type: "object",
119
+ properties: {
120
+ source: { type: "string", description: "Log source filter" },
121
+ level: { type: "string", enum: ["debug", "info", "warn", "error"], description: "Log level filter" },
122
+ since: { type: "string", description: "Start time (ISO 8601)" },
123
+ until: { type: "string", description: "End time (ISO 8601)" },
124
+ limit: { type: "number", description: "Max entries to return" },
125
+ ...projectIdProp,
126
+ },
127
+ };
128
+ export const logsRecentErrorsSchema = {
129
+ type: "object",
130
+ properties: {
131
+ ...projectIdProp,
132
+ limit: { type: "number", description: "Max error entries to return" },
133
+ },
134
+ };
135
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ {
2
+ "id": "basilica",
3
+ "name": "Basilica",
4
+ "description": "Basilica platform tools, hooks, and gateway integration for OpenClaw",
5
+ "skills": ["./skills"],
6
+ "configSchema": {
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "defaultProject": { "type": "string" },
11
+ "baseUrl": { "type": "string" },
12
+ "toolGroups": {
13
+ "type": "object",
14
+ "properties": {
15
+ "inference": { "type": "boolean" },
16
+ "jobs": { "type": "boolean" },
17
+ "gpu": { "type": "boolean" },
18
+ "deployments": { "type": "boolean" },
19
+ "datasets": { "type": "boolean" },
20
+ "logs": { "type": "boolean" }
21
+ },
22
+ "additionalProperties": false
23
+ },
24
+ "routing": {
25
+ "type": "object",
26
+ "properties": {
27
+ "preferBasilicaModels": { "type": "boolean" }
28
+ },
29
+ "additionalProperties": false
30
+ }
31
+ }
32
+ },
33
+ "uiHints": {
34
+ "defaultProject": { "label": "Default Project", "placeholder": "my-org/my-project" },
35
+ "toolGroups": { "label": "Enabled Tool Groups" },
36
+ "routing.preferBasilicaModels": { "label": "Prefer Basilica Models" }
37
+ }
38
+ }
package/package.json ADDED
@@ -0,0 +1,41 @@
1
+ {
2
+ "name": "@basilica/openclaw",
3
+ "version": "0.1.0",
4
+ "type": "module",
5
+ "description": "Basilica platform tools, hooks, skills, and gateway integration for OpenClaw",
6
+ "main": "./dist/index.js",
7
+ "types": "./dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/index.d.ts",
11
+ "import": "./dist/index.js"
12
+ }
13
+ },
14
+ "openclaw": {
15
+ "extensions": [
16
+ "./dist/index.js"
17
+ ]
18
+ },
19
+ "files": [
20
+ "dist",
21
+ "skills",
22
+ "openclaw.plugin.json"
23
+ ],
24
+ "scripts": {
25
+ "build": "tsc",
26
+ "test": "find src -name '*.test.ts' -exec node --import tsx/esm --test {} +",
27
+ "lint": "tsc --noEmit",
28
+ "clean": "rm -rf dist"
29
+ },
30
+ "dependencies": {
31
+ "@basilica/openclaw-sdk": "^0.1.0"
32
+ },
33
+ "devDependencies": {
34
+ "openclaw-plugin-types": "^0.1.0",
35
+ "typescript": "^5.7.0"
36
+ },
37
+ "engines": {
38
+ "node": ">=20.0.0"
39
+ },
40
+ "license": "MIT"
41
+ }