cc-claw 0.20.2 → 0.20.3

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 (2) hide show
  1. package/dist/cli.js +23 -4
  2. package/package.json +1 -1
package/dist/cli.js CHANGED
@@ -33,7 +33,7 @@ var VERSION;
33
33
  var init_version = __esm({
34
34
  "src/version.ts"() {
35
35
  "use strict";
36
- VERSION = true ? "0.20.2" : (() => {
36
+ VERSION = true ? "0.20.3" : (() => {
37
37
  try {
38
38
  return JSON.parse(readFileSync(join(process.cwd(), "package.json"), "utf-8")).version ?? "unknown";
39
39
  } catch {
@@ -11045,6 +11045,14 @@ var init_scheduler = __esm({
11045
11045
  updates.push("fallbacks = ?");
11046
11046
  values.push(JSON.stringify(body.fallbacks));
11047
11047
  }
11048
+ if (body.target !== void 0) {
11049
+ updates.push("target = ?");
11050
+ values.push(body.target);
11051
+ }
11052
+ if (body.deliveryMode !== void 0) {
11053
+ updates.push("delivery_mode = ?");
11054
+ values.push(body.deliveryMode);
11055
+ }
11048
11056
  if (updates.length === 0) {
11049
11057
  return jsonResponse(res, { error: "No fields to update" }, 400);
11050
11058
  }
@@ -27106,10 +27114,16 @@ Use the CC-Claw CLI when you need to:
27106
27114
  ## CRITICAL: CC-Claw Is Your API Layer
27107
27115
 
27108
27116
  - **NEVER** use native CLI memory/storage tools (Gemini's \`save_memory\`, Claude's memory, etc.) \u2014 they save to backend-local storage, invisible to other backends
27109
- - **NEVER** modify the SQLite database directly (no INSERT/UPDATE/DELETE SQL)
27117
+ - **NEVER** modify the SQLite database directly (no INSERT/UPDATE/DELETE SQL, no sqlite3 commands)
27118
+ - **NEVER** read or grep CC-Claw source code, dist files, or node_modules to figure out how things work
27119
+ - **NEVER** use curl/API calls to the dashboard HTTP API directly \u2014 use the \`cc-claw\` CLI instead
27110
27120
  - **ALWAYS** use CC-Claw slash commands (\`/remember\`, \`/evolve\`, etc.) or the \`cc-claw\` CLI for state changes
27111
27121
  - Memory MUST be cross-backend persistent \u2014 only CC-Claw's own commands guarantee this
27112
- - If you don't know the right command, ask the user or run \`cc-claw --ai\`
27122
+ - If you don't know the right command, ask the user or run \`cc-claw --help\` or \`cc-claw <command> --help\`
27123
+
27124
+ ## Current Chat Context
27125
+
27126
+ You are running inside CC-Claw. Your current chat ID, group name, and forum topic thread ID (if applicable) are injected into your prompt at the start. Use this info when the user asks you to target "this chat" or "this topic" \u2014 you already know where you are.
27113
27127
 
27114
27128
  ## Telegram Quick Reference
27115
27129
 
@@ -27244,6 +27258,9 @@ cc-claw cron edit 3 --backend gemini --model gemini-3-flash-preview # Change ba
27244
27258
  cc-claw cron edit 3 --description "New task" --timeout 300 # Edit multiple fields
27245
27259
  cc-claw cron create --description "Report" --cron "0 9 * * *" --backend claude --model claude-sonnet-4-6 --fallback codex:gpt-5.4 --fallback gemini:gemini-3-flash-preview # With fallback chain
27246
27260
  cc-claw cron edit 3 --fallback codex:gpt-5.4 --fallback gemini:gemini-3-flash-preview # Set fallbacks
27261
+ cc-claw cron edit 3 --target "-1003682312998:topic:14583" # Deliver to a forum topic (chatId:topic:threadId)
27262
+ cc-claw cron edit 3 --target "-1003682312998" # Deliver to group (General topic)
27263
+ cc-claw cron edit 3 --delivery webhook --target "https://example.com/hook" # Switch to webhook delivery
27247
27264
  cc-claw cron cancel 3 # Cancel job #3
27248
27265
  cc-claw cron pause 3 # Pause job
27249
27266
  cc-claw cron resume 3 # Resume job
@@ -30569,6 +30586,8 @@ async function cronEdit(globalOpts, id, opts) {
30569
30586
  payload.timeout = timeout;
30570
30587
  }
30571
30588
  if (opts.timezone) payload.timezone = opts.timezone;
30589
+ if (opts.target) payload.target = opts.target;
30590
+ if (opts.delivery) payload.deliveryMode = opts.delivery;
30572
30591
  if (opts.fallback?.length) {
30573
30592
  payload.fallbacks = parseFallbacks(opts.fallback);
30574
30593
  }
@@ -33491,7 +33510,7 @@ function registerCronCommands(cmd) {
33491
33510
  const { cronAction: cronAction2 } = await Promise.resolve().then(() => (init_cron2(), cron_exports2));
33492
33511
  await cronAction2(program.opts(), "run", id);
33493
33512
  });
33494
- cmd.command("edit <id>").description("Edit a job (same flags as create)").option("--title <text>", "Short title for job list").option("--description <text>").option("--cron <expr>").option("--at <iso8601>").option("--every <interval>").option("--backend <name>").option("--model <name>").option("--thinking <level>").option("--timeout <seconds>", "Job timeout in seconds (30-3600)").option("--fallback <backend:model>", "Fallback backend:model (repeatable, max 3)", (val, prev) => [...prev, val], []).option("--timezone <tz>").action(async (id, opts) => {
33513
+ cmd.command("edit <id>").description("Edit a job (same flags as create)").option("--title <text>", "Short title for job list").option("--description <text>").option("--cron <expr>").option("--at <iso8601>").option("--every <interval>").option("--backend <name>").option("--model <name>").option("--thinking <level>").option("--timeout <seconds>", "Job timeout in seconds (30-3600)").option("--fallback <backend:model>", "Fallback backend:model (repeatable, max 3)", (val, prev) => [...prev, val], []).option("--timezone <tz>").option("--target <id>", "Delivery target (chat ID, or chatId:topicId for forum topics)").option("--delivery <mode>", "Delivery mode (announce/webhook/none)").action(async (id, opts) => {
33495
33514
  const { cronEdit: cronEdit2 } = await Promise.resolve().then(() => (init_cron2(), cron_exports2));
33496
33515
  await cronEdit2(program.opts(), id, opts);
33497
33516
  });
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cc-claw",
3
- "version": "0.20.2",
3
+ "version": "0.20.3",
4
4
  "description": "CC-Claw: Personal AI assistant on Telegram — multi-backend (Claude, Gemini, Codex, Cursor), sub-agent orchestration, MCP management",
5
5
  "type": "module",
6
6
  "main": "dist/cli.js",