@nordsym/apiclaw 2.6.3 → 2.6.5

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/cli/index.js CHANGED
@@ -12,6 +12,8 @@ import { restoreCommand } from './commands/restore.js';
12
12
  import { uninstallCommand } from './commands/uninstall.js';
13
13
  import { loginCommand } from './commands/login.js';
14
14
  import { demoCommand } from './commands/demo.js';
15
+ import { missionCommand } from './commands/mission.js';
16
+ import { discoverCommand, callCommand, detailsCommand, balanceCommand } from './commands/direct.js';
15
17
  import { generateScript } from '../enterprise/script-generator.js';
16
18
  const VERSION = '1.0.0';
17
19
  const program = new Command();
@@ -125,6 +127,50 @@ program
125
127
  .option('-c, --client <client>', 'Target specific client (claude-desktop, claude-code)')
126
128
  .option('--dry-run', 'Show what would be done without making changes')
127
129
  .action(uninstallCommand);
130
+ // Direct CLI parity with the MCP tool surface.
131
+ program
132
+ .command('discover <query>')
133
+ .description('Search APIClaw\'s catalog of 26,000+ APIs')
134
+ .option('-c, --category <cat>', 'Filter by category')
135
+ .option('--callable', 'Only return APIs APIClaw can execute')
136
+ .option('-l, --limit <n>', 'Max results', (v) => parseInt(v, 10))
137
+ .action(discoverCommand);
138
+ program
139
+ .command('call <api>')
140
+ .description('Execute a callable API through APIClaw\'s gateway')
141
+ .option('-p, --path <path>', 'API path (default /)')
142
+ .option('-m, --method <method>', 'HTTP method (GET/POST/PUT/PATCH/DELETE)')
143
+ .option('--params <json>', 'Query string parameters as JSON')
144
+ .option('-d, --body <json>', 'Request body as JSON')
145
+ .action(callCommand);
146
+ program
147
+ .command('details <api>')
148
+ .description('Get full specs, pricing, auth for a specific API')
149
+ .action(detailsCommand);
150
+ program
151
+ .command('balance')
152
+ .description('Workspace balance, tier, remaining calls')
153
+ .action(balanceCommand);
154
+ // Control Plane — Missions
155
+ //
156
+ // Run an orchestration on APIClaw's runtime. Subcommands:
157
+ // apiclaw mission templates # show registered templates
158
+ // apiclaw mission start <template> [--key val] # queue a mission
159
+ // apiclaw mission watch <id> # tail events live
160
+ // apiclaw mission status <id> # final state + result
161
+ // apiclaw mission list # recent missions
162
+ program
163
+ .command('mission [subcommand] [args...]')
164
+ .description('Control Plane: run, watch, and inspect missions on APIClaw\'s runtime')
165
+ .allowUnknownOption(true)
166
+ .action(async (subcommand, args) => {
167
+ const argv = [];
168
+ if (subcommand)
169
+ argv.push(subcommand);
170
+ if (Array.isArray(args))
171
+ argv.push(...args);
172
+ await missionCommand(argv);
173
+ });
128
174
  // Parse and execute
129
175
  program.parse();
