@signaliz/cli 1.0.20 → 1.0.22

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 (3) hide show
  1. package/README.md +30 -587
  2. package/dist/bin.js +363 -7512
  3. package/package.json +9 -9
package/README.md CHANGED
@@ -1,609 +1,52 @@
1
1
  # @signaliz/cli
2
2
 
3
- Command-line interface for Signaliz build campaigns, install MCP, manage API keys.
4
-
5
- Current CLI surfaces include GTM Kernel campaign planning/status commands,
6
- provider routing for Nango-managed customer API destinations, MCP/Ops
7
- observability, enrichment primitives, and live email verification at 0.02 fresh
8
- enrichment credits when a new verification is needed.
9
-
10
- Monthly plans include unlimited cache search, Campaign Builder, API, MCP, CLI,
11
- Ops, and integrations. Team is the $499/month public plan and adds unlimited
12
- live Find People and Find Companies in Signaliz; Agency stays $999/month with
13
- higher credits and throughput. Fresh credits are used only when Signaliz
14
- creates, verifies, or fetches new premium data.
15
-
16
- Fresh enrichment throughput now allows Free 60/min, Builder 300/min, Team
17
- 600/min, Agency 1,000/min, and Pay-As-You-Go 1,000/min, with a 5,000/hour
18
- workspace safety cap.
19
-
20
- ## Where To Start
21
-
22
- If you are not sure whether to use the UI, CLI, Codex, MCP, or SDK, start here:
23
-
24
- ```bash
25
- signaliz start
26
- ```
27
-
28
- Signaliz is the GTM brain over any stack. Use CLI, MCP, Codex, or SDK when an
29
- agent needs to build, audit, route, or debug work. Use the UI as the human
30
- cockpit to inspect state, connect tools, approve gated actions, and monitor
31
- results.
32
-
33
- `signaliz start` is read-only. It checks workspace health, credits, Ops proof,
34
- Kernel readiness, and provider-route blockers, then recommends one next safest
35
- move plus exact commands for five plain workflows:
36
-
37
- - Build a campaign plan: `signaliz build "campaign brief"`.
38
- - Connect tools and provider routes: `signaliz connect`.
39
- - Audit previous campaigns: `signaliz audit`.
40
- - Improve results from learning: `signaliz improve <campaign_id>`.
41
- - Prove Ops delivery: `signaliz prove`.
42
-
43
- ## Concepts
44
-
45
- Signaliz is the GTM brain over your stack. Six nouns explain the rest:
46
-
47
- - Op - one executable unit of work, created from a goal or plan. You run it, poll it, and retrieve results.
48
- - Routine - an Op on a schedule. Each scheduled execution is a Tick, and each Tick produces items you can inspect.
49
- - Sink - a delivery destination such as webhook, CSV, Slack, Sheets, Airbyte, or Nango.
50
- - Kernel - your workspace's persistent GTM state: campaigns, memory, connections, provider routes, and readiness gates.
51
- - Brain - the learning layer over the Kernel. It extracts campaign patterns, calibrates deliverability, and seeds safer defaults.
52
- - Campaign - a governed outbound object built from Kernel state and Brain learning. A Campaign Build is one execution that produces rows and artifacts.
53
-
54
- Use Campaign Builder when you need a list now. Use the GTM Kernel when the campaign should persist, route through specific providers, and improve from feedback. Use Ops when the job is prompt-first or recurring, such as monitors, alerts, and ad-hoc pulls.
55
-
56
- ## Install
3
+ The Signaliz CLI exposes four product commands:
57
4
 
