claude-task-worker 0.89.0 → 0.90.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/dist/index.js +117 -158
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -4141,7 +4141,7 @@ var updateDesignMdWorker = createScheduledWorker({
|
|
|
4141
4141
|
init_table();
|
|
4142
4142
|
|
|
4143
4143
|
// src/commands/init.ts
|
|
4144
|
-
import { mkdir as mkdir2, writeFile as writeFile2,
|
|
4144
|
+
import { mkdir as mkdir2, writeFile as writeFile2, access } from "node:fs/promises";
|
|
4145
4145
|
|
|
4146
4146
|
// src/commands/codegraph.ts
|
|
4147
4147
|
import { mkdir, readFile, writeFile } from "node:fs/promises";
|
|
@@ -4229,122 +4229,6 @@ async function ensureCodegraphGitIgnore(logPrefix) {
|
|
|
4229
4229
|
}
|
|
4230
4230
|
}
|
|
4231
4231
|
|
|
4232
|
-
// src/commands/design-md.ts
|
|
4233
|
-
async function loadRunCommand2() {
|
|
4234
|
-
return await Promise.resolve().then(() => (init_run_command(), run_command_exports));
|
|
4235
|
-
}
|
|
4236
|
-
var DESIGN_MD_PACKAGE = "@google/design.md";
|
|
4237
|
-
async function installDesignMdCli(logPrefix) {
|
|
4238
|
-
console.log(`[${logPrefix}] Installing DESIGN.md CLI (npm install -g ${DESIGN_MD_PACKAGE}@latest)...`);
|
|
4239
|
-
try {
|
|
4240
|
-
const { runCommand: runCommand2 } = await loadRunCommand2();
|
|
4241
|
-
await runCommand2("npm", ["install", "-g", `${DESIGN_MD_PACKAGE}@latest`]);
|
|
4242
|
-
console.log(`[${logPrefix}] DESIGN.md CLI installed.`);
|
|
4243
|
-
return true;
|
|
4244
|
-
} catch (err) {
|
|
4245
|
-
console.error(`[${logPrefix}] Failed to install DESIGN.md CLI: ${err.message}`);
|
|
4246
|
-
return false;
|
|
4247
|
-
}
|
|
4248
|
-
}
|
|
4249
|
-
|
|
4250
|
-
// src/commands/pen.ts
|
|
4251
|
-
async function loadRunCommand3() {
|
|
4252
|
-
return await Promise.resolve().then(() => (init_run_command(), run_command_exports));
|
|
4253
|
-
}
|
|
4254
|
-
var PEN_PACKAGE = "@pen.dev/cli";
|
|
4255
|
-
var LEGACY_PEN_PACKAGE = "@pencil.dev/cli";
|
|
4256
|
-
async function installPenCli(logPrefix) {
|
|
4257
|
-
console.log(`[${logPrefix}] Removing legacy Pen CLI (npm uninstall -g ${LEGACY_PEN_PACKAGE})...`);
|
|
4258
|
-
const { runCommand: runCommand2 } = await loadRunCommand3();
|
|
4259
|
-
try {
|
|
4260
|
-
await runCommand2("npm", ["uninstall", "-g", LEGACY_PEN_PACKAGE]);
|
|
4261
|
-
} catch (err) {
|
|
4262
|
-
console.error(`[${logPrefix}] Skipped removing legacy Pen CLI: ${err.message}`);
|
|
4263
|
-
}
|
|
4264
|
-
console.log(`[${logPrefix}] Installing Pen CLI (npm install -g ${PEN_PACKAGE}@latest)...`);
|
|
4265
|
-
try {
|
|
4266
|
-
await runCommand2("npm", ["install", "-g", `${PEN_PACKAGE}@latest`]);
|
|
4267
|
-
console.log(`[${logPrefix}] Pen CLI installed.`);
|
|
4268
|
-
} catch (err) {
|
|
4269
|
-
console.error(`[${logPrefix}] Failed to install Pen CLI: ${err.message}`);
|
|
4270
|
-
return false;
|
|
4271
|
-
}
|
|
4272
|
-
await warnIfPenLoggedOut(logPrefix);
|
|
4273
|
-
return true;
|
|
4274
|
-
}
|
|
4275
|
-
async function warnIfPenLoggedOut(logPrefix) {
|
|
4276
|
-
const { runCommand: runCommand2 } = await loadRunCommand3();
|
|
4277
|
-
try {
|
|
4278
|
-
await runCommand2("pencil", ["status"]);
|
|
4279
|
-
} catch {
|
|
4280
|
-
console.log(
|
|
4281
|
-
`[${logPrefix}] Pen CLI is not authenticated. Run \`pencil login\` (or set PEN_CLI_KEY) before using .pen designs.`
|
|
4282
|
-
);
|
|
4283
|
-
}
|
|
4284
|
-
}
|
|
4285
|
-
|
|
4286
|
-
// src/commands/install.ts
|
|
4287
|
-
init_run_command();
|
|
4288
|
-
var PLUGIN_NAME = "claude-task-worker";
|
|
4289
|
-
var MARKETPLACE_NAME = "claude-task-worker";
|
|
4290
|
-
var MARKETPLACE_SOURCE = "getty104/claude-task-worker";
|
|
4291
|
-
var GLOBAL_NPM_PACKAGES = [PLUGIN_NAME, CODEGRAPH_PACKAGE, DESIGN_MD_PACKAGE, PEN_PACKAGE];
|
|
4292
|
-
async function printGlobalPackageVersions(logPrefix) {
|
|
4293
|
-
console.log(`[${logPrefix}] Installed versions:`);
|
|
4294
|
-
try {
|
|
4295
|
-
await runCommand("npm", ["ls", "-g", "--depth=0", ...GLOBAL_NPM_PACKAGES]);
|
|
4296
|
-
} catch (err) {
|
|
4297
|
-
console.error(`[${logPrefix}] Some packages are missing from the global install: ${err.message}`);
|
|
4298
|
-
}
|
|
4299
|
-
}
|
|
4300
|
-
async function addMarketplace() {
|
|
4301
|
-
console.log(`[install] Adding marketplace: ${MARKETPLACE_SOURCE}...`);
|
|
4302
|
-
try {
|
|
4303
|
-
await runCommand("claude", ["plugin", "marketplace", "add", MARKETPLACE_SOURCE]);
|
|
4304
|
-
console.log("[install] Marketplace added.");
|
|
4305
|
-
} catch (err) {
|
|
4306
|
-
console.error(
|
|
4307
|
-
`[install] Failed to add marketplace (already added is expected and safe to ignore): ${err.message}`
|
|
4308
|
-
);
|
|
4309
|
-
}
|
|
4310
|
-
}
|
|
4311
|
-
async function installPlugin() {
|
|
4312
|
-
console.log(`[install] Installing plugin: ${PLUGIN_NAME}@${MARKETPLACE_NAME}...`);
|
|
4313
|
-
try {
|
|
4314
|
-
await runCommand("claude", ["plugin", "install", `${PLUGIN_NAME}@${MARKETPLACE_NAME}`]);
|
|
4315
|
-
console.log("[install] Plugin installed. Restart your Claude Code session to apply.");
|
|
4316
|
-
return true;
|
|
4317
|
-
} catch (err) {
|
|
4318
|
-
console.error(`[install] Failed to install plugin: ${err.message}`);
|
|
4319
|
-
return false;
|
|
4320
|
-
}
|
|
4321
|
-
}
|
|
4322
|
-
async function installCli() {
|
|
4323
|
-
console.log("[install] Installing claude-task-worker CLI (npm install -g claude-task-worker@latest)...");
|
|
4324
|
-
try {
|
|
4325
|
-
await runCommand("npm", ["install", "-g", "claude-task-worker@latest"]);
|
|
4326
|
-
console.log("[install] claude-task-worker CLI installed.");
|
|
4327
|
-
return true;
|
|
4328
|
-
} catch (err) {
|
|
4329
|
-
console.error(`[install] Failed to install claude-task-worker CLI: ${err.message}`);
|
|
4330
|
-
return false;
|
|
4331
|
-
}
|
|
4332
|
-
}
|
|
4333
|
-
async function install() {
|
|
4334
|
-
console.log("[install] Starting install...");
|
|
4335
|
-
await addMarketplace();
|
|
4336
|
-
const pluginOk = await installPlugin();
|
|
4337
|
-
const cliOk = await installCli();
|
|
4338
|
-
const codegraphOk = await installCodegraphCli("install");
|
|
4339
|
-
const designMdOk = await installDesignMdCli("install");
|
|
4340
|
-
const penOk = await installPenCli("install");
|
|
4341
|
-
await printGlobalPackageVersions("install");
|
|
4342
|
-
if (!pluginOk || !cliOk || !codegraphOk || !designMdOk || !penOk) {
|
|
4343
|
-
process.exitCode = 1;
|
|
4344
|
-
}
|
|
4345
|
-
console.log("[install] Done.");
|
|
4346
|
-
}
|
|
4347
|
-
|
|
4348
4232
|
// src/commands/init.ts
|
|
4349
4233
|
var LABELS = [
|
|
4350
4234
|
{ name: "cc-need-human-check", color: "eb1700" },
|
|
@@ -4444,45 +4328,6 @@ async function createConfig(force) {
|
|
|
4444
4328
|
const result = await writeFileWithMode(CONFIG_PATH, JSON.stringify(initialConfig, null, 2), force);
|
|
4445
4329
|
logWriteResult(result, CONFIG_PATH);
|
|
4446
4330
|
}
|
|
4447
|
-
var PROJECT_SETTINGS_PATH = ".claude/settings.json";
|
|
4448
|
-
function mergePluginSettings(current) {
|
|
4449
|
-
const marketplaces = { ...current.extraKnownMarketplaces ?? {} };
|
|
4450
|
-
marketplaces[MARKETPLACE_NAME] = { source: { source: "github", repo: MARKETPLACE_SOURCE } };
|
|
4451
|
-
const plugins = { ...current.enabledPlugins ?? {} };
|
|
4452
|
-
plugins[`${PLUGIN_NAME}@${MARKETPLACE_NAME}`] = true;
|
|
4453
|
-
return { ...current, extraKnownMarketplaces: marketplaces, enabledPlugins: plugins };
|
|
4454
|
-
}
|
|
4455
|
-
async function registerPluginInSettings() {
|
|
4456
|
-
let current = {};
|
|
4457
|
-
try {
|
|
4458
|
-
const raw = await readFile2(PROJECT_SETTINGS_PATH, "utf-8");
|
|
4459
|
-
const parsed = JSON.parse(raw);
|
|
4460
|
-
if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) {
|
|
4461
|
-
console.log(`[init] Skipped: ${PROJECT_SETTINGS_PATH} is not a JSON object`);
|
|
4462
|
-
return;
|
|
4463
|
-
}
|
|
4464
|
-
current = parsed;
|
|
4465
|
-
} catch (err) {
|
|
4466
|
-
if (err.code !== "ENOENT") {
|
|
4467
|
-
console.log(`[init] Skipped: failed to read ${PROJECT_SETTINGS_PATH}: ${err.message}`);
|
|
4468
|
-
return;
|
|
4469
|
-
}
|
|
4470
|
-
}
|
|
4471
|
-
const merged = mergePluginSettings(current);
|
|
4472
|
-
if (JSON.stringify(merged) === JSON.stringify(current)) {
|
|
4473
|
-
console.log(`[init] Already registered: ${PLUGIN_NAME}@${MARKETPLACE_NAME} in ${PROJECT_SETTINGS_PATH}`);
|
|
4474
|
-
return;
|
|
4475
|
-
}
|
|
4476
|
-
try {
|
|
4477
|
-
await mkdir2(".claude", { recursive: true });
|
|
4478
|
-
await writeFile2(PROJECT_SETTINGS_PATH, `${JSON.stringify(merged, null, 2)}
|
|
4479
|
-
`, "utf-8");
|
|
4480
|
-
} catch (err) {
|
|
4481
|
-
console.log(`[init] Skipped: failed to write ${PROJECT_SETTINGS_PATH}: ${err.message}`);
|
|
4482
|
-
return;
|
|
4483
|
-
}
|
|
4484
|
-
console.log(`[init] Registered ${PLUGIN_NAME}@${MARKETPLACE_NAME} in ${PROJECT_SETTINGS_PATH}`);
|
|
4485
|
-
}
|
|
4486
4331
|
async function init(options = {}) {
|
|
4487
4332
|
const force = options.force ?? false;
|
|
4488
4333
|
console.log(`[init] Creating labels...${force ? " (force mode)" : ""}`);
|
|
@@ -4502,8 +4347,6 @@ async function init(options = {}) {
|
|
|
4502
4347
|
await mkdir2(".github/workflows", { recursive: true });
|
|
4503
4348
|
const workflowPath = ".github/workflows/assign-creator-on-cc-triage-scope.yml";
|
|
4504
4349
|
logWriteResult(await writeFileWithMode(workflowPath, ASSIGN_CREATOR_WORKFLOW, force), workflowPath);
|
|
4505
|
-
console.log("[init] Registering the plugin in project settings...");
|
|
4506
|
-
await registerPluginInSettings();
|
|
4507
4350
|
console.log("[init] Creating config file...");
|
|
4508
4351
|
await createConfig(force);
|
|
4509
4352
|
console.log("[init] Setting up CodeGraph...");
|
|
@@ -4512,6 +4355,122 @@ async function init(options = {}) {
|
|
|
4512
4355
|
console.log("[init] Done.");
|
|
4513
4356
|
}
|
|
4514
4357
|
|
|
4358
|
+
// src/commands/design-md.ts
|
|
4359
|
+
async function loadRunCommand2() {
|
|
4360
|
+
return await Promise.resolve().then(() => (init_run_command(), run_command_exports));
|
|
4361
|
+
}
|
|
4362
|
+
var DESIGN_MD_PACKAGE = "@google/design.md";
|
|
4363
|
+
async function installDesignMdCli(logPrefix) {
|
|
4364
|
+
console.log(`[${logPrefix}] Installing DESIGN.md CLI (npm install -g ${DESIGN_MD_PACKAGE}@latest)...`);
|
|
4365
|
+
try {
|
|
4366
|
+
const { runCommand: runCommand2 } = await loadRunCommand2();
|
|
4367
|
+
await runCommand2("npm", ["install", "-g", `${DESIGN_MD_PACKAGE}@latest`]);
|
|
4368
|
+
console.log(`[${logPrefix}] DESIGN.md CLI installed.`);
|
|
4369
|
+
return true;
|
|
4370
|
+
} catch (err) {
|
|
4371
|
+
console.error(`[${logPrefix}] Failed to install DESIGN.md CLI: ${err.message}`);
|
|
4372
|
+
return false;
|
|
4373
|
+
}
|
|
4374
|
+
}
|
|
4375
|
+
|
|
4376
|
+
// src/commands/pen.ts
|
|
4377
|
+
async function loadRunCommand3() {
|
|
4378
|
+
return await Promise.resolve().then(() => (init_run_command(), run_command_exports));
|
|
4379
|
+
}
|
|
4380
|
+
var PEN_PACKAGE = "@pen.dev/cli";
|
|
4381
|
+
var LEGACY_PEN_PACKAGE = "@pencil.dev/cli";
|
|
4382
|
+
async function installPenCli(logPrefix) {
|
|
4383
|
+
console.log(`[${logPrefix}] Removing legacy Pen CLI (npm uninstall -g ${LEGACY_PEN_PACKAGE})...`);
|
|
4384
|
+
const { runCommand: runCommand2 } = await loadRunCommand3();
|
|
4385
|
+
try {
|
|
4386
|
+
await runCommand2("npm", ["uninstall", "-g", LEGACY_PEN_PACKAGE]);
|
|
4387
|
+
} catch (err) {
|
|
4388
|
+
console.error(`[${logPrefix}] Skipped removing legacy Pen CLI: ${err.message}`);
|
|
4389
|
+
}
|
|
4390
|
+
console.log(`[${logPrefix}] Installing Pen CLI (npm install -g ${PEN_PACKAGE}@latest)...`);
|
|
4391
|
+
try {
|
|
4392
|
+
await runCommand2("npm", ["install", "-g", `${PEN_PACKAGE}@latest`]);
|
|
4393
|
+
console.log(`[${logPrefix}] Pen CLI installed.`);
|
|
4394
|
+
} catch (err) {
|
|
4395
|
+
console.error(`[${logPrefix}] Failed to install Pen CLI: ${err.message}`);
|
|
4396
|
+
return false;
|
|
4397
|
+
}
|
|
4398
|
+
await warnIfPenLoggedOut(logPrefix);
|
|
4399
|
+
return true;
|
|
4400
|
+
}
|
|
4401
|
+
async function warnIfPenLoggedOut(logPrefix) {
|
|
4402
|
+
const { runCommand: runCommand2 } = await loadRunCommand3();
|
|
4403
|
+
try {
|
|
4404
|
+
await runCommand2("pencil", ["status"]);
|
|
4405
|
+
} catch {
|
|
4406
|
+
console.log(
|
|
4407
|
+
`[${logPrefix}] Pen CLI is not authenticated. Run \`pencil login\` (or set PEN_CLI_KEY) before using .pen designs.`
|
|
4408
|
+
);
|
|
4409
|
+
}
|
|
4410
|
+
}
|
|
4411
|
+
|
|
4412
|
+
// src/commands/install.ts
|
|
4413
|
+
init_run_command();
|
|
4414
|
+
var PLUGIN_NAME = "claude-task-worker";
|
|
4415
|
+
var MARKETPLACE_NAME = "claude-task-worker";
|
|
4416
|
+
var MARKETPLACE_SOURCE = "getty104/claude-task-worker";
|
|
4417
|
+
var GLOBAL_NPM_PACKAGES = [PLUGIN_NAME, CODEGRAPH_PACKAGE, DESIGN_MD_PACKAGE, PEN_PACKAGE];
|
|
4418
|
+
async function printGlobalPackageVersions(logPrefix) {
|
|
4419
|
+
console.log(`[${logPrefix}] Installed versions:`);
|
|
4420
|
+
try {
|
|
4421
|
+
await runCommand("npm", ["ls", "-g", "--depth=0", ...GLOBAL_NPM_PACKAGES]);
|
|
4422
|
+
} catch (err) {
|
|
4423
|
+
console.error(`[${logPrefix}] Some packages are missing from the global install: ${err.message}`);
|
|
4424
|
+
}
|
|
4425
|
+
}
|
|
4426
|
+
async function addMarketplace() {
|
|
4427
|
+
console.log(`[install] Adding marketplace: ${MARKETPLACE_SOURCE}...`);
|
|
4428
|
+
try {
|
|
4429
|
+
await runCommand("claude", ["plugin", "marketplace", "add", MARKETPLACE_SOURCE]);
|
|
4430
|
+
console.log("[install] Marketplace added.");
|
|
4431
|
+
} catch (err) {
|
|
4432
|
+
console.error(
|
|
4433
|
+
`[install] Failed to add marketplace (already added is expected and safe to ignore): ${err.message}`
|
|
4434
|
+
);
|
|
4435
|
+
}
|
|
4436
|
+
}
|
|
4437
|
+
async function installPlugin() {
|
|
4438
|
+
console.log(`[install] Installing plugin: ${PLUGIN_NAME}@${MARKETPLACE_NAME}...`);
|
|
4439
|
+
try {
|
|
4440
|
+
await runCommand("claude", ["plugin", "install", `${PLUGIN_NAME}@${MARKETPLACE_NAME}`]);
|
|
4441
|
+
console.log("[install] Plugin installed. Restart your Claude Code session to apply.");
|
|
4442
|
+
return true;
|
|
4443
|
+
} catch (err) {
|
|
4444
|
+
console.error(`[install] Failed to install plugin: ${err.message}`);
|
|
4445
|
+
return false;
|
|
4446
|
+
}
|
|
4447
|
+
}
|
|
4448
|
+
async function installCli() {
|
|
4449
|
+
console.log("[install] Installing claude-task-worker CLI (npm install -g claude-task-worker@latest)...");
|
|
4450
|
+
try {
|
|
4451
|
+
await runCommand("npm", ["install", "-g", "claude-task-worker@latest"]);
|
|
4452
|
+
console.log("[install] claude-task-worker CLI installed.");
|
|
4453
|
+
return true;
|
|
4454
|
+
} catch (err) {
|
|
4455
|
+
console.error(`[install] Failed to install claude-task-worker CLI: ${err.message}`);
|
|
4456
|
+
return false;
|
|
4457
|
+
}
|
|
4458
|
+
}
|
|
4459
|
+
async function install() {
|
|
4460
|
+
console.log("[install] Starting install...");
|
|
4461
|
+
await addMarketplace();
|
|
4462
|
+
const pluginOk = await installPlugin();
|
|
4463
|
+
const cliOk = await installCli();
|
|
4464
|
+
const codegraphOk = await installCodegraphCli("install");
|
|
4465
|
+
const designMdOk = await installDesignMdCli("install");
|
|
4466
|
+
const penOk = await installPenCli("install");
|
|
4467
|
+
await printGlobalPackageVersions("install");
|
|
4468
|
+
if (!pluginOk || !cliOk || !codegraphOk || !designMdOk || !penOk) {
|
|
4469
|
+
process.exitCode = 1;
|
|
4470
|
+
}
|
|
4471
|
+
console.log("[install] Done.");
|
|
4472
|
+
}
|
|
4473
|
+
|
|
4515
4474
|
// src/commands/update.ts
|
|
4516
4475
|
init_run_command();
|
|
4517
4476
|
var PLUGIN_NAME2 = "claude-task-worker";
|