130
176
  // Show help if no command provided
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AACA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAGnE,MAAM,OAAO,GAAG,OAAO,CAAC;AAExB,MAAM,OAAO,GAAG,IAAI,OAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,SAAS,CAAC;KACf,WAAW,CAAC,iFAAiF,CAAC;KAC9F,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,mCAAmC;AACnC,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,mCAAmC,CAAC;KAChD,MAAM,CAAC,uBAAuB,EAAE,4EAA4E,CAAC;KAC7G,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;KACpD,MAAM,CAAC,sBAAsB,EAAE,+BAA+B,CAAC;KAC/D,MAAM,CAAC,WAAW,EAAE,+CAA+C,CAAC;KACpE,MAAM,CAAC,aAAa,EAAE,0CAA0C,CAAC;KACjE,MAAM,CAAC,UAAU,EAAE,0BAA0B,CAAC;KAC9C,MAAM,CAAC,OAAO,EAAE,gCAAgC,CAAC;KACjD,MAAM,CAAC,eAAe,EAAE,gBAAgB,CAAC;KACzC,MAAM,CAAC,cAAc,EAAE,uCAAuC,CAAC;KAC/D,MAAM,CAAC,iBAAiB,EAAE,mCAAmC,CAAC;KAC9D,MAAM,CAAC,sBAAsB,EAAE,iDAAiD,CAAC;KACjF,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,oCAAoC;IACpC,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,MAAM,CAAC;QAChD,MAAM,MAAM,GAAG,cAAc,CAAC,UAAU,EAAE;YACxC,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,OAAO,EAAE,OAAO,CAAC,OAAO;SACzB,CAAC,CAAC;QAEH,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnB,aAAa,CAAC,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAC7C,OAAO,CAAC,GAAG,CAAC,qCAAqC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACnE,OAAO,CAAC,GAAG,CAAC,WAAW,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC1C,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACxB,IAAI,MAAM,CAAC,QAAQ,KAAK,MAAM,EAAE,CAAC;gBAC/B,OAAO,CAAC,GAAG,CAAC,cAAc,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5C,OAAO,CAAC,GAAG,CAAC,OAAO,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YACvC,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,8CAA8C,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;YAC9E,CAAC;YACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAClB,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC7B,CAAC;QACD,OAAO;IACT,CAAC;IAED,eAAe;IACf,MAAM,YAAY,CAAC,OAAO,CAAC,CAAC;AAC9B,CAAC,CAAC,CAAC;AAEL,oDAAoD;AACpD,OAAO;KACJ,OAAO,CAAC,aAAa,CAAC;KACtB,WAAW,CAAC,+DAA+D,CAAC;KAC5E,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,CAAC;KACvF,MAAM,CAAC,WAAW,EAAE,+CAA+C,CAAC;KACpE,MAAM,CAAC,iBAAiB,CAAC,CAAC;AAE7B,gCAAgC;AAChC,OAAO;KACJ,OAAO,CAAC,QAAQ,CAAC;KACjB,WAAW,CAAC,yCAAyC,CAAC;KACtD,MAAM,CAAC,sBAAsB,EAAE,yCAAyC,CAAC;KACzE,MAAM,CAAC,QAAQ,EAAE,gBAAgB,CAAC;KAClC,MAAM,CAAC,aAAa,CAAC,CAAC;AAEzB,yCAAyC;AACzC,OAAO;KACJ,OAAO,CAAC,SAAS,CAAC;KAClB,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;KACzD,MAAM,CAAC,YAAY,EAAE,wBAAwB,CAAC;KAC9C,MAAM,CAAC,qBAAqB,EAAE,iCAAiC,CAAC;KAChE,MAAM,CAAC,WAAW,EAAE,gDAAgD,CAAC;KACrE,MAAM,CAAC,cAAc,CAAC,CAAC;AAE1B,qCAAqC;AACrC,OAAO;KACJ,OAAO,CAAC,WAAW,CAAC;KACpB,WAAW,CAAC,4CAA4C,CAAC;KACzD,MAAM,CAAC,uBAAuB,EAAE,wBAAwB,CAAC;KACzD,MAAM,CAAC,OAAO,EAAE,yBAAyB,CAAC;KAC1C,MAAM,CAAC,sBAAsB,EAAE,0CAA0C,CAAC;KAC1E,MAAM,CAAC,aAAa,EAAE,sBAAsB,CAAC;KAC7C,MAAM,CAAC,WAAW,EAAE,gDAAgD,CAAC;KACrE,MAAM,CAAC,aAAa,EAAE,+BAA+B,CAAC;KACtD,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,0DAA0D;AAC1D,OAAO;KACJ,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,gEAAgE,CAAC;KAC7E,MAAM,CAAC,qBAAqB,EAAE,sBAAsB,CAAC;KACrD,MAAM,CAAC,aAAa,EAAE,0CAA0C,CAAC;KACjE,MAAM,CAAC,WAAW,EAAE,2BAA2B,CAAC;KAChD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAClF,IAAI,MAAM,IAAI,OAAO,CAAC,IAAI,KAAK,KAAK,EAAE,CAAC;QACrC,MAAM,WAAW,EAAE,CAAC;IACtB,CAAC;AACH,CAAC,CAAC,CAAC;AAEL,sDAAsD;AACtD,OAAO;KACJ,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,8CAA8C,CAAC;KAC3D,MAAM,CAAC,KAAK,IAAI,EAAE;IACjB,MAAM,WAAW,EAAE,CAAC;AACtB,CAAC,CAAC,CAAC;AAEL,+EAA+E;AAC/E,OAAO;KACJ,OAAO,CAAC,eAAe,CAAC;KACxB,WAAW,CAAC,8DAA8D,CAAC;KAC3E,MAAM,CAAC,uBAAuB,EAAE,sDAAsD,CAAC;KACvF,MAAM,CAAC,WAAW,EAAE,gDAAgD,CAAC;KACrE,MAAM,CAAC,gBAAgB,CAAC,CAAC;AAE5B,oBAAoB;AACpB,OAAO,CAAC,KAAK,EAAE,CAAC;AAEhB,mCAAmC;AACnC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAClC,OAAO,CAAC,UAAU,EAAE,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":"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"}
package/dist/cli.js CHANGED
@@ -60,10 +60,10 @@ async function validateSession() {
60
60
  }