58
5
  ```bash
59
6
  npm install -g @signaliz/cli
60
- ```
61
-
62
- ## Production REST Endpoints
63
-
64
- - Find Email: `https://api.signaliz.com/functions/v1/find-verified-email-v2`
65
- - Email Verification: `https://api.signaliz.com/functions/v1/email-verification-2`
66
- - Company Signal Enrichment: `https://api.signaliz.com/functions/v1/company-signal-enrichment-v2`
67
- - Signal to Copy: `https://api.signaliz.com/functions/v1/api/v1/signal-to-copy`
68
-
69
- ## Quick Start
70
-
71
- The golden path, in order. Each step shows the canonical command surface; compatibility aliases still work, but the README keeps one path visible.
72
-
73
- ```bash
74
- # 1. Authenticate
75
7
  signaliz auth login
76
8
 
77
- # 2. Orient. This is read-only and prints one next safest move.
78
- signaliz start
9
+ # Production REST gateway:
10
+ # https://api.signaliz.com/functions/v1/api/v1/find-email
11
+ # https://api.signaliz.com/functions/v1/api/v1/verify-email
12
+ # https://api.signaliz.com/functions/v1/api/v1/company-signals
13
+ # https://api.signaliz.com/functions/v1/api/v1/signal-to-copy
79
14
 
80
- # 3. Plan something. Pick the surface that matches the job.
81
- signaliz campaign-agent kit --strategy-template non-medical-home-care --target-count 250 --use-local-leads --json
82
- signaliz campaign-agent memory-kit --strategy-template non-medical-home-care --target-count 250 --use-local-leads --source agency --json
83
- signaliz campaign build --prompt "VP Sales at B2B SaaS, 50-500 employees" --target-count 100 --dry-run
84
- signaliz gtm plan "VP Sales at B2B SaaS, 50-500 employees" --target-count 100 --json > plan.json
85
- signaliz ops plan "Build 100 verified VP Sales leads at B2B SaaS companies"
15
+ signaliz find-email --company-domain example.com --full-name "Jane Doe"
16
+ signaliz verify-email jane@example.com
17
+ signaliz company-signals --domain example.com --research-prompt "expansion priorities"
18
+ signaliz signal-to-copy \
19
+ --company-domain example.com \
20
+ --person-name "Jane Doe" \
21
+ --title "VP Sales" \
22
+ --campaign-offer "pipeline intelligence"
23
+ ```
86
24
 
87
- # 4. Launch only after review.
88
- signaliz campaign build --prompt "VP Sales at B2B SaaS, 50-500 employees" --target-count 100 --confirm-spend --wait
89
- signaliz gtm commit-plan --plan-file plan.json --confirm
90
- signaliz ops create "Build 100 verified VP Sales leads at B2B SaaS companies" --confirm-spend
91
- signaliz ops run <op_id>
25
+ Use `--json` with any product command for structured output.
92
26
 
93
- # 5. Check status and pull results.
94
- signaliz campaign status <campaign_build_id>
95
- signaliz campaign rows <campaign_build_id> --limit 100
96
- signaliz ops status <op_id>
97
- signaliz ops results <op_id> --limit 100 --json
27
+ Every product command also accepts a JSON array or JSONL file for scale:
98
28
 
99
- # 6. Debug async execution when something stalls.
100
- signaliz ops run-status <trigger_run_id> --watch
101
- signaliz ops queue --summary
102
- signaliz ops logs <trigger_run_id>
103
- signaliz ops doctor
29
+ ```bash
30
+ signaliz find-email --input contacts.jsonl --concurrency 20 --json
31
+ signaliz verify-email --input emails.json --concurrency 20 --json
32
+ signaliz company-signals --input companies.jsonl --concurrency 5 --json
33
+ signaliz signal-to-copy --input copy-requests.jsonl --concurrency 5 --json
104
34
  ```
105
35
 
106
- Two gates protect you. `--confirm-spend` approves spendful launches and delivery risk after reviewing an estimate. `--confirm` writes Kernel or provider-route state after a dry-run. Read-only planning and dry-runs do not spend credits or mutate state.
36
+ Batch input is capped at 5,000 records, concurrency is bounded to `1-50`, input
37
+ order is preserved, and a failed item does not abort successful items.
107
38
 
108
- ## Authentication
39
+ Connection commands are limited to access infrastructure:
109
40
 
