clawup 1.0.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/README.md +245 -0
- package/dist/adapters/api-adapter.d.ts +76 -0
- package/dist/adapters/api-adapter.js +250 -0
- package/dist/adapters/api-adapter.js.map +1 -0
- package/dist/adapters/cli-adapter.d.ts +15 -0
- package/dist/adapters/cli-adapter.js +208 -0
- package/dist/adapters/cli-adapter.js.map +1 -0
- package/dist/adapters/index.d.ts +22 -0
- package/dist/adapters/index.js +32 -0
- package/dist/adapters/index.js.map +1 -0
- package/dist/adapters/types.d.ts +135 -0
- package/dist/adapters/types.js +14 -0
- package/dist/adapters/types.js.map +1 -0
- package/dist/bin.d.ts +8 -0
- package/dist/bin.js +221 -0
- package/dist/bin.js.map +1 -0
- package/dist/commands/config.d.ts +21 -0
- package/dist/commands/config.js +323 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/deploy.d.ts +7 -0
- package/dist/commands/deploy.js +13 -0
- package/dist/commands/deploy.js.map +1 -0
- package/dist/commands/destroy.d.ts +7 -0
- package/dist/commands/destroy.js +13 -0
- package/dist/commands/destroy.js.map +1 -0
- package/dist/commands/init.d.ts +13 -0
- package/dist/commands/init.js +698 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/list.d.ts +8 -0
- package/dist/commands/list.js +42 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/push.d.ts +7 -0
- package/dist/commands/push.js +19 -0
- package/dist/commands/push.js.map +1 -0
- package/dist/commands/redeploy.d.ts +7 -0
- package/dist/commands/redeploy.js +13 -0
- package/dist/commands/redeploy.js.map +1 -0
- package/dist/commands/secrets.d.ts +16 -0
- package/dist/commands/secrets.js +169 -0
- package/dist/commands/secrets.js.map +1 -0
- package/dist/commands/ssh.d.ts +9 -0
- package/dist/commands/ssh.js +108 -0
- package/dist/commands/ssh.js.map +1 -0
- package/dist/commands/status.d.ts +7 -0
- package/dist/commands/status.js +13 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/update.d.ts +7 -0
- package/dist/commands/update.js +126 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/commands/validate.d.ts +7 -0
- package/dist/commands/validate.js +13 -0
- package/dist/commands/validate.js.map +1 -0
- package/dist/commands/webhooks.d.ts +7 -0
- package/dist/commands/webhooks.js +13 -0
- package/dist/commands/webhooks.js.map +1 -0
- package/dist/lib/__tests__/identity.test.d.ts +1 -0
- package/dist/lib/__tests__/identity.test.js +186 -0
- package/dist/lib/__tests__/identity.test.js.map +1 -0
- package/dist/lib/__tests__/validate-agent.test.d.ts +1 -0
- package/dist/lib/__tests__/validate-agent.test.js +38 -0
- package/dist/lib/__tests__/validate-agent.test.js.map +1 -0
- package/dist/lib/config.d.ts +69 -0
- package/dist/lib/config.js +218 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/constants.d.ts +5 -0
- package/dist/lib/constants.js +29 -0
- package/dist/lib/constants.js.map +1 -0
- package/dist/lib/exec.d.ts +24 -0
- package/dist/lib/exec.js +63 -0
- package/dist/lib/exec.js.map +1 -0
- package/dist/lib/prerequisites.d.ts +8 -0
- package/dist/lib/prerequisites.js +146 -0
- package/dist/lib/prerequisites.js.map +1 -0
- package/dist/lib/process.d.ts +18 -0
- package/dist/lib/process.js +37 -0
- package/dist/lib/process.js.map +1 -0
- package/dist/lib/pulumi.d.ts +37 -0
- package/dist/lib/pulumi.js +87 -0
- package/dist/lib/pulumi.js.map +1 -0
- package/dist/lib/tailscale.d.ts +75 -0
- package/dist/lib/tailscale.js +251 -0
- package/dist/lib/tailscale.js.map +1 -0
- package/dist/lib/tool-helpers.d.ts +15 -0
- package/dist/lib/tool-helpers.js +35 -0
- package/dist/lib/tool-helpers.js.map +1 -0
- package/dist/lib/ui.d.ts +26 -0
- package/dist/lib/ui.js +86 -0
- package/dist/lib/ui.js.map +1 -0
- package/dist/lib/update-check.d.ts +8 -0
- package/dist/lib/update-check.js +151 -0
- package/dist/lib/update-check.js.map +1 -0
- package/dist/lib/vendor.d.ts +34 -0
- package/dist/lib/vendor.js +128 -0
- package/dist/lib/vendor.js.map +1 -0
- package/dist/lib/workspace.d.ts +21 -0
- package/dist/lib/workspace.js +170 -0
- package/dist/lib/workspace.js.map +1 -0
- package/dist/tools/deploy.d.ts +16 -0
- package/dist/tools/deploy.js +181 -0
- package/dist/tools/deploy.js.map +1 -0
- package/dist/tools/destroy.d.ts +16 -0
- package/dist/tools/destroy.js +119 -0
- package/dist/tools/destroy.js.map +1 -0
- package/dist/tools/index.d.ts +20 -0
- package/dist/tools/index.js +34 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/push.d.ts +29 -0
- package/dist/tools/push.js +341 -0
- package/dist/tools/push.js.map +1 -0
- package/dist/tools/redeploy.d.ts +17 -0
- package/dist/tools/redeploy.js +181 -0
- package/dist/tools/redeploy.js.map +1 -0
- package/dist/tools/status.d.ts +16 -0
- package/dist/tools/status.js +205 -0
- package/dist/tools/status.js.map +1 -0
- package/dist/tools/validate.d.ts +16 -0
- package/dist/tools/validate.js +219 -0
- package/dist/tools/validate.js.map +1 -0
- package/dist/tools/webhooks.d.ts +17 -0
- package/dist/tools/webhooks.js +181 -0
- package/dist/tools/webhooks.js.map +1 -0
- package/dist/types.d.ts +6 -0
- package/dist/types.js +10 -0
- package/dist/types.js.map +1 -0
- package/infra/Pulumi.yaml +6 -0
- package/infra/dist/components/cloud-init.js +412 -0
- package/infra/dist/components/config-generator.js +254 -0
- package/infra/dist/components/hetzner-agent.js +162 -0
- package/infra/dist/components/index.js +18 -0
- package/infra/dist/components/openclaw-agent.js +287 -0
- package/infra/dist/components/shared.js +132 -0
- package/infra/dist/components/types.js +6 -0
- package/infra/dist/index.js +387 -0
- package/infra/dist/shared-vpc.js +167 -0
- package/infra/node_modules/@clawup/core/dist/__tests__/schemas.test.d.ts +2 -0
- package/infra/node_modules/@clawup/core/dist/__tests__/schemas.test.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/__tests__/schemas.test.js +124 -0
- package/infra/node_modules/@clawup/core/dist/__tests__/schemas.test.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/coding-agent-registry.d.ts +32 -0
- package/infra/node_modules/@clawup/core/dist/coding-agent-registry.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/coding-agent-registry.js +56 -0
- package/infra/node_modules/@clawup/core/dist/coding-agent-registry.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/constants.d.ts +137 -0
- package/infra/node_modules/@clawup/core/dist/constants.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/constants.js +314 -0
- package/infra/node_modules/@clawup/core/dist/constants.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/dep-registry.d.ts +25 -0
- package/infra/node_modules/@clawup/core/dist/dep-registry.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/dep-registry.js +46 -0
- package/infra/node_modules/@clawup/core/dist/dep-registry.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/deps.d.ts +18 -0
- package/infra/node_modules/@clawup/core/dist/deps.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/deps.js +39 -0
- package/infra/node_modules/@clawup/core/dist/deps.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/identity.d.ts +20 -0
- package/infra/node_modules/@clawup/core/dist/identity.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/identity.js +217 -0
- package/infra/node_modules/@clawup/core/dist/identity.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/index.d.ts +18 -0
- package/infra/node_modules/@clawup/core/dist/index.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/index.js +52 -0
- package/infra/node_modules/@clawup/core/dist/index.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/plugin-registry.d.ts +13 -0
- package/infra/node_modules/@clawup/core/dist/plugin-registry.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/plugin-registry.js +24 -0
- package/infra/node_modules/@clawup/core/dist/plugin-registry.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/schemas/identity.d.ts +74 -0
- package/infra/node_modules/@clawup/core/dist/schemas/identity.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/schemas/identity.js +45 -0
- package/infra/node_modules/@clawup/core/dist/schemas/identity.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/schemas/index.d.ts +6 -0
- package/infra/node_modules/@clawup/core/dist/schemas/index.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/schemas/index.js +13 -0
- package/infra/node_modules/@clawup/core/dist/schemas/index.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/schemas/manifest.d.ts +159 -0
- package/infra/node_modules/@clawup/core/dist/schemas/manifest.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/schemas/manifest.js +54 -0
- package/infra/node_modules/@clawup/core/dist/schemas/manifest.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/skills.d.ts +30 -0
- package/infra/node_modules/@clawup/core/dist/skills.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/skills.js +52 -0
- package/infra/node_modules/@clawup/core/dist/skills.js.map +1 -0
- package/infra/node_modules/@clawup/core/dist/types.d.ts +59 -0
- package/infra/node_modules/@clawup/core/dist/types.d.ts.map +1 -0
- package/infra/node_modules/@clawup/core/dist/types.js +30 -0
- package/infra/node_modules/@clawup/core/dist/types.js.map +1 -0
- package/infra/node_modules/@clawup/core/package.json +46 -0
- package/infra/package.json +12 -0
- package/package.json +43 -0
- package/scripts/postinstall.mjs +395 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* clawup config — View and modify config without re-running init
|
|
3
|
+
*
|
|
4
|
+
* Subcommands:
|
|
5
|
+
* show — Display current config
|
|
6
|
+
* set — Update a config value
|
|
7
|
+
*/
|
|
8
|
+
export interface ConfigShowOptions {
|
|
9
|
+
json?: boolean;
|
|
10
|
+
config?: string;
|
|
11
|
+
}
|
|
12
|
+
export declare function configShowCommand(opts: ConfigShowOptions): Promise<void>;
|
|
13
|
+
export interface ConfigSetOptions {
|
|
14
|
+
config?: string;
|
|
15
|
+
agent?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare function configSetCommand(key: string, value: string, opts: ConfigSetOptions): Promise<void>;
|
|
18
|
+
export interface ConfigMigrateOptions {
|
|
19
|
+
config?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare function configMigrateCommand(opts: ConfigMigrateOptions): Promise<void>;
|
|
@@ -0,0 +1,323 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* clawup config — View and modify config without re-running init
|
|
4
|
+
*
|
|
5
|
+
* Subcommands:
|
|
6
|
+
* show — Display current config
|
|
7
|
+
* set — Update a config value
|
|
8
|
+
*/
|
|
9
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
12
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
13
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
14
|
+
}
|
|
15
|
+
Object.defineProperty(o, k2, desc);
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
26
|
+
var ownKeys = function(o) {
|
|
27
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
28
|
+
var ar = [];
|
|
29
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
30
|
+
return ar;
|
|
31
|
+
};
|
|
32
|
+
return ownKeys(o);
|
|
33
|
+
};
|
|
34
|
+
return function (mod) {
|
|
35
|
+
if (mod && mod.__esModule) return mod;
|
|
36
|
+
var result = {};
|
|
37
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
38
|
+
__setModuleDefault(result, mod);
|
|
39
|
+
return result;
|
|
40
|
+
};
|
|
41
|
+
})();
|
|
42
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
43
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
44
|
+
};
|
|
45
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
|
+
exports.configShowCommand = configShowCommand;
|
|
47
|
+
exports.configSetCommand = configSetCommand;
|
|
48
|
+
exports.configMigrateCommand = configMigrateCommand;
|
|
49
|
+
const process = __importStar(require("process"));
|
|
50
|
+
const yaml_1 = __importDefault(require("yaml"));
|
|
51
|
+
const fs = __importStar(require("fs"));
|
|
52
|
+
const config_1 = require("../lib/config");
|
|
53
|
+
const core_1 = require("@clawup/core");
|
|
54
|
+
const picocolors_1 = __importDefault(require("picocolors"));
|
|
55
|
+
// ---------------------------------------------------------------------------
|
|
56
|
+
// Validation helpers
|
|
57
|
+
// ---------------------------------------------------------------------------
|
|
58
|
+
/** Top-level manifest keys that can be set */
|
|
59
|
+
const SETTABLE_TOP_KEYS = [
|
|
60
|
+
"region",
|
|
61
|
+
"instanceType",
|
|
62
|
+
"ownerName",
|
|
63
|
+
"timezone",
|
|
64
|
+
"workingHours",
|
|
65
|
+
"userNotes",
|
|
66
|
+
];
|
|
67
|
+
/** Per-agent keys that can be set */
|
|
68
|
+
const SETTABLE_AGENT_KEYS = [
|
|
69
|
+
"instanceType",
|
|
70
|
+
"volumeSize",
|
|
71
|
+
"displayName",
|
|
72
|
+
];
|
|
73
|
+
function isSettableTopKey(key) {
|
|
74
|
+
return SETTABLE_TOP_KEYS.includes(key);
|
|
75
|
+
}
|
|
76
|
+
function isSettableAgentKey(key) {
|
|
77
|
+
return SETTABLE_AGENT_KEYS.includes(key);
|
|
78
|
+
}
|
|
79
|
+
function allRegionValues(provider) {
|
|
80
|
+
if (provider === "hetzner")
|
|
81
|
+
return core_1.HETZNER_LOCATIONS.map((r) => r.value);
|
|
82
|
+
return core_1.AWS_REGIONS.map((r) => r.value);
|
|
83
|
+
}
|
|
84
|
+
function allInstanceTypeValues(provider, region) {
|
|
85
|
+
if (provider === "hetzner") {
|
|
86
|
+
const types = region ? (0, core_1.hetznerServerTypes)(region) : [...core_1.HETZNER_SERVER_TYPES_EU, ...core_1.HETZNER_SERVER_TYPES_US];
|
|
87
|
+
return types.map((t) => t.value);
|
|
88
|
+
}
|
|
89
|
+
return core_1.INSTANCE_TYPES.map((t) => t.value);
|
|
90
|
+
}
|
|
91
|
+
function validateTopValue(manifest, key, value) {
|
|
92
|
+
const provider = manifest.provider ?? "aws";
|
|
93
|
+
if (key === "region") {
|
|
94
|
+
const valid = allRegionValues(provider);
|
|
95
|
+
if (!valid.includes(value)) {
|
|
96
|
+
return `Invalid region '${value}' for provider '${provider}'. Valid options:\n ${valid.join("\n ")}`;
|
|
97
|
+
}
|
|
98
|
+
// Cross-validate: check if current instanceType is valid for the new region
|
|
99
|
+
if (provider === "hetzner" && manifest.instanceType) {
|
|
100
|
+
const validTypes = allInstanceTypeValues(provider, value);
|
|
101
|
+
if (!validTypes.includes(manifest.instanceType)) {
|
|
102
|
+
return `Region '${value}' is not compatible with current instanceType '${manifest.instanceType}'.\nUpdate instanceType first, or set both:\n clawup config set instanceType <type>\n clawup config set region ${value}`;
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
if (key === "instanceType") {
|
|
107
|
+
const valid = allInstanceTypeValues(provider, manifest.region);
|
|
108
|
+
if (!valid.includes(value)) {
|
|
109
|
+
return `Invalid instanceType '${value}' for provider '${provider}'. Valid options:\n ${valid.join("\n ")}`;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return null;
|
|
113
|
+
}
|
|
114
|
+
function validateAgentValue(manifest, key, value) {
|
|
115
|
+
if (key === "instanceType") {
|
|
116
|
+
const provider = manifest.provider ?? "aws";
|
|
117
|
+
const valid = allInstanceTypeValues(provider, manifest.region);
|
|
118
|
+
if (!valid.includes(value)) {
|
|
119
|
+
return `Invalid instanceType '${value}' for provider '${provider}'. Valid options:\n ${valid.join("\n ")}`;
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
if (key === "volumeSize") {
|
|
123
|
+
const num = Number(value);
|
|
124
|
+
if (isNaN(num) || num < 8 || num > 1000) {
|
|
125
|
+
return `volumeSize must be a number between 8 and 1000 (GB). Got: '${value}'`;
|
|
126
|
+
}
|
|
127
|
+
}
|
|
128
|
+
return null;
|
|
129
|
+
}
|
|
130
|
+
async function configShowCommand(opts) {
|
|
131
|
+
let configName;
|
|
132
|
+
try {
|
|
133
|
+
configName = (0, config_1.resolveConfigName)(opts.config);
|
|
134
|
+
}
|
|
135
|
+
catch (err) {
|
|
136
|
+
console.error(picocolors_1.default.red(err.message));
|
|
137
|
+
process.exit(1);
|
|
138
|
+
}
|
|
139
|
+
const manifest = (0, config_1.loadManifest)(configName);
|
|
140
|
+
if (!manifest) {
|
|
141
|
+
console.error(picocolors_1.default.red(`Config '${configName}' could not be loaded.`));
|
|
142
|
+
process.exit(1);
|
|
143
|
+
}
|
|
144
|
+
if (opts.json) {
|
|
145
|
+
console.log(yaml_1.default.stringify(manifest).trimEnd());
|
|
146
|
+
return;
|
|
147
|
+
}
|
|
148
|
+
// Human-readable output
|
|
149
|
+
console.log();
|
|
150
|
+
console.log(picocolors_1.default.bold(`Config: ${configName}`));
|
|
151
|
+
console.log();
|
|
152
|
+
console.log(` Stack: ${manifest.stackName}`);
|
|
153
|
+
console.log(` Provider: ${manifest.provider ?? "aws"}`);
|
|
154
|
+
console.log(` Region: ${manifest.region}`);
|
|
155
|
+
console.log(` Instance Type: ${manifest.instanceType}`);
|
|
156
|
+
console.log(` Owner: ${manifest.ownerName}`);
|
|
157
|
+
if (manifest.timezone)
|
|
158
|
+
console.log(` Timezone: ${manifest.timezone}`);
|
|
159
|
+
if (manifest.workingHours)
|
|
160
|
+
console.log(` Working Hours: ${manifest.workingHours}`);
|
|
161
|
+
if (manifest.userNotes)
|
|
162
|
+
console.log(` User Notes: ${manifest.userNotes}`);
|
|
163
|
+
if (manifest.templateVars && Object.keys(manifest.templateVars).length > 0) {
|
|
164
|
+
console.log();
|
|
165
|
+
console.log(picocolors_1.default.bold("Template Variables:"));
|
|
166
|
+
for (const [key, value] of Object.entries(manifest.templateVars)) {
|
|
167
|
+
console.log(` ${key}: ${value}`);
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
console.log();
|
|
171
|
+
console.log(picocolors_1.default.bold(`Agents (${manifest.agents.length}):`));
|
|
172
|
+
for (const agent of manifest.agents) {
|
|
173
|
+
const override = agent.instanceType ? ` [${agent.instanceType}]` : "";
|
|
174
|
+
console.log(` ${picocolors_1.default.bold(agent.displayName)} (${agent.role}) vol:${agent.volumeSize}GB${override}`);
|
|
175
|
+
console.log(` identity: ${agent.identity}`);
|
|
176
|
+
}
|
|
177
|
+
console.log();
|
|
178
|
+
}
|
|
179
|
+
async function configSetCommand(key, value, opts) {
|
|
180
|
+
let configName;
|
|
181
|
+
try {
|
|
182
|
+
configName = (0, config_1.resolveConfigName)(opts.config);
|
|
183
|
+
}
|
|
184
|
+
catch (err) {
|
|
185
|
+
console.error(picocolors_1.default.red(err.message));
|
|
186
|
+
process.exit(1);
|
|
187
|
+
}
|
|
188
|
+
const manifest = (0, config_1.loadManifest)(configName);
|
|
189
|
+
if (!manifest) {
|
|
190
|
+
console.error(picocolors_1.default.red(`Config '${configName}' could not be loaded.`));
|
|
191
|
+
process.exit(1);
|
|
192
|
+
}
|
|
193
|
+
if (opts.agent) {
|
|
194
|
+
// Per-agent set
|
|
195
|
+
if (!isSettableAgentKey(key)) {
|
|
196
|
+
console.error(picocolors_1.default.red(`Invalid per-agent key '${key}'. Valid keys:\n ${SETTABLE_AGENT_KEYS.join("\n ")}`));
|
|
197
|
+
process.exit(1);
|
|
198
|
+
}
|
|
199
|
+
const agent = manifest.agents.find((a) => a.name === opts.agent || a.displayName.toLowerCase() === opts.agent.toLowerCase() || a.role === opts.agent);
|
|
200
|
+
if (!agent) {
|
|
201
|
+
const names = manifest.agents.map((a) => `${a.displayName} (${a.role})`).join(", ");
|
|
202
|
+
console.error(picocolors_1.default.red(`Agent '${opts.agent}' not found. Available: ${names}`));
|
|
203
|
+
process.exit(1);
|
|
204
|
+
}
|
|
205
|
+
const err = validateAgentValue(manifest, key, value);
|
|
206
|
+
if (err) {
|
|
207
|
+
console.error(picocolors_1.default.red(err));
|
|
208
|
+
process.exit(1);
|
|
209
|
+
}
|
|
210
|
+
const agentRec = agent;
|
|
211
|
+
const oldValue = agentRec[key];
|
|
212
|
+
if (key === "volumeSize") {
|
|
213
|
+
agent.volumeSize = Number(value);
|
|
214
|
+
}
|
|
215
|
+
else {
|
|
216
|
+
agentRec[key] = value;
|
|
217
|
+
}
|
|
218
|
+
(0, config_1.saveManifest)(configName, manifest);
|
|
219
|
+
console.log(picocolors_1.default.green(`✓ ${agent.displayName}.${key}: ${String(oldValue ?? "(unset)")} → ${value}`));
|
|
220
|
+
}
|
|
221
|
+
else if (key.startsWith("templateVars.")) {
|
|
222
|
+
// templateVars.KEY set
|
|
223
|
+
const varName = key.slice("templateVars.".length);
|
|
224
|
+
if (!varName) {
|
|
225
|
+
console.error(picocolors_1.default.red("Template variable name cannot be empty. Use: templateVars.KEY"));
|
|
226
|
+
process.exit(1);
|
|
227
|
+
}
|
|
228
|
+
if (!manifest.templateVars)
|
|
229
|
+
manifest.templateVars = {};
|
|
230
|
+
const oldValue = manifest.templateVars[varName];
|
|
231
|
+
manifest.templateVars[varName] = value;
|
|
232
|
+
(0, config_1.saveManifest)(configName, manifest);
|
|
233
|
+
console.log(picocolors_1.default.green(`✓ templateVars.${varName}: ${String(oldValue ?? "(unset)")} → ${value}`));
|
|
234
|
+
}
|
|
235
|
+
else {
|
|
236
|
+
// Top-level set
|
|
237
|
+
if (!isSettableTopKey(key)) {
|
|
238
|
+
console.error(picocolors_1.default.red(`Invalid key '${key}'. Valid keys:\n ${SETTABLE_TOP_KEYS.join("\n ")}\n templateVars.<KEY>`));
|
|
239
|
+
process.exit(1);
|
|
240
|
+
}
|
|
241
|
+
const err = validateTopValue(manifest, key, value);
|
|
242
|
+
if (err) {
|
|
243
|
+
console.error(picocolors_1.default.red(err));
|
|
244
|
+
process.exit(1);
|
|
245
|
+
}
|
|
246
|
+
const manifestRec = manifest;
|
|
247
|
+
const oldValue = manifestRec[key];
|
|
248
|
+
manifestRec[key] = value;
|
|
249
|
+
(0, config_1.saveManifest)(configName, manifest);
|
|
250
|
+
console.log(picocolors_1.default.green(`✓ ${key}: ${String(oldValue ?? "(unset)")} → ${value}`));
|
|
251
|
+
}
|
|
252
|
+
console.log(picocolors_1.default.dim("\nRun 'clawup redeploy' or 'clawup destroy && clawup deploy' to apply changes."));
|
|
253
|
+
}
|
|
254
|
+
async function configMigrateCommand(opts) {
|
|
255
|
+
let configName;
|
|
256
|
+
try {
|
|
257
|
+
configName = (0, config_1.resolveConfigName)(opts.config);
|
|
258
|
+
}
|
|
259
|
+
catch (err) {
|
|
260
|
+
console.error(picocolors_1.default.red(err.message));
|
|
261
|
+
process.exit(1);
|
|
262
|
+
}
|
|
263
|
+
const manifest = (0, config_1.loadManifest)(configName);
|
|
264
|
+
if (!manifest) {
|
|
265
|
+
console.error(picocolors_1.default.red(`Config '${configName}' could not be loaded.`));
|
|
266
|
+
process.exit(1);
|
|
267
|
+
}
|
|
268
|
+
const pDir = (0, config_1.pluginsDir)(configName);
|
|
269
|
+
if (!fs.existsSync(pDir)) {
|
|
270
|
+
console.log(picocolors_1.default.green("No plugin config files found — nothing to migrate."));
|
|
271
|
+
return;
|
|
272
|
+
}
|
|
273
|
+
const pluginFiles = fs.readdirSync(pDir).filter((f) => f.endsWith(".yaml"));
|
|
274
|
+
if (pluginFiles.length === 0) {
|
|
275
|
+
console.log(picocolors_1.default.green("No plugin config files found — nothing to migrate."));
|
|
276
|
+
return;
|
|
277
|
+
}
|
|
278
|
+
let migratedCount = 0;
|
|
279
|
+
for (const file of pluginFiles) {
|
|
280
|
+
const pluginName = file.replace(/\.yaml$/, "");
|
|
281
|
+
const pluginConfig = (0, config_1.loadPluginConfig)(configName, pluginName);
|
|
282
|
+
if (!pluginConfig)
|
|
283
|
+
continue;
|
|
284
|
+
for (const agent of manifest.agents) {
|
|
285
|
+
const roleConfig = pluginConfig.agents?.[agent.role];
|
|
286
|
+
if (!roleConfig)
|
|
287
|
+
continue;
|
|
288
|
+
// Initialize inline plugins map if needed
|
|
289
|
+
if (!agent.plugins)
|
|
290
|
+
agent.plugins = {};
|
|
291
|
+
// Merge: existing inline config takes precedence over file-based
|
|
292
|
+
if (!agent.plugins[pluginName]) {
|
|
293
|
+
agent.plugins[pluginName] = roleConfig;
|
|
294
|
+
migratedCount++;
|
|
295
|
+
}
|
|
296
|
+
}
|
|
297
|
+
// Delete the plugin config file
|
|
298
|
+
const filePath = `${pDir}/${file}`;
|
|
299
|
+
fs.unlinkSync(filePath);
|
|
300
|
+
console.log(picocolors_1.default.dim(` Removed ${filePath}`));
|
|
301
|
+
}
|
|
302
|
+
// Clean up empty plugins directory
|
|
303
|
+
try {
|
|
304
|
+
const remaining = fs.readdirSync(pDir);
|
|
305
|
+
if (remaining.length === 0) {
|
|
306
|
+
fs.rmdirSync(pDir);
|
|
307
|
+
// Also remove the stack directory if empty
|
|
308
|
+
const stackDir = `${pDir}/..`;
|
|
309
|
+
const stackRemaining = fs.readdirSync(stackDir);
|
|
310
|
+
if (stackRemaining.length === 0) {
|
|
311
|
+
fs.rmdirSync(stackDir);
|
|
312
|
+
}
|
|
313
|
+
}
|
|
314
|
+
}
|
|
315
|
+
catch {
|
|
316
|
+
// Ignore cleanup errors
|
|
317
|
+
}
|
|
318
|
+
// Save updated manifest
|
|
319
|
+
(0, config_1.saveManifest)(configName, manifest);
|
|
320
|
+
console.log(picocolors_1.default.green(`\n✓ Migrated ${migratedCount} plugin config(s) into ${configName}.yaml`));
|
|
321
|
+
console.log(picocolors_1.default.dim("Plugin config is now inline in the manifest under each agent's 'plugins' field."));
|
|
322
|
+
}
|
|
323
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../commands/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* clawup deploy — Deploy agents with pulumi up
|
|
4
|
+
*
|
|
5
|
+
* This command wraps the platform-agnostic deployTool with the CLI adapter.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.deployCommand = deployCommand;
|
|
9
|
+
const tools_1 = require("../tools");
|
|
10
|
+
async function deployCommand(opts) {
|
|
11
|
+
await (0, tools_1.deployTool)((0, tools_1.createCLIAdapter)(), opts);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=deploy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deploy.js","sourceRoot":"","sources":["../../commands/deploy.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAIH,sCAEC;AAJD,oCAA4E;AAErE,KAAK,UAAU,aAAa,CAAC,IAAmB;IACrD,MAAM,IAAA,kBAAU,EAAC,IAAA,wBAAgB,GAAE,EAAE,IAAI,CAAC,CAAC;AAC7C,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* clawup destroy — Tear down resources with safety confirmations
|
|
3
|
+
*
|
|
4
|
+
* This command wraps the platform-agnostic destroyTool with the CLI adapter.
|
|
5
|
+
*/
|
|
6
|
+
import { type DestroyOptions } from "../tools";
|
|
7
|
+
export declare function destroyCommand(opts: DestroyOptions): Promise<void>;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* clawup destroy — Tear down resources with safety confirmations
|
|
4
|
+
*
|
|
5
|
+
* This command wraps the platform-agnostic destroyTool with the CLI adapter.
|
|
6
|
+
*/
|
|
7
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
|
+
exports.destroyCommand = destroyCommand;
|
|
9
|
+
const tools_1 = require("../tools");
|
|
10
|
+
async function destroyCommand(opts) {
|
|
11
|
+
await (0, tools_1.destroyTool)((0, tools_1.createCLIAdapter)(), opts);
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=destroy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"destroy.js","sourceRoot":"","sources":["../../commands/destroy.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;AAIH,wCAEC;AAJD,oCAA8E;AAEvE,KAAK,UAAU,cAAc,CAAC,IAAoB;IACvD,MAAM,IAAA,mBAAW,EAAC,IAAA,wBAAgB,GAAE,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* clawup init — Interactive setup wizard
|
|
3
|
+
*
|
|
4
|
+
* Identity-driven: every agent must have an identity source.
|
|
5
|
+
* The manifest stores only team composition (which agents to deploy).
|
|
6
|
+
* Plugins, deps, and config come from identities at deploy time.
|
|
7
|
+
*/
|
|
8
|
+
interface InitOptions {
|
|
9
|
+
deploy?: boolean;
|
|
10
|
+
yes?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function initCommand(opts?: InitOptions): Promise<void>;
|
|
13
|
+
export {};
|