61
61
  }
62
62
  async function registerOwner(email) {
63
- info(`Sending verification link to ${email}...`);
63
+ info(`Sending magic link to ${email}...`);
64
64
  try {
65
65
  const fingerprint = getMachineFingerprint();
66
- // Use HTTP endpoint for workspace verification
66
+ // Use HTTP endpoint for magic link
67
67
  const response = await fetch(`${CONVEX_URL.replace('.cloud', '.site')}/workspace/magic-link`, {
68
68
  method: 'POST',
69
69
  headers: { 'Content-Type': 'application/json' },
@@ -187,7 +187,7 @@ function showHelp() {
187
187
  ${colors.bright}🦞 APIClaw CLI${colors.reset}
188
188
 
189
189
  ${colors.cyan}Commands:${colors.reset}
190
- register <email> Send verification link to authenticate
190
+ register <email> Send magic link to authenticate
191
191
  status Check authentication status
192
192
  discover <query> Search for APIs by capability
193
193
  list Show Direct Call providers
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -284,7 +284,24 @@ async function validateSession() {
284
284
  return true;
285
285
  }
286
286
  catch (error) {
287
- console.error('[APIClaw] Error validating session:', error);
287
+ // Convex unreachable at startup (cold boot, network blip, etc.).
288
+ // Trust the local session file rather than wiping context entirely.
289
+ // The token will be validated on the first real API call anyway.
290
+ console.error('[APIClaw] Convex unreachable during startup validation — using cached session:', error.message);
291
+ const cached = readSession();
292
+ if (cached?.sessionToken && cached?.workspaceId && cached?.email) {
293
+ workspaceContext = {
294
+ sessionToken: cached.sessionToken,
295
+ workspaceId: cached.workspaceId,
296
+ email: cached.email,
297
+ tier: 'founder', // conservative fallback — overwritten on next live query
298
+ usageRemaining: 999999,
299
+ usageCount: 0,
300
+ status: 'active',
301
+ };
302
+ console.error(`[APIClaw] ✓ Restored session from cache for ${cached.email}`);
303
+ return true;
304
+ }
288
305
  return false;
289
306
  }
290
307
  }
@@ -319,17 +336,35 @@ const UNREGISTERED_CALL_LIMIT = 5;
319
336
  function checkWorkspaceAccess(providerId) {
320
337
  // All API calls require registration now
321
338
  if (!workspaceContext) {
322
- return {
323
- allowed: false,
324
- error: JSON.stringify({
325
- status: 'registration_required',
326
- error: 'Registration required to call APIs.',
327
- message: 'Ask the user for their email, then call register_owner({ email: "..." }). A 6-digit code will be sent. Then call verify_code with the code.',
328
- action: 'register_owner',
329
- free_tier: '50 API calls/month -- completely free.',
330
- }, null, 2),
331
- isAnonymous: true,
332
- };
339
+ // Before giving up, try to restore from the local session file.
340
+ // This handles the case where validateSession() failed at startup
341
+ // (network blip, Convex cold boot) but a valid file still exists.
342
+ const cached = readSession();
343
+ if (cached?.sessionToken && cached?.workspaceId && cached?.email) {
344
+ workspaceContext = {
345
+ sessionToken: cached.sessionToken,
346
+ workspaceId: cached.workspaceId,
347
+ email: cached.email,
348
+ tier: 'founder',
349
+ usageRemaining: 999999,
350
+ usageCount: 0,
351
+ status: 'active',
352
+ };
353
+ console.error(`[APIClaw] ✓ Lazy-restored session for ${cached.email}`);
354
+ }
355
+ else {
356
+ return {
357
+ allowed: false,
358
+ error: JSON.stringify({
359
+ status: 'registration_required',
360
+ error: 'Registration required to call APIs.',
361
+ message: 'Ask the user for their email, then call register_owner({ email: "..." }). A 6-digit code will be sent. Then call verify_code with the code.',
362
+ action: 'register_owner',
363
+ free_tier: '50 API calls/month -- completely free.',
364
+ }, null, 2),
365
+ isAnonymous: true,
366
+ };
367
+ }
333
368
  }
334
369
  if (workspaceContext.status !== 'active') {
335
370
  return {
@@ -337,16 +372,17 @@ function checkWorkspaceAccess(providerId) {
337
372
  error: `Workspace status: ${workspaceContext.status}. Please verify your email.`
338
373
  };
339
374
  }
340
- // Unregistered workspaces (auto-provisioned, no email) get limited calls then must register
341
- if (!workspaceContext.email && workspaceContext.usageCount >= UNREGISTERED_CALL_LIMIT) {
375
+ // No email = no calls. Full stop.
376
+ if (!workspaceContext.email) {
342
377
  return {
343
378
  allowed: false,
344
379
  error: JSON.stringify({
345
- success: false,
346
- error: `Register to continue. You've used ${UNREGISTERED_CALL_LIMIT} free calls.`,
347
- hint: "Run register_owner with your email to unlock 50 calls/month.",
348
- action: "register_owner"
349
- }, null, 2)
380
+ status: 'registration_required',
381
+ error: 'An account is required to use APIClaw.',
382
+ message: 'Call register_owner({ email: "you@example.com" }) to sign up. Free tier: 25 calls/month.',
383
+ action: 'register_owner',
384
+ }, null, 2),
385
+ isAnonymous: true,
350
386
  };
351
387
  }
352
388
  if (workspaceContext.usageRemaining === 0) {
@@ -518,7 +554,7 @@ const SUGGESTED_CALL_RULES = [
518
554
  provider: 'apilayer',
519
555
  action: 'fixer_latest',
520
556
  description: 'Live FX rates across 170+ currencies via APILayer Fixer.',
521
- example_params: { base: 'USD', symbols: 'EUR' },
557
+ example_params: { symbols: 'EUR,SEK' },
522
558
  intent: 'currency exchange / FX rates',
523
559
  },
524
560
  },
@@ -562,16 +598,6 @@ const SUGGESTED_CALL_RULES = [
562
598
  intent: 'email verification',
563
599
  },
564
600
  },
565
- {
566
- match: /(verify[\s-]?(phone|number)|phone.*valid)/i,
567
- suggestion: {
568
- provider: 'apilayer',
569
- action: 'number_verification',
570
- description: 'Validate phone numbers and identify carriers via APILayer.',
571
- example_params: { number: '+14158586273' },
572
- intent: 'phone verification',
573
- },
574
- },
575
601
  {
576
602
  match: /(\bvat\b|tax id|vies)/i,
577
603
  suggestion: {
@@ -582,16 +608,6 @@ const SUGGESTED_CALL_RULES = [
582
608
  intent: 'VAT validation',
583
609
  },
584
610
  },
585
- {
586
- match: /(\bnews\b|headlines|articles)/i,
587
- suggestion: {
588
- provider: 'apilayer',
589
- action: 'world_news',
590
- description: 'Latest world news from thousands of sources via APILayer.',
591
- example_params: { language: 'en', categories: 'business,technology' },
592
- intent: 'news / headlines',
593
- },
594
- },
595
611
  {
596
612
  match: /(screenshot|capture.*website|render.*page)/i,
597
613
  suggestion: {
@@ -1131,6 +1147,53 @@ Example chain:
1131
1147
  }
1132
1148
  },
1133
1149
  // ============================================
1150
+ // CONTROL PLANE — MISSIONS
1151
+ // ============================================
1152
+ {
1153
+ name: 'start_mission',
1154
+ description: 'Start a Control Plane mission — a structured, observable orchestration that runs on APIClaw\'s runtime. Use this when the user wants to spin up a multi-step task (e.g. "generate a PRD") rather than a single API call. Returns a missionId you can poll with mission_status. Templates: genprd.',
1155
+ inputSchema: {
1156
+ type: 'object',
1157
+ properties: {
1158
+ template: {
1159
+ type: 'string',
1160
+ description: 'Template id. Currently: genprd.',
1161
+ },
1162
+ params: {
1163
+ type: 'object',
1164
+ description: 'Template-specific parameters (see list_mission_templates for the schema).',
1165
+ },
1166
+ },
1167
+ required: ['template'],
1168
+ },
1169
+ },
1170
+ {
1171
+ name: 'list_mission_templates',
1172
+ description: 'List the Control Plane mission templates available to your agent and the parameters each one accepts.',
1173
+ inputSchema: { type: 'object', properties: {} },
1174
+ },
1175
+ {
1176
+ name: 'mission_status',
1177
+ description: 'Check status, audit events, cost, and final result for a mission started via start_mission.',
1178
+ inputSchema: {
1179
+ type: 'object',
1180
+ properties: {
1181
+ mission_id: { type: 'string', description: 'Mission id from start_mission' },
1182
+ },
1183
+ required: ['mission_id'],
1184
+ },
1185
+ },
1186
+ {
1187
+ name: 'list_missions',
1188
+ description: 'List recent missions in the current workspace (most recent first).',
1189
+ inputSchema: {
1190
+ type: 'object',
1191
+ properties: {
1192
+ limit: { type: 'number', description: 'Max rows (default 20, max 200)' },
1193
+ },
1194
+ },
1195
+ },
1196
+ // ============================================
1134
1197
  // CHAIN MANAGEMENT TOOLS
1135
1198
  // ============================================
1136
1199
  {
@@ -1213,7 +1276,7 @@ MANAGED PROVIDERS:
1213
1276
  OpenAI, Anthropic, xAI/Grok, Groq, Mistral, OpenRouter, Together AI,
1214
1277
  Replicate, ElevenLabs, Deepgram, AssemblyAI, Brave Search, Firecrawl,
1215
1278
  Serper, E2B, Stability AI, Cohere, Voyage AI, GitHub,
1216
- APILayer (27 sub-APIs)
1279
+ APILayer (22 callable sub-APIs)
1217
1280
 
1218
1281
  ${CANON_STATS.discoverable.toLocaleString()} DISCOVERABLE | ${CANON_STATS.callable.toLocaleString()} CALLABLE (empirically verified, ${CANON_STATS.managed_directcallconfigs} managed) | Free tier: 25 calls / month, email signup required
1219
1282
 
@@ -1224,6 +1287,9 @@ Docs: https://apiclaw.cloud
1224
1287
  };
1225
1288
  }
1226
1289
  case 'discover_apis': {
1290
+ const _discoverGate = enforceOwner("mcp:discover_apis");
1291
+ if (!_discoverGate.ok)
1292
+ return _discoverGate.response;
1227
1293
  const query = args?.query;
1228
1294
  const category = args?.category;
1229
1295
  const requestedMax = args?.max_results || 5;
@@ -1248,7 +1314,7 @@ Docs: https://apiclaw.cloud
1248
1314
  const responseTimeMs = Date.now() - startTime;
1249
1315
  trackSearch(query, results.length, responseTimeMs);
1250
1316
  // Suggested-call enrichment.
1251
- // When a query matches a known managed sub-action (APILayer's 27-API
1317
+ // When a query matches a known managed sub-action (APILayer's 22-callable
1252
1318
  // wrapper has the most non-obvious slugs), surface the exact call
1253
1319
  // shape so the agent doesn't have to fish for it via list_connected.
1254
1320
  const suggestedCalls = buildSuggestedCalls(query);
@@ -1726,25 +1792,21 @@ Docs: https://apiclaw.cloud
1726
1792
  }]
1727
1793
  };
1728
1794
  }
1729
- // Check workspace access (skip for free/open APIs)
1730
- const isFreeAPI = isOpenAPI(provider);
1731
- if (!isFreeAPI) {
1732
- const access = checkWorkspaceAccess(provider);
1733
- if (!access.allowed) {
1734
- return {
1735
- content: [{
1736
- type: 'text',
1737
- text: JSON.stringify({
1738
- status: 'error',
1739
- error: access.error,
1740
- hint: access.isAnonymous
1741
- ? 'Rate limit reached. Use register_owner to authenticate for higher limits.'
1742
- : 'Use register_owner to authenticate your workspace.',
1743
- }, null, 2)
1744
- }],
1745
- isError: true
1746
- };
1747
- }
1795
+ // All calls require a verified account — no free/open bypass.
1796
+ const isFreeAPI = isOpenAPI(provider); // kept for routing logic below
1797
+ const access = checkWorkspaceAccess(provider);
1798
+ if (!access.allowed) {
1799
+ return {
1800
+ content: [{
1801
+ type: 'text',
1802
+ text: JSON.stringify({
1803
+ status: 'error',
1804
+ error: access.error,
1805
+ hint: 'Use register_owner to authenticate your workspace.',
1806
+ }, null, 2)
1807
+ }],
1808
+ isError: true
1809
+ };
1748
1810
  }
1749
1811
  const startTime = Date.now();
1750
1812
  let result;
@@ -2758,6 +2820,113 @@ Docs: https://apiclaw.cloud
2758
2820
  };
2759
2821
  }