110
41
  ```bash
111
- # Interactive login (saves to ~/.signaliz/config.json)
112
- signaliz auth login
113
-
114
- # Or set key directly
115
42
  signaliz auth set-key sk_live_...
116
-
117
- # Or use environment variable
118
- export SIGNALIZ_API_KEY=sk_live_...
119
-
120
- # Save the active workspace context for deploy/API-key/Ops maintenance commands
121
43
  signaliz auth workspace set <workspace_id>
122
- signaliz auth workspace show
123
- signaliz auth workspace clear
124
-
125
- # Check who you are
126
- signaliz whoami
127
-
128
- # Workspace + MCP platform health
44
+ signaliz auth status
129
45
  signaliz health
130
- signaliz health --json
131
- ```
132
-
133
- ## Discovery
134
-
135
- ```bash
136
- # List all MCP tools
137
46
  signaliz tools
138
- signaliz tools --json
139
-
140
- # Filter by category
141
- signaliz tools --category ops
142
-
143
- # Find the right tool/capability by intent
144
- signaliz discover --query "verify a batch of emails"
145
- signaliz discover --query "create an output sink and attach it to a routine" --category ops
146
- ```
147
-
148
- Human discovery output includes safety metadata from the MCP registry: permission
149
- level, destructive/idempotent/retryable hints, contract version, rate-limit key,
150
- and required auth scopes. Use `--json` when agents need the full structured
151
- metadata.
152
-
153
- Quickstart/template output also shows primitive IDs and primitive graph policy
154
- metadata when the backend returns it, so operators can inspect retry,
155
- concurrency, and rate-limit behavior before running an Op.
156
-
157
- ## Custom AI Enrichment - Multi Model
158
-
159
- Run custom AI enrichment with the Signaliz-hosted default model. The response includes model readback metadata so callers can audit which model ran.
160
-
161
- ```bash
162
- signaliz ai multi-model \
163
- --prompt "Research {{company_name}} and score ICP fit for enterprise sales." \
164
- --input-json '{"company_name":"Stripe","company_domain":"stripe.com"}' \
165
- --output-fields fit_score:number,reasoning:text \
166
- --confirm-spend
167
-
168
- signaliz ai multi-model \
169
- --prompt "Review this PDF and extract buyer pains for {{company_name}}." \
170
- --records-file accounts.json \
171
- --attachment-fields pdf_url \
172
- --output-fields pains:array,next_step:text \
173
- --confirm-spend
174
- ```
175
-
176
- ## Lead Generation And Email
177
-
178
- ```bash
179
- # Preview spend approval requirements. This returns APPROVAL_REQUIRED.
180
- signaliz lead generate \
181
- --prompt "VP Sales at B2B SaaS companies, 50-500 employees" \
182
- --max-leads 100
183
-
184
- # Launch after reviewing estimated credits
185
- signaliz lead generate \
186
- --prompt "VP Sales at B2B SaaS companies, 50-500 employees" \
187
- --max-leads 100 \
188
- --confirm-spend
189
-
190
- # Local-business lead generation
191
- signaliz lead local \
192
- --prompt "dentists in Phoenix, AZ" \
193
- --target-verified 50 \
194
- --confirm-spend
195
-
196
- # Poll async lead jobs
197
- signaliz lead status <job_id>
198
-
199
- # Verify or find emails. `email find` uses the V3 waterfall:
200
- # primary discovery, secondary enrichment, verified guesses, then paid fallback if needed.
201
- signaliz email verify jane@example.com
202
- signaliz email verify-batch --emails jane@example.com,sam@example.com
203
- signaliz email status <job_id>
204
- signaliz email find --company-domain stripe.com --full-name "Jane Smith"
205
- ```
206
-
207
- ## GTM Kernel
208
-
209
- Use this path when the campaign should become durable workspace state. The plan is read-only, `commit-plan` dry-runs first, and writes require `--confirm`.
210
-
211
- ```bash
212
- # Inspect the workspace Kernel context available to agents
213
- signaliz gtm context
214
- signaliz gtm context --no-memory --limit 5 --json
215
-
216
- # Check Kernel, Brain, feedback, memory, and connection readiness gates
217
- signaliz gtm bootstrap
218
- signaliz gtm bootstrap --campaign-id <campaign_id> --include-samples --json
219
-
220
- # Compose a read-only campaign build plan before creating, routing, or spending
221
- signaliz gtm plan "Find CTOs at fintech startups in NYC" \
222
- --target-count 100 \
223
- --layers icp,lead_generation,email_verification,sender,feedback \
224
- --preferred-providers instantly \
225
- --include-planned
226
-
227
- # Save the JSON plan, then dry-run a reviewed campaign-object commit
228
- signaliz gtm plan "Find CTOs at fintech startups in NYC" --target-count 100 --json > plan.json
229
- signaliz gtm commit-plan --plan-file plan.json
230
- signaliz gtm commit-plan --plan-file plan.json --confirm
231
-
232
- # List and inspect first-class GTM campaigns
233
- signaliz gtm campaigns --status active
234
- signaliz gtm campaign <campaign_id> --log-limit 20 --memory-limit 20
235
-
236
- # Search ranked GTM memory instead of dumping raw history
237
- signaliz gtm memory "positive replies from technical founders" \
238
- --outcome-type positive_reply \
239
- --limit 10
240
-
241
- # Plan Brain learning in dry-run mode
242
- signaliz gtm learning <campaign_id> --include-network --write-mode dry_run
243
- signaliz gtm learning-run <campaign_id> \
244
- --phases workspace_pattern_extraction,failure_pattern_detection,defaults_seed,delivery_risk \
245
- --write-mode dry_run
246
- signaliz gtm calibrate <campaign_id> --min-sample-size 10
247
-
248
- # Inspect and repair provider readiness without leaving the CLI
249
- signaliz gtm execution <campaign_id>
250
- signaliz gtm integrations --campaign-id <campaign_id> --include-planned
251
- signaliz gtm nango connect \
252
- --provider-id apollo \
253
- --integration-id apollo
254
- signaliz gtm nango tools \
255
- --workspace-connection-id <workspace_connection_id> \
256
- --provider-config-key apollo
257
- signaliz gtm route-preview --campaign-id <campaign_id> --layer sender
258
- signaliz gtm activate-route --campaign-id <campaign_id> \
259
- --provider-id instantly \
260
- --layer sender
261
-
262
- # Derive exact dry-run build input from the committed GTM campaign object
263
- signaliz gtm prepare-build <campaign_id> --build-input --json > build-args.json
264
- signaliz campaign build --input-file build-args.json --confirm-spend
265
-
266
- # Write route changes only after reviewing the dry-run
267
- signaliz gtm activate-route --campaign-id <campaign_id> \
268
- --provider-id instantly \
269
- --layer sender \
270
- --confirm
271
-
272
- # Prepare feedback ingress with feedback-triggered Brain learning
273
- signaliz gtm feedback-webhook --provider instantly \
274
- --campaign-id <campaign_id> \
275
- --write-mode dry_run
276
- ```
277
-
278
- ## Campaign Builder
279
-
280
- ### Strategy-template campaign agent
281
-
282
- Use `gtm strategy-memory` to verify that private-safe strategy/workflow memory is
283
- seeded before asking the campaign agent to plan:
284
-
285
- ```bash
286
- signaliz gtm strategy-memory \
287
- --strategy-template non-medical-home-care \
288
- --include-samples \
289
- --json
290
- ```
291
-
292
- Use `gtm agent-template` when you want the hosted MCP surface to emit reusable
293
- `CampaignBuilderAgentRequest` JSON before planning:
294
-
295
- ```bash
296
- signaliz gtm agent-template \
297
- --goal "Build a strategy-template campaign for mature local operators" \
298
- --strategy-template non-medical-home-care \
299
- --target-count 250 \
300
- --use-local-leads \
301
- --with-byo-placeholder \
302
- --json
303
- ```
304
-
305
- Use `gtm agent-plan` when you want the CLI to call the hosted MCP campaign-agent
306
- planner directly:
307
-
308
- ```bash
309
- signaliz gtm agent-plan \
310
- --goal "Build a strategy-template campaign for mature local operators" \
311
- --strategy-template non-medical-home-care \
312
- --target-count 500 \
313
- --builtins lead_generation,local_leads,email_finding,email_verification,signals \
314
- --custom-tool workspace_mcp:enrichment:account_enrich:workspace-mcp \
315
- --json
316
- ```
317
-
318
- Use `campaign-agent` when you want the CLI to assemble the full MCP plan first:
319
- private-safe strategy template, strategy-memory readiness, Brain risk, built-in
320
- Signaliz lanes, and BYO tool routes. BYO routes include read-only
321
- `gtm_provider_recipe_prepare` and `gtm_provider_route_activate` dry-run steps
322
- before any custom provider tool can run. Planning and dry-runs are
323
- read-only/spend-safe; launches require explicit approval flags.
324
-
325
- ```bash
326
- signaliz campaign-agent init \
327
- --strategy-template non-medical-home-care \
328
- --target-count 250 \
329
- --use-local-leads \
330
- --with-byo-placeholder \
331
- --output-file campaign-request.json
332
-
333
- signaliz campaign-agent memory-kit \
334
- --strategy-template non-medical-home-care \
335
- --target-count 250 \
336
- --use-local-leads \
337
- --source agency \
338
- --json
339
-
340
- signaliz campaign-agent plan \
341
- --goal "Build a strategy-template campaign for mature local operators" \
342
- --strategy-template non-medical-home-care \
343
- --target-count 500 \
344
- --builtins lead_generation,local_leads,email_finding,email_verification,signals \
345
- --custom-tool workspace_mcp:enrichment:workspace_enrich:workspace-mcp \
346
- --json
347
-
348
- signaliz campaign-agent plan \
349
- --request-file campaign-request.json \
350
- --target-count 250 \
351
- --json
352
-
353
- signaliz campaign-agent dry-run \
354
- --goal "Build a strategy-template campaign for mature local operators" \
355
- --target-count 500 \
356
- --json
357
-
358
- signaliz campaign-agent build-approved \
359
- --goal "Build a strategy-template campaign for mature local operators" \
360
- --confirm-launch \
361
- --approve-all \
362
- --approved-by operator@example.com \
363
- --spend-limit 500 \
364
- --json
47
+ signaliz mcp install
365
48
  ```
