lua-cli 3.32.2 → 3.32.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.
- package/dist/api-exports.d.ts +82 -8
- package/dist/api-exports.js +765 -304
- package/dist/api-exports.js.map +1 -1
- package/dist/index.js +2082 -549
- package/dist/index.js.map +1 -1
- package/dist/workflow-builder.d.ts +11 -7
- package/dist/workflow-builder.js +588 -244
- package/dist/workflow-builder.js.map +1 -1
- package/docs/CLI_REFERENCE.md +126 -4
- package/docs/README.md +2 -2
- package/docs/workflows/approvals.md +24 -6
- package/docs/workflows/goals.md +2 -2
- package/docs/workflows/replay-local.md +9 -3
- package/docs/workflows/schedules.md +1 -1
- package/docs/workflows/script-form.md +4 -4
- package/docs/workflows/testing-offline.md +33 -21
- package/package.json +4 -3
- package/template/examples/workflows/CLAUDE.md +17 -11
- package/template/examples/workflows/adversarial-verify.workflow.script.js +20 -16
- package/template/examples/workflows/outreach.ts +31 -15
- package/template/examples/workflows/refund-approval.ts +26 -12
- package/template/package.json +1 -1
package/docs/CLI_REFERENCE.md
CHANGED
|
@@ -27,6 +27,7 @@ Complete reference for all lua-cli commands.
|
|
|
27
27
|
Set up API authentication.
|
|
28
28
|
|
|
29
29
|
**Usage:**
|
|
30
|
+
|
|
30
31
|
```bash
|
|
31
32
|
lua auth configure
|
|
32
33
|
```
|
|
@@ -35,6 +36,7 @@ lua auth configure
|
|
|
35
36
|
Prompts for your API key and stores it in `~/.lua-cli/credentials` (file-based, works on all platforms including headless Linux and Docker).
|
|
36
37
|
|
|
37
38
|
**Example:**
|
|
39
|
+
|
|
38
40
|
```bash
|
|
39
41
|
$ lua auth configure
|
|
40
42
|
? Enter your Lua API key: **********************
|
|
@@ -42,6 +44,7 @@ $ lua auth configure
|
|
|
42
44
|
```
|
|
43
45
|
|
|
44
46
|
**Alternative Authentication:**
|
|
47
|
+
|
|
45
48
|
- Environment variable: `export LUA_API_KEY=your-api-key`
|
|
46
49
|
- `.env` file: `LUA_API_KEY=your-api-key`
|
|
47
50
|
|
|
@@ -54,6 +57,7 @@ $ lua auth configure
|
|
|
54
57
|
Initialize a new Lua agent project.
|
|
55
58
|
|
|
56
59
|
**Usage:**
|
|
60
|
+
|
|
57
61
|
```bash
|
|
58
62
|
lua init [options]
|
|
59
63
|
```
|
|
@@ -62,11 +66,13 @@ lua init [options]
|
|
|
62
66
|
Creates project structure, configures agent, and sets up development environment.
|
|
63
67
|
|
|
64
68
|
**Interactive Prompts:**
|
|
69
|
+
|
|
65
70
|
- Select or create an agent
|
|
66
71
|
- Configure persona and welcome message
|
|
67
72
|
- Set up project directory structure
|
|
68
73
|
|
|
69
74
|
**Example:**
|
|
75
|
+
|
|
70
76
|
```bash
|
|
71
77
|
$ lua init
|
|
72
78
|
? Select an agent: (Use arrow keys)
|
|
@@ -89,21 +95,25 @@ $ lua init
|
|
|
89
95
|
Compile TypeScript source code to deployable format.
|
|
90
96
|
|
|
91
97
|
**Usage:**
|
|
98
|
+
|
|
92
99
|
```bash
|
|
93
100
|
lua compile [options]
|
|
94
101
|
```
|
|
95
102
|
|
|
96
103
|
**Options:**
|
|
104
|
+
|
|
97
105
|
- `--debug` - Show detailed compilation output
|
|
98
106
|
|
|
99
107
|
**Description:**
|
|
100
108
|
Compiles TypeScript to JavaScript bundles, validates primitives (tools, skills, webhooks, jobs, processors), and generates manifest.
|
|
101
109
|
|
|
102
110
|
**Output:**
|
|
111
|
+
|
|
103
112
|
- `.lua/artifacts/` - Bundled JavaScript files
|
|
104
113
|
- `.lua/manifest.json` - Compilation manifest
|
|
105
114
|
|
|
106
115
|
**Example:**
|
|
116
|
+
|
|
107
117
|
```bash
|
|
108
118
|
$ lua compile
|
|
109
119
|
⏳ Compiling agent...
|
|
@@ -125,6 +135,7 @@ $ lua compile --debug
|
|
|
125
135
|
Test tools, webhooks, and jobs interactively.
|
|
126
136
|
|
|
127
137
|
**Usage:**
|
|
138
|
+
|
|
128
139
|
```bash
|
|
129
140
|
lua test [options]
|
|
130
141
|
```
|
|
@@ -133,12 +144,14 @@ lua test [options]
|
|
|
133
144
|
Interactive testing environment for individual primitives. Runs code in local sandbox with full API access.
|
|
134
145
|
|
|
135
146
|
**Interactive Flow:**
|
|
147
|
+
|
|
136
148
|
1. Select primitive type (Tool / Webhook / Job)
|
|
137
149
|
2. Select specific primitive to test
|
|
138
150
|
3. Provide test input
|
|
139
151
|
4. View execution results
|
|
140
152
|
|
|
141
153
|
**Example:**
|
|
154
|
+
|
|
142
155
|
```bash
|
|
143
156
|
$ lua test
|
|
144
157
|
? Select type: Tool
|
|
@@ -161,23 +174,27 @@ $ lua test
|
|
|
161
174
|
Interactive chat interface with your agent.
|
|
162
175
|
|
|
163
176
|
**Usage:**
|
|
177
|
+
|
|
164
178
|
```bash
|
|
165
179
|
lua chat [options]
|
|
166
180
|
```
|
|
167
181
|
|
|
168
182
|
**Options:**
|
|
183
|
+
|
|
169
184
|
- `--production` - Chat with production environment (default: sandbox)
|
|
170
185
|
|
|
171
186
|
**Description:**
|
|
172
187
|
Real-time streaming chat interface for testing agent behavior.
|
|
173
188
|
|
|
174
189
|
**Features:**
|
|
190
|
+
|
|
175
191
|
- ✅ Animated typing indicator
|
|
176
192
|
- ✅ Character-by-character streaming
|
|
177
193
|
- ✅ Tool execution visibility
|
|
178
194
|
- ✅ Environment selection (sandbox/production)
|
|
179
195
|
|
|
180
196
|
**Example:**
|
|
197
|
+
|
|
181
198
|
```bash
|
|
182
199
|
$ lua chat
|
|
183
200
|
🤖 Welcome! How can I help you today?
|
|
@@ -197,17 +214,20 @@ You: /exit
|
|
|
197
214
|
Start development server with live reload.
|
|
198
215
|
|
|
199
216
|
**Usage:**
|
|
217
|
+
|
|
200
218
|
```bash
|
|
201
219
|
lua dev [options]
|
|
202
220
|
```
|
|
203
221
|
|
|
204
222
|
**Options:**
|
|
223
|
+
|
|
205
224
|
- `--port <number>` - Server port (default: 3100)
|
|
206
225
|
|
|
207
226
|
**Description:**
|
|
208
227
|
Starts local development server with file watching and live reload. Includes chat UI and sandbox environment.
|
|
209
228
|
|
|
210
229
|
**Example:**
|
|
230
|
+
|
|
211
231
|
```bash
|
|
212
232
|
$ lua dev
|
|
213
233
|
🚀 Dev server running on http://localhost:3100
|
|
@@ -227,14 +247,17 @@ $ lua dev
|
|
|
227
247
|
Push primitives to the server.
|
|
228
248
|
|
|
229
249
|
**Usage:**
|
|
250
|
+
|
|
230
251
|
```bash
|
|
231
252
|
lua push [type] [options]
|
|
232
253
|
```
|
|
233
254
|
|
|
234
255
|
**Arguments:**
|
|
256
|
+
|
|
235
257
|
- `type` - Primitive type to push: `skill`, `webhook`, `job`, `preprocessor`, `postprocessor`, `mcp`, `device`, `all`
|
|
236
258
|
|
|
237
259
|
**Options:**
|
|
260
|
+
|
|
238
261
|
- `--name <name>` - Specific primitive name
|
|
239
262
|
- `--force` - Skip confirmation prompts
|
|
240
263
|
- `--auto-deploy` - Automatically deploy after push (only with `all`)
|
|
@@ -243,6 +266,7 @@ lua push [type] [options]
|
|
|
243
266
|
Uploads compiled artifacts to the server, creates new versions, and optionally deploys to production.
|
|
244
267
|
|
|
245
268
|
**Interactive Mode:**
|
|
269
|
+
|
|
246
270
|
```bash
|
|
247
271
|
$ lua push
|
|
248
272
|
? Select type: Skill
|
|
@@ -256,6 +280,7 @@ $ lua push
|
|
|
256
280
|
```
|
|
257
281
|
|
|
258
282
|
**Batch Mode (CI/CD):**
|
|
283
|
+
|
|
259
284
|
```bash
|
|
260
285
|
$ lua push all --force --auto-deploy
|
|
261
286
|
⏳ Pushing all primitives...
|
|
@@ -266,6 +291,7 @@ $ lua push all --force --auto-deploy
|
|
|
266
291
|
```
|
|
267
292
|
|
|
268
293
|
**Examples:**
|
|
294
|
+
|
|
269
295
|
```bash
|
|
270
296
|
# Push specific skill interactively
|
|
271
297
|
lua push skill
|
|
@@ -284,14 +310,17 @@ lua push all --force --auto-deploy
|
|
|
284
310
|
Deploy a primitive version to production.
|
|
285
311
|
|
|
286
312
|
**Usage:**
|
|
313
|
+
|
|
287
314
|
```bash
|
|
288
315
|
lua deploy [type] [options]
|
|
289
316
|
```
|
|
290
317
|
|
|
291
318
|
**Arguments:**
|
|
319
|
+
|
|
292
320
|
- `type` - Primitive type: `skill`, `webhook`, `job`, `preprocessor`, `postprocessor`, `mcp`
|
|
293
321
|
|
|
294
322
|
**Options:**
|
|
323
|
+
|
|
295
324
|
- `--name <name>` - Specific primitive name
|
|
296
325
|
- `--version <version>` - Specific version (default: latest)
|
|
297
326
|
|
|
@@ -299,6 +328,7 @@ lua deploy [type] [options]
|
|
|
299
328
|
Activates a specific version in production environment.
|
|
300
329
|
|
|
301
330
|
**Example:**
|
|
331
|
+
|
|
302
332
|
```bash
|
|
303
333
|
$ lua deploy skill
|
|
304
334
|
? Select skill: general-skill
|
|
@@ -315,6 +345,7 @@ $ lua deploy skill
|
|
|
315
345
|
View production environment status.
|
|
316
346
|
|
|
317
347
|
**Usage:**
|
|
348
|
+
|
|
318
349
|
```bash
|
|
319
350
|
lua production [options]
|
|
320
351
|
```
|
|
@@ -323,6 +354,7 @@ lua production [options]
|
|
|
323
354
|
Displays current production state for all primitives (skills, webhooks, jobs, processors).
|
|
324
355
|
|
|
325
356
|
**Example:**
|
|
357
|
+
|
|
326
358
|
```bash
|
|
327
359
|
$ lua production
|
|
328
360
|
📊 Production Status
|
|
@@ -345,11 +377,13 @@ Jobs:
|
|
|
345
377
|
Manage environment variables.
|
|
346
378
|
|
|
347
379
|
**Usage:**
|
|
380
|
+
|
|
348
381
|
```bash
|
|
349
382
|
lua env [command]
|
|
350
383
|
```
|
|
351
384
|
|
|
352
385
|
**Commands:**
|
|
386
|
+
|
|
353
387
|
- `list` - List all environment variables
|
|
354
388
|
- `set <key> <value>` - Set environment variable
|
|
355
389
|
- `delete <key>` - Delete environment variable
|
|
@@ -358,6 +392,7 @@ lua env [command]
|
|
|
358
392
|
Manage server-side environment variables (stored encrypted, available in tools/webhooks/jobs).
|
|
359
393
|
|
|
360
394
|
**Example:**
|
|
395
|
+
|
|
361
396
|
```bash
|
|
362
397
|
$ lua env list
|
|
363
398
|
🔑 Environment Variables:
|
|
@@ -378,17 +413,20 @@ $ lua env delete OLD_KEY
|
|
|
378
413
|
Update agent persona.
|
|
379
414
|
|
|
380
415
|
**Usage:**
|
|
416
|
+
|
|
381
417
|
```bash
|
|
382
418
|
lua persona [options]
|
|
383
419
|
```
|
|
384
420
|
|
|
385
421
|
**Options:**
|
|
422
|
+
|
|
386
423
|
- `--set <text>` - Set persona text directly
|
|
387
424
|
|
|
388
425
|
**Description:**
|
|
389
426
|
Updates agent personality/instructions.
|
|
390
427
|
|
|
391
428
|
**Example:**
|
|
429
|
+
|
|
392
430
|
```bash
|
|
393
431
|
$ lua persona
|
|
394
432
|
? Agent persona: You are a friendly customer support agent specialized in e-commerce...
|
|
@@ -405,11 +443,13 @@ $ lua persona --set "You are a technical support specialist..."
|
|
|
405
443
|
View and filter agent logs.
|
|
406
444
|
|
|
407
445
|
**Usage:**
|
|
446
|
+
|
|
408
447
|
```bash
|
|
409
448
|
lua logs [options]
|
|
410
449
|
```
|
|
411
450
|
|
|
412
451
|
**Options:**
|
|
452
|
+
|
|
413
453
|
- `--limit <number>` - Number of logs to fetch (default: 50)
|
|
414
454
|
- `--follow` - Follow logs in real-time
|
|
415
455
|
|
|
@@ -417,6 +457,7 @@ lua logs [options]
|
|
|
417
457
|
Interactive log viewer with filtering, search, and real-time streaming.
|
|
418
458
|
|
|
419
459
|
**Example:**
|
|
460
|
+
|
|
420
461
|
```bash
|
|
421
462
|
$ lua logs
|
|
422
463
|
📋 Recent Logs (50)
|
|
@@ -439,16 +480,19 @@ $ lua logs
|
|
|
439
480
|
Manage skills.
|
|
440
481
|
|
|
441
482
|
**Usage:**
|
|
483
|
+
|
|
442
484
|
```bash
|
|
443
485
|
lua skills [command]
|
|
444
486
|
```
|
|
445
487
|
|
|
446
488
|
**Commands:**
|
|
489
|
+
|
|
447
490
|
- `list` - List all skills
|
|
448
491
|
- `versions <name>` - View skill versions
|
|
449
492
|
- `delete <name>` - Delete a skill
|
|
450
493
|
|
|
451
494
|
**Example:**
|
|
495
|
+
|
|
452
496
|
```bash
|
|
453
497
|
$ lua skills list
|
|
454
498
|
📚 Skills:
|
|
@@ -469,15 +513,18 @@ $ lua skills versions general-skill
|
|
|
469
513
|
Manage webhooks.
|
|
470
514
|
|
|
471
515
|
**Usage:**
|
|
516
|
+
|
|
472
517
|
```bash
|
|
473
518
|
lua webhooks [command]
|
|
474
519
|
```
|
|
475
520
|
|
|
476
521
|
**Commands:**
|
|
522
|
+
|
|
477
523
|
- `list` - List all webhooks
|
|
478
524
|
- `url <name>` - Get webhook URL
|
|
479
525
|
|
|
480
526
|
**Example:**
|
|
527
|
+
|
|
481
528
|
```bash
|
|
482
529
|
$ lua webhooks list
|
|
483
530
|
🪝 Webhooks:
|
|
@@ -496,15 +543,18 @@ https://api.heylua.ai/webhooks/hook_123
|
|
|
496
543
|
Manage scheduled jobs.
|
|
497
544
|
|
|
498
545
|
**Usage:**
|
|
546
|
+
|
|
499
547
|
```bash
|
|
500
548
|
lua jobs [command]
|
|
501
549
|
```
|
|
502
550
|
|
|
503
551
|
**Commands:**
|
|
552
|
+
|
|
504
553
|
- `list` - List all jobs
|
|
505
554
|
- `run <name>` - Manually trigger a job
|
|
506
555
|
|
|
507
556
|
**Example:**
|
|
557
|
+
|
|
508
558
|
```bash
|
|
509
559
|
$ lua jobs list
|
|
510
560
|
⏰ Scheduled Jobs:
|
|
@@ -523,11 +573,13 @@ $ lua jobs run daily-cleanup
|
|
|
523
573
|
Connect third-party accounts and services.
|
|
524
574
|
|
|
525
575
|
**Usage:**
|
|
576
|
+
|
|
526
577
|
```bash
|
|
527
578
|
lua integrations [command]
|
|
528
579
|
```
|
|
529
580
|
|
|
530
581
|
**Commands:**
|
|
582
|
+
|
|
531
583
|
- `list` - List available integrations
|
|
532
584
|
- `connect <name>` - Connect an integration
|
|
533
585
|
- `disconnect <name>` - Disconnect an integration
|
|
@@ -536,6 +588,7 @@ lua integrations [command]
|
|
|
536
588
|
Authenticate and connect third-party services (Linear, Discord, Google Calendar, etc.). Automatically creates MCP servers for connected integrations.
|
|
537
589
|
|
|
538
590
|
**Supported Integrations:**
|
|
591
|
+
|
|
539
592
|
- Linear - Project management
|
|
540
593
|
- Discord - Bot integration
|
|
541
594
|
- Google Calendar - Calendar access
|
|
@@ -545,6 +598,7 @@ Authenticate and connect third-party services (Linear, Discord, Google Calendar,
|
|
|
545
598
|
- And more...
|
|
546
599
|
|
|
547
600
|
**Example:**
|
|
601
|
+
|
|
548
602
|
```bash
|
|
549
603
|
$ lua integrations list
|
|
550
604
|
🔌 Available Integrations:
|
|
@@ -566,15 +620,18 @@ $ lua integrations connect linear
|
|
|
566
620
|
Manage chat channels (WhatsApp, Web, etc.).
|
|
567
621
|
|
|
568
622
|
**Usage:**
|
|
623
|
+
|
|
569
624
|
```bash
|
|
570
625
|
lua channels [command]
|
|
571
626
|
```
|
|
572
627
|
|
|
573
628
|
**Commands:**
|
|
629
|
+
|
|
574
630
|
- `list` - List all channels
|
|
575
631
|
- `configure <channel>` - Configure channel settings
|
|
576
632
|
|
|
577
633
|
**Example:**
|
|
634
|
+
|
|
578
635
|
```bash
|
|
579
636
|
$ lua channels list
|
|
580
637
|
💬 Active Channels:
|
|
@@ -592,6 +649,7 @@ $ lua channels list
|
|
|
592
649
|
Browse, install, and manage marketplace skills and agent templates.
|
|
593
650
|
|
|
594
651
|
**Usage:**
|
|
652
|
+
|
|
595
653
|
```bash
|
|
596
654
|
lua marketplace [noun] [action] [options]
|
|
597
655
|
```
|
|
@@ -600,15 +658,18 @@ lua marketplace [noun] [action] [options]
|
|
|
600
658
|
With no arguments, prompts for a domain — **Skills** or **Agent templates** — then hands off to that domain's own interactive picker. Pass `noun` (`skill` or `template`) to skip straight to a domain, and `action` for non-interactive mode.
|
|
601
659
|
|
|
602
660
|
**Skill actions** (`lua marketplace skill <action>`):
|
|
661
|
+
|
|
603
662
|
- `list`, `publish`, `edit`, `unlist`, `unpublish`, `transfer`, `org` — manage listings owned by the configured agent's organization
|
|
604
663
|
- `mine` — list skills originally authored by the caller; ownership is still shown separately through `creatorOrgId`
|
|
605
664
|
- `search`, `view`, `install`, `update`, `uninstall`, `installed` — browse and manage skills on this agent
|
|
606
665
|
|
|
607
666
|
**Template actions** (`lua marketplace template <action>`):
|
|
667
|
+
|
|
608
668
|
- `create`, `publish`, `view`, `versions` — manage a versioned snapshot of an agent's deployable manifest
|
|
609
669
|
- `install`, `apply`, `status`, `installed`, `uninstall` — install onto one agent, or fleet-apply across many
|
|
610
670
|
|
|
611
671
|
**Example:**
|
|
672
|
+
|
|
612
673
|
```bash
|
|
613
674
|
$ lua marketplace
|
|
614
675
|
? What would you like to browse?
|
|
@@ -638,6 +699,7 @@ $ lua marketplace template apply --template-id xyz --all-installed --force
|
|
|
638
699
|
Open the admin dashboard.
|
|
639
700
|
|
|
640
701
|
**Usage:**
|
|
702
|
+
|
|
641
703
|
```bash
|
|
642
704
|
lua admin
|
|
643
705
|
```
|
|
@@ -652,6 +714,7 @@ Opens https://admin.heylua.ai in your default browser.
|
|
|
652
714
|
Open documentation.
|
|
653
715
|
|
|
654
716
|
**Usage:**
|
|
717
|
+
|
|
655
718
|
```bash
|
|
656
719
|
lua docs
|
|
657
720
|
```
|
|
@@ -666,11 +729,13 @@ Opens https://docs.heylua.ai in your default browser.
|
|
|
666
729
|
Show CLI version.
|
|
667
730
|
|
|
668
731
|
**Usage:**
|
|
732
|
+
|
|
669
733
|
```bash
|
|
670
734
|
lua --version
|
|
671
735
|
```
|
|
672
736
|
|
|
673
737
|
**Example:**
|
|
738
|
+
|
|
674
739
|
```bash
|
|
675
740
|
$ lua --version
|
|
676
741
|
lua-cli vX.Y.Z
|
|
@@ -683,12 +748,14 @@ lua-cli vX.Y.Z
|
|
|
683
748
|
Show help information.
|
|
684
749
|
|
|
685
750
|
**Usage:**
|
|
751
|
+
|
|
686
752
|
```bash
|
|
687
753
|
lua --help
|
|
688
754
|
lua <command> --help
|
|
689
755
|
```
|
|
690
756
|
|
|
691
757
|
**Example:**
|
|
758
|
+
|
|
692
759
|
```bash
|
|
693
760
|
$ lua --help
|
|
694
761
|
Usage: lua [command] [options]
|
|
@@ -718,6 +785,7 @@ These flags can be used with any command:
|
|
|
718
785
|
Enable CI/CD mode (fail loudly on missing required flags).
|
|
719
786
|
|
|
720
787
|
**Usage:**
|
|
788
|
+
|
|
721
789
|
```bash
|
|
722
790
|
lua <command> --ci
|
|
723
791
|
```
|
|
@@ -726,6 +794,7 @@ lua <command> --ci
|
|
|
726
794
|
In CI/CD environments (non-TTY), interactive prompts fail silently. The `--ci` flag makes the CLI fail loudly with clear error messages when required flags are missing.
|
|
727
795
|
|
|
728
796
|
**Example:**
|
|
797
|
+
|
|
729
798
|
```bash
|
|
730
799
|
# Without --ci flag (silent failure in CI)
|
|
731
800
|
$ lua push skill
|
|
@@ -744,6 +813,7 @@ $ lua push skill --ci --name weather-skill --force
|
|
|
744
813
|
|
|
745
814
|
**Best Practice:**
|
|
746
815
|
Always use `--ci` in CI/CD pipelines:
|
|
816
|
+
|
|
747
817
|
```yaml
|
|
748
818
|
# .github/workflows/deploy.yml
|
|
749
819
|
- name: Deploy
|
|
@@ -759,11 +829,13 @@ Always use `--ci` in CI/CD pipelines:
|
|
|
759
829
|
API authentication key.
|
|
760
830
|
|
|
761
831
|
**Priority:**
|
|
832
|
+
|
|
762
833
|
1. System keychain (set via `lua auth configure`)
|
|
763
834
|
2. `LUA_API_KEY` environment variable
|
|
764
835
|
3. `LUA_API_KEY` in `.env` file
|
|
765
836
|
|
|
766
837
|
**Example:**
|
|
838
|
+
|
|
767
839
|
```bash
|
|
768
840
|
export LUA_API_KEY=your-api-key
|
|
769
841
|
lua push all --force
|
|
@@ -773,16 +845,43 @@ lua push all --force
|
|
|
773
845
|
|
|
774
846
|
## Exit Codes
|
|
775
847
|
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
848
|
+
Every `lua` command exits with one of the classes below; `lua --help` prints the same table. An error is one line on stderr — `✖ <code>: <message>` — plus a `💡` hint when there is one; `LUA_DEBUG=1` (or `--debug`) prints the stack under it. `--help` / `--version` and a prompt cancelled with Ctrl+C exit `0`.
|
|
849
|
+
|
|
850
|
+
| Exit | Code | When |
|
|
851
|
+
| ---- | ------------- | ---------------------------------------------------------------------------------------------- |
|
|
852
|
+
| `0` | `ok` | Success |
|
|
853
|
+
| `1` | `error` | An unclassified failure — the message says what (a compile failure is `compile_failed`) |
|
|
854
|
+
| `2` | `usage` | Bad arguments — an unknown option or command, an unknown action, no project / agent configured |
|
|
855
|
+
| `3` | `not_found` | The named thing does not exist (HTTP 404) |
|
|
856
|
+
| `9` | `auth` | No credential, or the server refused it (HTTP 401) |
|
|
857
|
+
| `10` | `forbidden` | The credential is fine but may not do this (HTTP 403 — any other 4xx as `http_<status>`) |
|
|
858
|
+
| `11` | `unavailable` | The server or the network failed (HTTP 5xx, connection refused, request timeout) |
|
|
859
|
+
|
|
860
|
+
`lua workflows` adds its run outcomes — which is why the classes above skip 4–8 — and keeps `1` for the server's refusal of a verb (a 4xx other than 404):
|
|
861
|
+
|
|
862
|
+
| Exit | Code | When |
|
|
863
|
+
| ---- | --------------- | -------------------------------------------------------------------------------------- |
|
|
864
|
+
| `4` | `run_failed` | The run ended `failed` / `timed_out` |
|
|
865
|
+
| `5` | `run_cancelled` | The run ended `cancelled` / `abandoned` |
|
|
866
|
+
| `6` | `run_gated` | A consent gate — `start --follow` / `watch` exit here unless `--wait-for-human` |
|
|
867
|
+
| `7` | `timeout` | `--timeout <s>` reached (the run is still live) |
|
|
868
|
+
| `8` | `run_parked` | The run waits for a human — approval, input, signal, billing / budget / exception park |
|
|
869
|
+
|
|
870
|
+
As printed by `lua --help` (`CLI_EXIT_CODE_HELP` in `src/errors/cli.error.ts`; `tests/__tests__/docs.exit-codes.test.ts` keeps this section and the constants in step):
|
|
871
|
+
|
|
872
|
+
```text
|
|
873
|
+
Exit codes: 0 ok · 1 error · 2 usage · 3 not found · 9 auth (401) · 10 forbidden (403 / other 4xx) ·
|
|
874
|
+
11 unavailable (5xx / network). lua workflows adds 4 run failed · 5 run cancelled · 6 run gated ·
|
|
875
|
+
7 --timeout reached · 8 run parked waiting for a human.
|
|
876
|
+
Errors: one line — ✖ <code>: <message> — plus a 💡 hint; LUA_DEBUG=1 prints the stack.
|
|
877
|
+
```
|
|
780
878
|
|
|
781
879
|
---
|
|
782
880
|
|
|
783
881
|
## Tips & Best Practices
|
|
784
882
|
|
|
785
883
|
### Development Workflow
|
|
884
|
+
|
|
786
885
|
```bash
|
|
787
886
|
# 1. Make changes
|
|
788
887
|
vim src/skills/tools/MyTool.ts
|
|
@@ -804,12 +903,14 @@ lua deploy skill --name my-skill
|
|
|
804
903
|
```
|
|
805
904
|
|
|
806
905
|
### CI/CD Workflow
|
|
906
|
+
|
|
807
907
|
```bash
|
|
808
908
|
# Single command deployment
|
|
809
909
|
lua push all --ci --force --auto-deploy
|
|
810
910
|
```
|
|
811
911
|
|
|
812
912
|
### Testing Before Deploy
|
|
913
|
+
|
|
813
914
|
```bash
|
|
814
915
|
# Always test in sandbox first
|
|
815
916
|
lua chat # Sandbox mode
|
|
@@ -819,6 +920,7 @@ lua push all --force --auto-deploy
|
|
|
819
920
|
```
|
|
820
921
|
|
|
821
922
|
### Version Management
|
|
923
|
+
|
|
822
924
|
```bash
|
|
823
925
|
# View versions
|
|
824
926
|
lua skills versions my-skill
|
|
@@ -835,6 +937,7 @@ lua deploy skill --name my-skill --version 0.9.0
|
|
|
835
937
|
## Common Patterns
|
|
836
938
|
|
|
837
939
|
### Create and Deploy New Skill
|
|
940
|
+
|
|
838
941
|
```bash
|
|
839
942
|
# 1. Create tool file
|
|
840
943
|
# src/skills/tools/MyTool.ts
|
|
@@ -852,11 +955,13 @@ lua deploy skill --name my-skill
|
|
|
852
955
|
```
|
|
853
956
|
|
|
854
957
|
### Update Agent Persona
|
|
958
|
+
|
|
855
959
|
```bash
|
|
856
960
|
lua persona --set "You are a helpful assistant specializing in..."
|
|
857
961
|
```
|
|
858
962
|
|
|
859
963
|
### Monitor Production
|
|
964
|
+
|
|
860
965
|
```bash
|
|
861
966
|
# View status
|
|
862
967
|
lua production
|
|
@@ -869,6 +974,7 @@ lua skills versions my-skill
|
|
|
869
974
|
```
|
|
870
975
|
|
|
871
976
|
### Environment Variables
|
|
977
|
+
|
|
872
978
|
```bash
|
|
873
979
|
# Set environment variables
|
|
874
980
|
lua env set OPENAI_API_KEY sk-...
|
|
@@ -886,6 +992,7 @@ lua env delete OLD_KEY
|
|
|
886
992
|
## Troubleshooting
|
|
887
993
|
|
|
888
994
|
### "Authentication failed"
|
|
995
|
+
|
|
889
996
|
```bash
|
|
890
997
|
# Reconfigure API key
|
|
891
998
|
lua auth configure
|
|
@@ -895,6 +1002,7 @@ export LUA_API_KEY=your-api-key
|
|
|
895
1002
|
```
|
|
896
1003
|
|
|
897
1004
|
### "Compilation failed"
|
|
1005
|
+
|
|
898
1006
|
```bash
|
|
899
1007
|
# Check for errors
|
|
900
1008
|
lua compile --debug
|
|
@@ -906,12 +1014,14 @@ lua compile --debug
|
|
|
906
1014
|
```
|
|
907
1015
|
|
|
908
1016
|
### "Command hangs in CI"
|
|
1017
|
+
|
|
909
1018
|
```bash
|
|
910
1019
|
# Use --ci flag to fail loudly
|
|
911
1020
|
lua push all --ci --force --auto-deploy
|
|
912
1021
|
```
|
|
913
1022
|
|
|
914
1023
|
### "Version conflict"
|
|
1024
|
+
|
|
915
1025
|
```bash
|
|
916
1026
|
# View current versions
|
|
917
1027
|
lua production
|
|
@@ -929,20 +1039,24 @@ lua deploy skill --name my-skill --version 1.0.0
|
|
|
929
1039
|
Manage the LLM model for your agent.
|
|
930
1040
|
|
|
931
1041
|
**Usage:**
|
|
1042
|
+
|
|
932
1043
|
```bash
|
|
933
1044
|
lua models [action] [options]
|
|
934
1045
|
```
|
|
935
1046
|
|
|
936
1047
|
**Actions:**
|
|
1048
|
+
|
|
937
1049
|
- `list` (default) — list all approved models grouped by provider, highlighting the current model
|
|
938
1050
|
- `set` — interactively select or non-interactively specify a model; writes it to `src/index.ts` and pushes to server
|
|
939
1051
|
- `unset` — remove the model from source and clear it on the server (reverts to platform default)
|
|
940
1052
|
|
|
941
1053
|
**Options:**
|
|
1054
|
+
|
|
942
1055
|
- `--model <code>` - Model code to set non-interactively (e.g. `openai/gpt-4o`)
|
|
943
1056
|
- `--json` - Output model list as JSON
|
|
944
1057
|
|
|
945
1058
|
**Examples:**
|
|
1059
|
+
|
|
946
1060
|
```bash
|
|
947
1061
|
# List all available models
|
|
948
1062
|
lua models
|
|
@@ -971,11 +1085,13 @@ lua models list --json
|
|
|
971
1085
|
Manage bidirectional agent-device communication.
|
|
972
1086
|
|
|
973
1087
|
**Usage:**
|
|
1088
|
+
|
|
974
1089
|
```bash
|
|
975
1090
|
lua devices [action] [options]
|
|
976
1091
|
```
|
|
977
1092
|
|
|
978
1093
|
**Actions:**
|
|
1094
|
+
|
|
979
1095
|
- `list` — list all registered devices
|
|
980
1096
|
- `status` — check if a device is online, offline, or disabled
|
|
981
1097
|
- `enable` — re-enable a disabled device
|
|
@@ -985,6 +1101,7 @@ lua devices [action] [options]
|
|
|
985
1101
|
- `test-trigger` — simulate an inbound trigger from a device
|
|
986
1102
|
|
|
987
1103
|
**Options:**
|
|
1104
|
+
|
|
988
1105
|
- `--device-name <name>` - Target device name (interactive picker shown when omitted)
|
|
989
1106
|
- `--group <name>` - Filter devices by group (for `list`)
|
|
990
1107
|
- `--payload <json>` - JSON payload to send with the command (default: `{}`)
|
|
@@ -992,6 +1109,7 @@ lua devices [action] [options]
|
|
|
992
1109
|
- `--force` - Skip confirmation prompt (for `remove`)
|
|
993
1110
|
|
|
994
1111
|
**Examples:**
|
|
1112
|
+
|
|
995
1113
|
```bash
|
|
996
1114
|
# List all devices
|
|
997
1115
|
lua devices list
|
|
@@ -1019,6 +1137,7 @@ lua devices test-trigger --device-name my-sensor
|
|
|
1019
1137
|
```
|
|
1020
1138
|
|
|
1021
1139
|
**Pushing device definitions:**
|
|
1140
|
+
|
|
1022
1141
|
```bash
|
|
1023
1142
|
lua push device # push device configurations to the server
|
|
1024
1143
|
lua push all # includes devices in full push
|
|
@@ -1033,11 +1152,13 @@ lua push all # includes devices in full push
|
|
|
1033
1152
|
Detect and resolve drift between local and server state.
|
|
1034
1153
|
|
|
1035
1154
|
**Usage:**
|
|
1155
|
+
|
|
1036
1156
|
```bash
|
|
1037
1157
|
lua sync [options]
|
|
1038
1158
|
```
|
|
1039
1159
|
|
|
1040
1160
|
**Options:**
|
|
1161
|
+
|
|
1041
1162
|
- `--check` - Report drift and exit 1 if any drift is found (CI/CD use)
|
|
1042
1163
|
- `--accept` - Auto-pull all server state to local (non-interactive)
|
|
1043
1164
|
- `--push` - Auto-push all local changes to server (non-interactive)
|
|
@@ -1050,6 +1171,7 @@ Compares your local YAML config and source files against the server state. Detec
|
|
|
1050
1171
|
`lua sync --pull` (and `--accept`) guards against overwriting local changes made since the last `lua push backup`. If modified files are detected, the pull is refused with a list of conflicted files. Use `--force` to bypass.
|
|
1051
1172
|
|
|
1052
1173
|
**Examples:**
|
|
1174
|
+
|
|
1053
1175
|
```bash
|
|
1054
1176
|
# Interactive drift resolution
|
|
1055
1177
|
lua sync
|
package/docs/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
# lua-cli v3.32.
|
|
1
|
+
# lua-cli v3.32.3
|
|
2
2
|
|
|
3
|
-
Welcome to the comprehensive API documentation for lua-cli v3.32.
|
|
3
|
+
Welcome to the comprehensive API documentation for lua-cli v3.32.3. This guide covers every API, class, and function exported by the package.
|
|
4
4
|
|
|
5
5
|
## 📚 Documentation Index
|
|
6
6
|
|