2760
2822
  // ============================================
2823
+ // CONTROL PLANE — MISSIONS
2824
+ // ============================================
2825
+ case 'list_mission_templates': {
2826
+ const url = process.env.APICLAW_GATEWAY_URL ||
2827
+ (CONVEX_URL.includes('convex.cloud')
2828
+ ? CONVEX_URL.replace('.convex.cloud', '.convex.site')
2829
+ : 'https://adventurous-avocet-799.convex.site');
2830
+ const res = await fetch(`${url}/v1/missions/templates`);
2831
+ const data = await res.json();
2832
+ return { content: [{ type: 'text', text: JSON.stringify(data, null, 2) }] };
2833
+ }
2834
+ case 'start_mission': {
2835
+ const template = args?.template;
2836
+ const params = args?.params ?? {};
2837
+ if (!template) {
2838
+ return {
2839
+ content: [{ type: 'text', text: JSON.stringify({ error: 'template is required', hint: 'call list_mission_templates' }, null, 2) }],
2840
+ isError: true,
2841
+ };
2842
+ }
2843
+ const ctx = workspaceContext;
2844
+ if (!ctx?.sessionToken) {
2845
+ return {
2846
+ content: [{ type: 'text', text: JSON.stringify({ error: 'unauthenticated', hint: 'register_owner first' }, null, 2) }],
2847
+ isError: true,
2848
+ };
2849
+ }
2850
+ const baseUrl = process.env.APICLAW_GATEWAY_URL ||
2851
+ (CONVEX_URL.includes('convex.cloud')
2852
+ ? CONVEX_URL.replace('.convex.cloud', '.convex.site')
2853
+ : 'https://adventurous-avocet-799.convex.site');
2854
+ const res = await fetch(`${baseUrl}/v1/missions/start`, {
2855
+ method: 'POST',
2856
+ headers: {
2857
+ 'Content-Type': 'application/json',
2858
+ 'X-APIClaw-Session': ctx.sessionToken,
2859
+ },
2860
+ body: JSON.stringify({ template, params }),
2861
+ });
2862
+ const data = (await res.json());
2863
+ if (!res.ok) {
2864
+ return {
2865
+ content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
2866
+ isError: true,
2867
+ };
2868
+ }
2869
+ return {
2870
+ content: [{
2871
+ type: 'text',
2872
+ text: JSON.stringify({
2873
+ ...data,
2874
+ hint: `Poll with mission_status({ mission_id: "${data.missionId}" }) until status is "completed".`,
2875
+ }, null, 2),
2876
+ }],
2877
+ };
2878
+ }
2879
+ case 'mission_status': {
2880
+ const missionId = args?.mission_id;
2881
+ if (!missionId) {
2882
+ return {
2883
+ content: [{ type: 'text', text: JSON.stringify({ error: 'mission_id required' }, null, 2) }],
2884
+ isError: true,
2885
+ };
2886
+ }
2887
+ const ctx = workspaceContext;
2888
+ if (!ctx?.sessionToken) {
2889
+ return {
2890
+ content: [{ type: 'text', text: JSON.stringify({ error: 'unauthenticated' }, null, 2) }],
2891
+ isError: true,
2892
+ };
2893
+ }
2894
+ const baseUrl = process.env.APICLAW_GATEWAY_URL ||
2895
+ (CONVEX_URL.includes('convex.cloud')
2896
+ ? CONVEX_URL.replace('.convex.cloud', '.convex.site')
2897
+ : 'https://adventurous-avocet-799.convex.site');
2898
+ const res = await fetch(`${baseUrl}/v1/missions/${encodeURIComponent(missionId)}`, {
2899
+ headers: { 'X-APIClaw-Session': ctx.sessionToken },
2900
+ });
2901
+ const data = await res.json();
2902
+ return {
2903
+ content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
2904
+ isError: !res.ok,
2905
+ };
2906
+ }
2907
+ case 'list_missions': {
2908
+ const limit = args?.limit ?? 20;
2909
+ const ctx = workspaceContext;
2910
+ if (!ctx?.sessionToken) {
2911
+ return {
2912
+ content: [{ type: 'text', text: JSON.stringify({ error: 'unauthenticated' }, null, 2) }],
2913
+ isError: true,
2914
+ };
2915
+ }
2916
+ const baseUrl = process.env.APICLAW_GATEWAY_URL ||
2917
+ (CONVEX_URL.includes('convex.cloud')
2918
+ ? CONVEX_URL.replace('.convex.cloud', '.convex.site')
2919
+ : 'https://adventurous-avocet-799.convex.site');
2920
+ const res = await fetch(`${baseUrl}/v1/missions?limit=${limit}`, {
2921
+ headers: { 'X-APIClaw-Session': ctx.sessionToken },
2922
+ });
2923
+ const data = await res.json();
2924
+ return {
2925
+ content: [{ type: 'text', text: JSON.stringify(data, null, 2) }],
2926
+ isError: !res.ok,
2927
+ };
2928
+ }
2929
+ // ============================================
2761
2930
  // CHAIN MANAGEMENT TOOLS
2762
2931
  // ============================================
2763
2932
  case 'get_chain_status': {
@@ -2984,9 +3153,14 @@ async function main() {
2984
3153
  if (result?.agentId) {
2985
3154
  currentAgentId = result.agentId;
2986
3155
  }
2987
- // If we got a new session token and don't have one, write it
3156
+ // Only write a new anonymous session if no valid session file exists.
3157
+ // Never overwrite a file that has an email — that would cause the next
3158
+ // startup to read email:"" → delete the file → lose auth entirely.
2988
3159
  if (result?.isNew && result?.sessionToken && !hasValidSession) {
2989
- writeSession(result.sessionToken, result.workspaceId, "");
3160
+ const existingFile = readSession();
3161
+ if (!existingFile) {
3162
+ writeSession(result.sessionToken, result.workspaceId, "");
3163
+ }
2990
3164
  }
2991
3165
  }
2992
3166
  catch (e) {