366
49
 
367
- ### Build a campaign
368
-
369
- ```bash
370
- # Minimal — just a prompt
371
- signaliz campaign build --prompt "Find CTOs at fintech startups in NYC"
372
-
373
- # Full options
374
- signaliz campaign build \
375
- --prompt "VP Engineering at Series B+ companies" \
376
- --target-count 5000 \
377
- --confirm-spend \
378
- --outputs csv \
379
- --industries "SaaS,Fintech" \
380
- --geographies "US,UK" \
381
- --wait \
382
- --json
383
-
384
- # With webhook delivery
385
- signaliz campaign build \
386
- --prompt "Sales Directors at healthcare companies" \
387
- --target-count 200 \
388
- --confirm-spend \
389
- --webhook-url https://hooks.example.com/leads \
390
- --hmac-secret-ref WEBHOOK_SECRET
391
-
392
- # Validate and inspect the plan before launching spendful work
393
- signaliz campaign build \
394
- --prompt "CTOs at fintech startups in NYC" \
395
- --target-count 10000 \
396
- --dry-run \
397
- --allow-downscale \
398
- --json
399
-
400
- # Approve a pending webhook delivery
401
- signaliz campaign approve <campaign_build_id> \
402
- --destination-type webhook \
403
- --webhook-url https://hooks.example.com/leads
404
-
405
- # From a JSON config file
406
- signaliz campaign build --input-file campaign.json --wait
407
- ```
408
-
409
- ### Check status
410
-
411
- ```bash
412
- signaliz campaign status <campaign_build_id>
413
- signaliz campaign status <campaign_build_id> --json
414
- ```
415
-
416
- ### Retrieve rows
417
-
418
- ```bash
419
- # First page (50 rows default)
420
- signaliz campaign rows <campaign_build_id>
421
-
422
- # Custom page size
423
- signaliz campaign rows <campaign_build_id> --limit 200
424
-
425
- # Paginate with cursor
426
- signaliz campaign rows <campaign_build_id> --limit 100 --cursor <next_cursor>
427
-
428
- # Dump all rows (caution: large datasets)
429
- signaliz campaign rows <campaign_build_id> --all --json
430
-
431
- # Filter by segment
432
- signaliz campaign rows <campaign_build_id> --segment signal
433
-
434
- # Filter by qualification or row status
435
- signaliz campaign rows <campaign_build_id> --qualified
436
- signaliz campaign rows <campaign_build_id> --row-status succeeded
437
- ```
438
-
439
- ### List artifacts
440
-
441
- ```bash
442
- signaliz campaign artifacts <campaign_build_id>
443
- signaliz campaign artifacts <campaign_build_id> --json
444
- ```
445
-
446
- ### Cancel a build
447
-
448
- ```bash
449
- signaliz campaign cancel <campaign_build_id>
450
- signaliz campaign cancel <campaign_build_id> --reason "Wrong ICP"
451
- ```
452
-
453
- ## MCP Server Installation
454
-
455
- Install the Signaliz MCP server for your AI agent:
456
-
457
- ```bash
458
- # Claude Code
459
- signaliz mcp install --agent claude-code
460
-
461
- # OpenAI Codex
462
- signaliz mcp install --agent codex
463
-
464
- # Manus
465
- signaliz mcp install --agent manus
466
-
467
- # Generic (prints config JSON to stdout)
468
- signaliz mcp install --agent generic
469
- ```
470
-
471
- Installed agents can call Signaliz MCP tools for GTM Kernel reads, Campaign
472
- Builder execution, Nango-aware provider route activation, and the 100-record
473
- email verification primitive.
474
-
475
- ## Ops Execution And Observability
476
-
477
- Prompt-first Ops stay simple for beginners, but the CLI exposes production
478
- inspection paths for operators debugging asynchronous workflows. The canonical
479
- surface is `signaliz ops ...`; shortcut aliases remain available for existing
480
- scripts but are not needed for new work.
481
-
482
- ```bash
483
- # Natural-language planning and creation
484
- signaliz ops autopilot
485
- signaliz ops plan "Monitor these accounts daily and alert Slack on funding signals"
486
- # Human plan output includes run-now, schedule, approval, status, results, and Nango dry-run gates.
487
- signaliz ops create "Monitor strategic accounts and alert Slack on funding or CRM updates" \
488
- --cadence daily \
489
- --timezone America/Phoenix \
490
- --wake-on-events company_funded,crm.updated \
491
- --activate \
492
- --confirm-spend
493
- signaliz ops schedule "Monitor strategic accounts and alert Slack on funding or CRM updates" \
494
- --timezone America/Phoenix \
495
- --wake-on-events company_funded,crm.updated \
496
- --destinations slack \
497
- --confirm-spend \
498
- --wait \
499
- --limit 100 \
500
- --json
501
- signaliz ops quickstart company_research
502
- signaliz ops create "Build 100 verified VP Sales leads at B2B SaaS companies" --confirm-spend
503
-
504
- # Bring any customer-owned API into Ops through Nango
505
- signaliz ops nango search hubspot --intent ops --action-name upsert-contact --required-fields email,company --json
506
- signaliz ops nango tools --workspace-connection-id <workspace_connection_id> --json
507
- signaliz ops nango call <action_name> --workspace-connection-id <workspace_connection_id> --input-json '{"rows":[]}' --dry-run --json
508
- # --wait uses the native nango_mcp_tool_call_and_wait tool for a single execute-and-result packet
509
- signaliz ops nango call <action_name> --workspace-connection-id <workspace_connection_id> --input-json '{"rows":[]}' --execute --confirm --wait --json
510
- # schedule/recur uses native ops_nango_schedule(_and_wait) instead of a generic destinations payload
511
- signaliz ops nango schedule "Monitor accounts daily and upsert approved rows to HubSpot" --workspace-connection-id <workspace_connection_id> --provider-config-key hubspot --action-name upsert-contact --input-json '{"source":"signaliz"}' --required-fields email,company --confirm-spend --write-confirmed --wait --json
512
- signaliz ops execute "Build 50 approved ICP leads and upsert them to HubSpot" \
513
- --destinations nango \
514
- --workspace-connection-id <workspace_connection_id> \
515
- --provider-config-key hubspot \
516
- --action-name upsert-contact \
517
- --dry-run
518
-
519
- # Execute and inspect Op-level results
520
- signaliz ops execute "Build 50 approved ICP leads and return reviewed rows" \
521
- --confirm-spend \
522
- --wait \
523
- --limit 50 \
524
- --json
525
- signaliz ops run <op_id>
526
- signaliz ops run <op_id> --wait --limit 100 --json
527
- signaliz ops wait <op_id> --limit 100 --json
528
- signaliz ops status <op_id>
529
- signaliz ops results <op_id> --limit 100 --json
530
- signaliz ops results <op_id> --include-failed-runs --json
531
-
532
- # Save repeatable local Ops command recipes
533
- signaliz ops saved save daily-goal -- create "Build 100 verified VP Sales leads" --target-count 100
534
- signaliz ops saved save daily-monitor -- plan "Monitor key accounts daily" --cadence daily --destinations slack,csv
535
- signaliz ops saved list
536
- signaliz ops saved run daily-monitor --json
537
- signaliz ops saved delete daily-monitor
538
-
539
- # Inspect Trigger.dev execution state
540
- signaliz ops run-status <trigger_run_id>
541
- signaliz ops run-status <trigger_run_id> --watch --interval-ms 5000 --max-polls 60
542
- signaliz ops run-status --run-ids run_a,run_b --json
543
-
544
- # Inspect async queue depth, provider pressure, and individual jobs
545
- signaliz ops queue
546
- signaliz ops queue --summary
547
- signaliz ops queue --job-id <api_request_queue_id>
548
- signaliz ops queue --idempotency-key <key>
549
-
550
- # Stream live run logs
551
- signaliz ops logs <trigger_run_id>
552
- signaliz ops logs <trigger_run_id> --since <event_id> --filter error
553
-
554
- # Replay a failed execution from a captured checkpoint
555
- signaliz ops replay <execution_event_id>
556
-
557
- # Approve or reject pending Ops approval tokens
558
- signaliz ops approve <approval_token_id> --decision approved
559
- signaliz ops approve --token-ids token_a,token_b --decision rejected --notes "Needs review"
560
-
561
- # Inspect and manually run routines
562
- signaliz ops routines --status active
563
- signaliz ops routine <routine_id>
564
- signaliz ops routine <routine_id> run --force
565
- signaliz ops routine <routine_id> ticks --limit 20
566
- signaliz ops routine <routine_id> items --state failed --json
567
-
568
- # Pull operator telemetry from the Ops dashboard API
569
- signaliz ops dashboard summary
570
- signaliz ops dashboard functions --time-range-days 7 --json
571
- signaliz ops dashboard recent --limit 25
572
- signaliz ops dashboard timeseries --granularity hour --json
573
- ```
574
-
575
- ## Machine-Readable Output
576
-
577
- All commands support `--json` for structured JSON output using the standard MCP response envelope:
578
-
579
- ```bash
580
- signaliz campaign build --prompt "..." --json
581
- signaliz campaign build --prompt "..." --wait --json
582
- signaliz campaign status <id> --json
583
- signaliz campaign rows <id> --limit 100 --json
584
- signaliz whoami --json
585
- signaliz health --json
586
- signaliz tools --json
587
- signaliz discover --query "verify emails" --json
588
- signaliz lead status <job_id> --json
589
- signaliz email verify jane@example.com --json
590
- signaliz ops queue --summary --json
591
- signaliz ops run-status <trigger_run_id> --json
592
- signaliz ops replay <execution_event_id> --json
593
- signaliz ops dashboard summary --json
594
- ```
595
-
596
- When `campaign build --wait --json` is used, the CLI emits one valid JSON
597
- document with both `initial` and `final` states.
598
-
599
- ## Environment Variables
600
-
601
- | Variable | Description |
602
- |---|---|
603
- | `SIGNALIZ_API_KEY` | API key (overrides saved config) |
604
- | `SIGNALIZ_API_URL` | Override base URL. Both `https://api.signaliz.com` and `https://api.signaliz.com/functions/v1` are accepted. |
605
- | `SIGNALIZ_WORKSPACE_ID` | Workspace UUID for keys/deploy |
606
-
607
- ## Config File
608
-
609
- The CLI stores configuration in `~/.signaliz/config.json` (mode 0600). The file contains your API key, optional workspace context created by `signaliz auth workspace set`, and local saved Ops command recipes created by `signaliz ops saved save`. `SIGNALIZ_API_KEY` and `SIGNALIZ_WORKSPACE_ID` override saved config values for one-off execution.
50
+ Configuration is stored in `~/.signaliz/config.json` with file mode `0600`.
51
+ `SIGNALIZ_API_KEY`, `SIGNALIZ_API_URL`, and `SIGNALIZ_BASE_URL` override the
52
+ saved configuration.