fengming 0.3.2 → 0.3.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/CHANGELOG.md +3 -3
- package/dist/build-info.json +2 -2
- package/dist/{bundled-channel-config-schema-Bte--ZlY.d.ts → bundled-channel-config-schema-DpdKMATU.d.ts} +26 -26
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/cli-startup-metadata.json +8 -8
- package/dist/control-ui/assets/{activity-DXrrQ3p0.js → activity-B7yRLbf3.js} +2 -2
- package/dist/control-ui/assets/{agents-DBTWjl5N.js → agents-E-3DAkaW.js} +2 -2
- package/dist/control-ui/assets/{channel-config-extras-1Omw3P4a.js → channel-config-extras-GDGUjA2T.js} +2 -2
- package/dist/control-ui/assets/{channels-CLz01a7t.js → channels-D0c7A9OX.js} +2 -2
- package/dist/control-ui/assets/{cron-vTxFqNNV.js → cron-B54j2Vmo.js} +2 -2
- package/dist/control-ui/assets/{debug-CvwuX3fe.js → debug-CRcGYNA9.js} +2 -2
- package/dist/control-ui/assets/i18n-BWPaSddY.js +2 -0
- package/dist/control-ui/assets/{index-CFA4p4Li.js → index-bZJJ7U8q.js} +5 -5
- package/dist/control-ui/assets/{instances-BbKVXLX1.js → instances-RcBeqNzx.js} +2 -2
- package/dist/control-ui/assets/{logs-B4vkHG-U.js → logs-atEFsTJJ.js} +2 -2
- package/dist/control-ui/assets/{nodes-DrdIa_Kj.js → nodes-BoWRh42t.js} +2 -2
- package/dist/control-ui/assets/{push-subscription-Ck2KdK-7.js → push-subscription-CY8GxC_U.js} +2 -2
- package/dist/control-ui/assets/{sessions-BqDAC2V3.js → sessions-BmRQ932H.js} +2 -2
- package/dist/control-ui/assets/{skills-DCQx-dAB.js → skills-BDn45kHZ.js} +2 -2
- package/dist/control-ui/assets/{skills-shared-BWrG-mcT.js → skills-shared-lQxAuc7D.js} +2 -2
- package/dist/control-ui/assets/{workboard-Cqwvi5Ma.js → workboard-BwbcNuC5.js} +2 -2
- package/dist/control-ui/index.html +2 -2
- package/dist/control-ui/sw.js +1 -1
- package/dist/gateway/protocol/index.d.ts +1 -1
- package/dist/{index-GK-13hii.d.ts → index-DhOQs6M_.d.ts} +46 -46
- package/dist/plugin-sdk/.boundary-entry-shims.stamp +1 -1
- package/dist/plugin-sdk/{bundled-channel-config-schema-BPFNnbwu.d.ts → bundled-channel-config-schema-C3pWWvwG.d.ts} +10 -10
- package/dist/plugin-sdk/bundled-channel-config-schema.d.ts +1 -1
- package/dist/plugin-sdk/channel-config-schema-legacy.d.ts +1 -1
- package/dist/plugin-sdk/config-schema.d.ts +4 -4
- package/dist/plugin-sdk/discord.d.ts +1 -1
- package/dist/postinstall-inventory.json +20 -20
- package/dist/{zod-schema.core-BGLctDlK.d.ts → zod-schema.core-Cuz0lz6m.d.ts} +1 -1
- package/package.json +1 -1
- package/dist/control-ui/assets/i18n-CqJHwmVQ.js +0 -2
package/CHANGELOG.md
CHANGED
package/dist/build-info.json
CHANGED
|
@@ -25,8 +25,8 @@ declare const TelegramConfigSchema: ZodObject<{
|
|
|
25
25
|
markdown: ZodOptional<ZodObject<{
|
|
26
26
|
tables: ZodOptional<ZodEnum<{
|
|
27
27
|
code: "code";
|
|
28
|
-
block: "block";
|
|
29
28
|
off: "off";
|
|
29
|
+
block: "block";
|
|
30
30
|
bullets: "bullets";
|
|
31
31
|
}>>;
|
|
32
32
|
}, $strict>>;
|
|
@@ -187,10 +187,10 @@ declare const TelegramConfigSchema: ZodObject<{
|
|
|
187
187
|
textChunkLimit: ZodOptional<ZodNumber>;
|
|
188
188
|
streaming: ZodOptional<ZodObject<{
|
|
189
189
|
mode: ZodOptional<ZodEnum<{
|
|
190
|
-
block: "block";
|
|
191
190
|
off: "off";
|
|
192
191
|
progress: "progress";
|
|
193
192
|
partial: "partial";
|
|
193
|
+
block: "block";
|
|
194
194
|
}>>;
|
|
195
195
|
chunkMode: ZodOptional<ZodEnum<{
|
|
196
196
|
length: "length";
|
|
@@ -353,8 +353,8 @@ declare const TelegramConfigSchema: ZodObject<{
|
|
|
353
353
|
markdown: ZodOptional<ZodObject<{
|
|
354
354
|
tables: ZodOptional<ZodEnum<{
|
|
355
355
|
code: "code";
|
|
356
|
-
block: "block";
|
|
357
356
|
off: "off";
|
|
357
|
+
block: "block";
|
|
358
358
|
bullets: "bullets";
|
|
359
359
|
}>>;
|
|
360
360
|
}, $strict>>;
|
|
@@ -515,10 +515,10 @@ declare const TelegramConfigSchema: ZodObject<{
|
|
|
515
515
|
textChunkLimit: ZodOptional<ZodNumber>;
|
|
516
516
|
streaming: ZodOptional<ZodObject<{
|
|
517
517
|
mode: ZodOptional<ZodEnum<{
|
|
518
|
-
block: "block";
|
|
519
518
|
off: "off";
|
|
520
519
|
progress: "progress";
|
|
521
520
|
partial: "partial";
|
|
521
|
+
block: "block";
|
|
522
522
|
}>>;
|
|
523
523
|
chunkMode: ZodOptional<ZodEnum<{
|
|
524
524
|
length: "length";
|
|
@@ -665,8 +665,8 @@ declare const DiscordConfigSchema: ZodObject<{
|
|
|
665
665
|
markdown: ZodOptional<ZodObject<{
|
|
666
666
|
tables: ZodOptional<ZodEnum<{
|
|
667
667
|
code: "code";
|
|
668
|
-
block: "block";
|
|
669
668
|
off: "off";
|
|
669
|
+
block: "block";
|
|
670
670
|
bullets: "bullets";
|
|
671
671
|
}>>;
|
|
672
672
|
}, $strict>>;
|
|
@@ -722,10 +722,10 @@ declare const DiscordConfigSchema: ZodObject<{
|
|
|
722
722
|
suppressEmbeds: ZodOptional<ZodBoolean>;
|
|
723
723
|
streaming: ZodOptional<ZodObject<{
|
|
724
724
|
mode: ZodOptional<ZodEnum<{
|
|
725
|
-
block: "block";
|
|
726
725
|
off: "off";
|
|
727
726
|
progress: "progress";
|
|
728
727
|
partial: "partial";
|
|
728
|
+
block: "block";
|
|
729
729
|
}>>;
|
|
730
730
|
chunkMode: ZodOptional<ZodEnum<{
|
|
731
731
|
length: "length";
|
|
@@ -933,8 +933,8 @@ declare const DiscordConfigSchema: ZodObject<{
|
|
|
933
933
|
}>>;
|
|
934
934
|
agentSession: ZodOptional<ZodObject<{
|
|
935
935
|
mode: ZodOptional<ZodEnum<{
|
|
936
|
-
target: "target";
|
|
937
936
|
voice: "voice";
|
|
937
|
+
target: "target";
|
|
938
938
|
}>>;
|
|
939
939
|
target: ZodOptional<ZodString>;
|
|
940
940
|
}, $strict>>;
|
|
@@ -1114,8 +1114,8 @@ declare const DiscordConfigSchema: ZodObject<{
|
|
|
1114
1114
|
markdown: ZodOptional<ZodObject<{
|
|
1115
1115
|
tables: ZodOptional<ZodEnum<{
|
|
1116
1116
|
code: "code";
|
|
1117
|
-
block: "block";
|
|
1118
1117
|
off: "off";
|
|
1118
|
+
block: "block";
|
|
1119
1119
|
bullets: "bullets";
|
|
1120
1120
|
}>>;
|
|
1121
1121
|
}, $strict>>;
|
|
@@ -1171,10 +1171,10 @@ declare const DiscordConfigSchema: ZodObject<{
|
|
|
1171
1171
|
suppressEmbeds: ZodOptional<ZodBoolean>;
|
|
1172
1172
|
streaming: ZodOptional<ZodObject<{
|
|
1173
1173
|
mode: ZodOptional<ZodEnum<{
|
|
1174
|
-
block: "block";
|
|
1175
1174
|
off: "off";
|
|
1176
1175
|
progress: "progress";
|
|
1177
1176
|
partial: "partial";
|
|
1177
|
+
block: "block";
|
|
1178
1178
|
}>>;
|
|
1179
1179
|
chunkMode: ZodOptional<ZodEnum<{
|
|
1180
1180
|
length: "length";
|
|
@@ -1382,8 +1382,8 @@ declare const DiscordConfigSchema: ZodObject<{
|
|
|
1382
1382
|
}>>;
|
|
1383
1383
|
agentSession: ZodOptional<ZodObject<{
|
|
1384
1384
|
mode: ZodOptional<ZodEnum<{
|
|
1385
|
-
target: "target";
|
|
1386
1385
|
voice: "voice";
|
|
1386
|
+
target: "target";
|
|
1387
1387
|
}>>;
|
|
1388
1388
|
target: ZodOptional<ZodString>;
|
|
1389
1389
|
}, $strict>>;
|
|
@@ -1584,8 +1584,8 @@ declare const SlackConfigSchema: ZodObject<{
|
|
|
1584
1584
|
markdown: ZodOptional<ZodObject<{
|
|
1585
1585
|
tables: ZodOptional<ZodEnum<{
|
|
1586
1586
|
code: "code";
|
|
1587
|
-
block: "block";
|
|
1588
1587
|
off: "off";
|
|
1588
|
+
block: "block";
|
|
1589
1589
|
bullets: "bullets";
|
|
1590
1590
|
}>>;
|
|
1591
1591
|
}, $strict>>;
|
|
@@ -1654,10 +1654,10 @@ declare const SlackConfigSchema: ZodObject<{
|
|
|
1654
1654
|
unfurlMedia: ZodOptional<ZodBoolean>;
|
|
1655
1655
|
streaming: ZodOptional<ZodObject<{
|
|
1656
1656
|
mode: ZodOptional<ZodEnum<{
|
|
1657
|
-
block: "block";
|
|
1658
1657
|
off: "off";
|
|
1659
1658
|
progress: "progress";
|
|
1660
1659
|
partial: "partial";
|
|
1660
|
+
block: "block";
|
|
1661
1661
|
}>>;
|
|
1662
1662
|
chunkMode: ZodOptional<ZodEnum<{
|
|
1663
1663
|
length: "length";
|
|
@@ -1866,8 +1866,8 @@ declare const SlackConfigSchema: ZodObject<{
|
|
|
1866
1866
|
markdown: ZodOptional<ZodObject<{
|
|
1867
1867
|
tables: ZodOptional<ZodEnum<{
|
|
1868
1868
|
code: "code";
|
|
1869
|
-
block: "block";
|
|
1870
1869
|
off: "off";
|
|
1870
|
+
block: "block";
|
|
1871
1871
|
bullets: "bullets";
|
|
1872
1872
|
}>>;
|
|
1873
1873
|
}, $strict>>;
|
|
@@ -1946,10 +1946,10 @@ declare const SlackConfigSchema: ZodObject<{
|
|
|
1946
1946
|
unfurlMedia: ZodOptional<ZodBoolean>;
|
|
1947
1947
|
streaming: ZodOptional<ZodObject<{
|
|
1948
1948
|
mode: ZodOptional<ZodEnum<{
|
|
1949
|
-
block: "block";
|
|
1950
1949
|
off: "off";
|
|
1951
1950
|
progress: "progress";
|
|
1952
1951
|
partial: "partial";
|
|
1952
|
+
block: "block";
|
|
1953
1953
|
}>>;
|
|
1954
1954
|
chunkMode: ZodOptional<ZodEnum<{
|
|
1955
1955
|
length: "length";
|
|
@@ -2097,8 +2097,8 @@ declare const SignalConfigSchema: ZodObject<{
|
|
|
2097
2097
|
markdown: ZodOptional<ZodObject<{
|
|
2098
2098
|
tables: ZodOptional<ZodEnum<{
|
|
2099
2099
|
code: "code";
|
|
2100
|
-
block: "block";
|
|
2101
2100
|
off: "off";
|
|
2101
|
+
block: "block";
|
|
2102
2102
|
bullets: "bullets";
|
|
2103
2103
|
}>>;
|
|
2104
2104
|
}, $strict>>;
|
|
@@ -2203,8 +2203,8 @@ declare const SignalConfigSchema: ZodObject<{
|
|
|
2203
2203
|
markdown: ZodOptional<ZodObject<{
|
|
2204
2204
|
tables: ZodOptional<ZodEnum<{
|
|
2205
2205
|
code: "code";
|
|
2206
|
-
block: "block";
|
|
2207
2206
|
off: "off";
|
|
2207
|
+
block: "block";
|
|
2208
2208
|
bullets: "bullets";
|
|
2209
2209
|
}>>;
|
|
2210
2210
|
}, $strict>>;
|
|
@@ -2307,8 +2307,8 @@ declare const IMessageConfigSchema: ZodObject<{
|
|
|
2307
2307
|
markdown: ZodOptional<ZodObject<{
|
|
2308
2308
|
tables: ZodOptional<ZodEnum<{
|
|
2309
2309
|
code: "code";
|
|
2310
|
-
block: "block";
|
|
2311
2310
|
off: "off";
|
|
2311
|
+
block: "block";
|
|
2312
2312
|
bullets: "bullets";
|
|
2313
2313
|
}>>;
|
|
2314
2314
|
}, $strict>>;
|
|
@@ -2415,8 +2415,8 @@ declare const IMessageConfigSchema: ZodObject<{
|
|
|
2415
2415
|
markdown: ZodOptional<ZodObject<{
|
|
2416
2416
|
tables: ZodOptional<ZodEnum<{
|
|
2417
2417
|
code: "code";
|
|
2418
|
-
block: "block";
|
|
2419
2418
|
off: "off";
|
|
2419
|
+
block: "block";
|
|
2420
2420
|
bullets: "bullets";
|
|
2421
2421
|
}>>;
|
|
2422
2422
|
}, $strict>>;
|
|
@@ -2527,8 +2527,8 @@ declare const MSTeamsConfigSchema: ZodObject<{
|
|
|
2527
2527
|
markdown: ZodOptional<ZodObject<{
|
|
2528
2528
|
tables: ZodOptional<ZodEnum<{
|
|
2529
2529
|
code: "code";
|
|
2530
|
-
block: "block";
|
|
2531
2530
|
off: "off";
|
|
2531
|
+
block: "block";
|
|
2532
2532
|
bullets: "bullets";
|
|
2533
2533
|
}>>;
|
|
2534
2534
|
}, $strict>>;
|
|
@@ -2593,10 +2593,10 @@ declare const MSTeamsConfigSchema: ZodObject<{
|
|
|
2593
2593
|
}>>;
|
|
2594
2594
|
streaming: ZodOptional<ZodObject<{
|
|
2595
2595
|
mode: ZodOptional<ZodEnum<{
|
|
2596
|
-
block: "block";
|
|
2597
2596
|
off: "off";
|
|
2598
2597
|
progress: "progress";
|
|
2599
2598
|
partial: "partial";
|
|
2599
|
+
block: "block";
|
|
2600
2600
|
}>>;
|
|
2601
2601
|
chunkMode: ZodOptional<ZodEnum<{
|
|
2602
2602
|
length: "length";
|
|
@@ -2823,8 +2823,8 @@ declare const GoogleChatConfigSchema: ZodObject<{
|
|
|
2823
2823
|
enabled: ZodOptional<ZodBoolean>;
|
|
2824
2824
|
}, $strict>>;
|
|
2825
2825
|
typingIndicator: ZodOptional<ZodEnum<{
|
|
2826
|
-
message: "message";
|
|
2827
2826
|
none: "none";
|
|
2827
|
+
message: "message";
|
|
2828
2828
|
reaction: "reaction";
|
|
2829
2829
|
}>>;
|
|
2830
2830
|
responsePrefix: ZodOptional<ZodString>;
|
|
@@ -2932,8 +2932,8 @@ declare const GoogleChatConfigSchema: ZodObject<{
|
|
|
2932
2932
|
enabled: ZodOptional<ZodBoolean>;
|
|
2933
2933
|
}, $strict>>;
|
|
2934
2934
|
typingIndicator: ZodOptional<ZodEnum<{
|
|
2935
|
-
message: "message";
|
|
2936
2935
|
none: "none";
|
|
2936
|
+
message: "message";
|
|
2937
2937
|
reaction: "reaction";
|
|
2938
2938
|
}>>;
|
|
2939
2939
|
responsePrefix: ZodOptional<ZodString>;
|
|
@@ -2952,8 +2952,8 @@ declare const WhatsAppConfigSchema: ZodPreprocess<ZodObject<{
|
|
|
2952
2952
|
markdown: ZodOptional<ZodObject<{
|
|
2953
2953
|
tables: ZodOptional<ZodEnum<{
|
|
2954
2954
|
code: "code";
|
|
2955
|
-
block: "block";
|
|
2956
2955
|
off: "off";
|
|
2956
|
+
block: "block";
|
|
2957
2957
|
bullets: "bullets";
|
|
2958
2958
|
}>>;
|
|
2959
2959
|
}, $strict>>;
|
|
@@ -3027,8 +3027,8 @@ declare const WhatsAppConfigSchema: ZodPreprocess<ZodObject<{
|
|
|
3027
3027
|
emoji: ZodOptional<ZodString>;
|
|
3028
3028
|
direct: ZodDefault<ZodOptional<ZodBoolean>>;
|
|
3029
3029
|
group: ZodDefault<ZodOptional<ZodEnum<{
|
|
3030
|
-
never: "never";
|
|
3031
3030
|
always: "always";
|
|
3031
|
+
never: "never";
|
|
3032
3032
|
mentions: "mentions";
|
|
3033
3033
|
}>>>;
|
|
3034
3034
|
}, $strict>>;
|
|
@@ -3064,8 +3064,8 @@ declare const WhatsAppConfigSchema: ZodPreprocess<ZodObject<{
|
|
|
3064
3064
|
markdown: ZodOptional<ZodObject<{
|
|
3065
3065
|
tables: ZodOptional<ZodEnum<{
|
|
3066
3066
|
code: "code";
|
|
3067
|
-
block: "block";
|
|
3068
3067
|
off: "off";
|
|
3068
|
+
block: "block";
|
|
3069
3069
|
bullets: "bullets";
|
|
3070
3070
|
}>>;
|
|
3071
3071
|
}, $strict>>;
|
|
@@ -3139,8 +3139,8 @@ declare const WhatsAppConfigSchema: ZodPreprocess<ZodObject<{
|
|
|
3139
3139
|
emoji: ZodOptional<ZodString>;
|
|
3140
3140
|
direct: ZodDefault<ZodOptional<ZodBoolean>>;
|
|
3141
3141
|
group: ZodDefault<ZodOptional<ZodEnum<{
|
|
3142
|
-
never: "never";
|
|
3143
3142
|
always: "always";
|
|
3143
|
+
never: "never";
|
|
3144
3144
|
mentions: "mentions";
|
|
3145
3145
|
}>>>;
|
|
3146
3146
|
}, $strict>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
01434ebeec16dc7466f490e5f3e6e1757693cad72eb3281431fcea4df5605ebe
|
|
@@ -19,14 +19,14 @@
|
|
|
19
19
|
"secretsHelpSourceSignature": "c2efa6d5df3760f891975bad34b9284171c51377",
|
|
20
20
|
"nodesHelpSourceSignature": "4ed0a15d2aa9da1ef1477157f713127378d9bff4",
|
|
21
21
|
"subcommandHelpSourceSignature": "106cea75a5d0c22eb794899dcb17fad911ce358e",
|
|
22
|
-
"browserHelpText": "\nFengMing 0.3.
|
|
23
|
-
"secretsHelpText": "\nFengMing 0.3.
|
|
24
|
-
"nodesHelpText": "\nFengMing 0.3.
|
|
22
|
+
"browserHelpText": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming browser [options] [command]\n\nManage FengMing's dedicated browser (Chrome/Chromium)\n\nOptions:\n --browser-profile <name> Browser profile name (default from config)\n --expect-final Wait for final response (agent) (default: false)\n -h, --help Display help for command\n --json Output machine-readable JSON (default: false)\n --timeout <ms> Timeout in ms (default: \"30000\")\n --token <token> Gateway token (if required)\n --url <url> Gateway WebSocket URL (defaults to\n gateway.remote.url when configured)\n\nCommands:\n click Click an element by ref from snapshot\n click-coords Click viewport coordinates\n close Close a tab (target id optional)\n console Get recent console messages\n cookies Read/write cookies\n create-profile Create a new browser profile\n delete-profile Delete a browser profile\n dialog Arm the next modal dialog (alert/confirm/prompt)\n doctor Check browser plugin readiness\n download Click a ref and save the resulting download\n drag Drag from one ref to another\n errors Get recent page errors\n evaluate Evaluate a function against the page or a ref\n fill Fill a form with JSON field descriptors\n focus Focus a tab by target id, tab id, label, or unique\n target id prefix\n highlight Highlight an element by ref\n hover Hover an element by ai ref\n navigate Navigate the current tab to a URL\n open Open a URL in a new tab\n pdf Save page as PDF\n press Press a key\n profiles List all browser profiles\n requests Get recent network requests (best-effort)\n reset-profile Reset browser profile (moves it to Trash)\n resize Resize the viewport\n responsebody Wait for a network response and return its body\n screenshot Capture a screenshot (MEDIA:<path>)\n scrollintoview Scroll an element into view by ref from snapshot\n select Select option(s) in a select element\n set Browser environment settings\n snapshot Capture a snapshot (default: ai; aria is the\n accessibility tree)\n start Start the browser (no-op if already running)\n status Show browser status\n stop Stop the browser (best-effort)\n storage Read/write localStorage/sessionStorage\n tab Tab shortcuts (index-based)\n tabs List open tabs\n trace Record a Playwright trace\n type Type into an element by ref from snapshot\n upload Arm file upload for the next file chooser\n wait Wait for time, selector, URL, load state, or JS\n conditions\n waitfordownload Wait for the next download (and save it)\n\nExamples:\n fengming browser status\n fengming browser start\n fengming browser start --headless\n fengming browser stop\n fengming browser tabs\n fengming browser open https://example.com\n fengming browser focus abcd1234\n fengming browser close abcd1234\n fengming browser screenshot\n fengming browser screenshot --full-page\n fengming browser screenshot --ref 12\n fengming browser snapshot\n fengming browser snapshot --format aria --limit 200\n fengming browser snapshot --efficient\n fengming browser snapshot --labels\n fengming browser navigate https://example.com\n fengming browser resize 1280 720\n fengming browser click 12 --double\n fengming browser click-coords 120 340\n fengming browser type 23 \"hello\" --submit\n fengming browser press Enter\n fengming browser hover 44\n fengming browser drag 10 11\n fengming browser select 9 OptionA OptionB\n fengming browser upload /tmp/fengming/uploads/file.pdf\n fengming browser fill --fields '[{\"ref\":\"1\",\"value\":\"Ada\"}]'\n fengming browser dialog --accept\n fengming browser wait --text \"Done\"\n fengming browser evaluate --fn '(el) => el.textContent' --ref 7\n fengming browser console --level error\n fengming browser pdf\n\nDocs: https://docs.fengming.ai/cli/browser\n\n",
|
|
23
|
+
"secretsHelpText": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming secrets [options] [command]\n\nSecrets runtime controls\n\nOptions:\n -h, --help Display help for command\n\nCommands:\n apply Apply a previously generated secrets plan\n audit Audit plaintext secrets, unresolved refs, and precedence drift\n configure Interactive secrets helper (provider setup + SecretRef mapping +\n preflight)\n help Display help for command\n reload Re-resolve secret references and atomically swap runtime snapshot\n\nDocs: https://docs.fengming.ai/gateway/security\n\n",
|
|
24
|
+
"nodesHelpText": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming nodes [options] [command]\n\nManage gateway-owned nodes (pairing, status, invoke, and media)\n\nOptions:\n -h, --help Display help for command\n\nCommands:\n approve Approve a pending pairing request\n camera Capture camera media from a paired node\n canvas Capture or render canvas content from a paired node\n describe Describe a node (capabilities + supported invoke commands)\n help Display help for command\n invoke Invoke a command on a paired node\n list List pending and paired nodes\n location Fetch location from a paired node\n notify Send a local notification on a node (mac only)\n pending List pending pairing requests\n push Send an APNs test push to an iOS node\n reject Reject a pending pairing request\n remove Remove a paired node entry\n rename Rename a paired node (display name override)\n screen Capture screen recordings from a paired node\n status List known nodes with connection status and capabilities\n\nExamples:\n fengming nodes status\n List known nodes with live status.\n fengming nodes pairing pending\n Show pending node pairing requests.\n fengming nodes remove --node <id|name|ip>\n Remove a stale paired node entry.\n fengming nodes invoke --node <id> --command system.which --params '{\"name\":\"uname\"}'\n Invoke a node command directly.\n fengming nodes camera snap --node <id>\n Capture a photo from a node camera.\n\nDocs: https://docs.fengming.ai/cli/nodes\n\n",
|
|
25
25
|
"subcommandHelpText": {
|
|
26
|
-
"doctor": "\nFengMing 0.3.
|
|
27
|
-
"gateway": "\nFengMing 0.3.
|
|
28
|
-
"models": "\nFengMing 0.3.
|
|
29
|
-
"plugins": "\nFengMing 0.3.
|
|
26
|
+
"doctor": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming doctor [options]\n\nHealth checks + quick fixes for the gateway and channels\n\nOptions:\n --allow-exec Allow doctor to execute exec SecretRefs while\n verifying configured secrets (default: false)\n --deep Scan system services for extra gateway installs\n (default: false)\n --fix Apply recommended repairs (alias for --repair)\n (default: false)\n --force Apply aggressive repairs (overwrites custom\n service config) (default: false)\n --generate-gateway-token Generate and configure a gateway token (default:\n false)\n -h, --help Display help for command\n --json With --lint: emit JSON findings instead of human\n output (default: false)\n --lint Run read-only health checks and report findings\n (default: false)\n --no-workspace-suggestions Disable workspace memory system suggestions\n --non-interactive Run without prompts (safe migrations only)\n (default: false)\n --only <id> With --lint: run only the specified check id\n (repeatable) (default: [])\n --repair Apply recommended repairs without prompting\n (default: false)\n --severity-min <level> With --lint: drop findings below this severity\n (info|warning|error)\n --skip <id> With --lint: skip a specific check id (repeatable)\n (default: [])\n --yes Accept defaults without prompting (default: false)\n\nDocs: https://docs.fengming.ai/cli/doctor\n\n",
|
|
27
|
+
"gateway": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming gateway [options] [command]\n\nRun, inspect, and query the WebSocket Gateway\n\nOptions:\n --allow-unconfigured Allow gateway start without enforcing\n gateway.mode=local in config (does not repair\n config) (default: false)\n --auth <mode> Gateway auth mode\n (\"none\"|\"token\"|\"password\"|\"trusted-proxy\")\n --bind <mode> Bind mode\n (\"loopback\"|\"lan\"|\"tailnet\"|\"auto\"|\"custom\").\n Defaults to config gateway.bind (or loopback).\n --claude-cli-logs Deprecated alias for --cli-backend-logs (default:\n false)\n --cli-backend-logs Only show CLI backend logs in the console (includes\n stdout/stderr) (default: false)\n --compact Alias for \"--ws-log compact\" (default: false)\n --dev Create a dev config + workspace if missing (no\n BOOTSTRAP.md) (default: false)\n --force Kill any existing listener on the target port\n before starting (default: false)\n -h, --help Display help for command\n --password <password> Password for auth mode=password\n --password-file <path> Read gateway password from file\n --port <port> Port for the gateway WebSocket\n --raw-stream Log raw model stream events to jsonl (default:\n false)\n --raw-stream-path <path> Raw stream jsonl path\n --reset Reset dev config + credentials + sessions +\n workspace (requires --dev) (default: false)\n --tailscale <mode> Tailscale exposure mode (\"off\"|\"serve\"|\"funnel\")\n --tailscale-reset-on-exit Reset Tailscale serve/funnel configuration on\n shutdown (default: false)\n --token <token> Shared token required in connect.params.auth.token\n (default: FENGMING_GATEWAY_TOKEN env if set)\n --verbose Verbose logging to stdout/stderr (default: false)\n --ws-log <style> WebSocket log style (\"auto\"|\"full\"|\"compact\")\n (default: \"auto\")\n\nCommands:\n call Call a Gateway method\n diagnostics Export local support diagnostics\n discover Discover gateways via Bonjour (local + wide-area if\n configured)\n health Fetch Gateway health\n install Install the Gateway service\n (launchd/systemd/schtasks)\n probe Show gateway reachability, auth capability, and\n read-probe summary (local + remote)\n restart Restart the Gateway service\n (launchd/systemd/schtasks)\n run Run the WebSocket Gateway (foreground)\n stability Fetch payload-free Gateway stability diagnostics\n start Start the Gateway service\n (launchd/systemd/schtasks)\n status Show gateway service status + probe\n connectivity/capability\n stop Stop the Gateway service (launchd/systemd/schtasks)\n uninstall Uninstall the Gateway service\n (launchd/systemd/schtasks)\n usage-cost Fetch usage cost summary from session logs\n\nExamples:\n fengming gateway run\n Run the gateway in the foreground.\n fengming gateway status\n Show service status plus connectivity/capability.\n fengming gateway discover\n Find local and wide-area gateway beacons.\n fengming gateway stability\n Show recent stability diagnostics.\n fengming gateway call health\n Call a gateway RPC method directly.\n\nDocs: https://docs.fengming.ai/cli/gateway\n\n",
|
|
28
|
+
"models": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming models [options] [command]\n\nModel discovery, scanning, and configuration\n\nOptions:\n --agent <id> Agent id to inspect (overrides FENGMING_AGENT_DIR)\n -h, --help Display help for command\n --status-json Output JSON (alias for `models status --json`) (default:\n false)\n --status-plain Plain output (alias for `models status --plain`) (default:\n false)\n\nCommands:\n aliases Manage model aliases\n auth Manage model auth profiles\n fallbacks Manage model fallback list\n image-fallbacks Manage image model fallback list\n list List models (configured by default)\n scan Scan OpenRouter free models for tools + images\n set Set the default model\n set-image Set the image model\n status Show configured model state\n\nDocs: https://docs.fengming.ai/cli/models\n\n",
|
|
29
|
+
"plugins": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming plugins [options] [command]\n\nManage FengMing plugins and extensions\n\nOptions:\n -h, --help Display help for command\n\nCommands:\n build Generate simple tool plugin metadata\n disable Disable a plugin in config\n doctor Report plugin load issues\n enable Enable a plugin in config\n init Create a simple tool plugin project\n inspect Inspect plugin details\n install Install a plugin or hook pack (path, archive, npm spec, git repo,\n clawhub:package, or marketplace entry)\n list List discovered plugins\n marketplace Inspect Claude-compatible plugin marketplaces\n registry Inspect or rebuild the persisted plugin registry\n search Search ClawHub plugin packages\n uninstall Uninstall a plugin\n validate Validate simple tool plugin metadata\n\nDocs: https://docs.fengming.ai/cli/plugins\n\n"
|
|
30
30
|
},
|
|
31
|
-
"rootHelpText": "\nFengMing 0.3.
|
|
31
|
+
"rootHelpText": "\nFengMing 0.3.3 (510c148) — All your chats, one FengMing.\n\nUsage: fengming [options] [command]\n\nOptions:\n --container <name> Run the CLI inside a running Podman/Docker container\n named <name> (default: env FENGMING_CONTAINER)\n --dev Dev profile: isolate state under ~/.fengming-dev, default\n gateway port 19001, and shift derived ports\n (browser/canvas)\n -h, --help Display help for command\n --log-level <level> Global log level override for file + console\n (silent|fatal|error|warn|info|debug|trace)\n --no-color Disable ANSI colors\n --profile <name> Use a named profile (isolates\n FENGMING_STATE_DIR/FENGMING_CONFIG_PATH under\n ~/.fengming-<name>)\n -V, --version output the version number\n\nCommands:\n Hint: commands suffixed with * have subcommands. Run <command> --help for details.\n acp * Run and manage ACP-backed coding agents\n agent Run one agent turn via the Gateway\n agents * Manage isolated agents (workspaces, auth, routing)\n approvals * Manage exec approvals (gateway or node host)\n backup * Create and verify local backup archives for FengMing\n state\n capability * Run provider capability commands (fallback alias: infer)\n channels * Add, remove, login, and inspect messaging channels\n chat Open a local terminal UI (alias for tui --local)\n clawbot * Legacy clawbot command aliases\n commitments * List and manage inferred follow-up commitments\n completion Generate shell completion script\n config * Non-interactive config helpers\n (get/set/unset/file/validate). Default: starts guided\n setup.\n configure Interactive configuration for credentials, channels,\n gateway, and agent defaults\n crestodian Open the interactive setup and repair assistant\n cron * Schedule and inspect Gateway background jobs\n daemon * Manage the Gateway service (legacy alias)\n dashboard Open the Control UI with your current token\n devices * Device pairing + token management\n directory * Lookup contact and group IDs (self, peers, groups) for\n supported chat channels\n dns * DNS helpers for wide-area discovery (Tailscale + CoreDNS)\n docs Search the live FengMing docs\n doctor Diagnose and repair config, Gateway, plugin, and channel\n problems\n exec-policy * Show or synchronize requested exec policy with host\n approvals\n gateway * Run, inspect, and query the FengMing Gateway\n health Fetch detailed health from the running Gateway\n help Display help for command\n hooks * Manage internal agent hooks\n infer * Run provider-backed model, media, search, and embedding\n commands\n logs Tail Gateway logs locally or via RPC\n mcp * Manage FengMing MCP config and channel bridge\n memory * Search, inspect, and reindex memory files\n message * Send, read, and manage channel messages\n migrate * Import state from another agent system\n models * List, scan, and set model providers\n node * Run and manage the headless node host service\n nodes * Pair nodes and run node-host commands through the Gateway\n onboard Interactive onboarding for gateway, workspace, and skills\n pairing * Secure DM pairing (approve inbound requests)\n plugins * Install, enable, disable, and inspect plugins\n proxy * Run the FengMing debug proxy and inspect captured traffic\n qr Generate mobile pairing QR/setup code\n reset Reset local config/state (keeps the CLI installed)\n sandbox * Manage sandbox containers for agent isolation\n secrets * Audit, apply, and reload SecretRef-backed credentials\n security * Security tools and local config audits\n sessions * List stored conversation sessions\n setup Initialize local config and an agent workspace\n skills * List, inspect, and install agent skills\n status Show Gateway, channel, model, and recent-session status\n system * System events, heartbeat, and presence\n tasks * Inspect durable background tasks and flows\n terminal Open a local terminal UI (alias for tui --local)\n transcripts * Inspect stored transcripts\n tui Open a terminal UI connected to the Gateway\n uninstall Uninstall the gateway service + local data (CLI remains)\n update * Update FengMing and inspect update channel status\n webhooks * Webhook helpers and integrations\n\nExamples:\n fengming onboard\n Run guided setup for a local Gateway, workspace, auth, and channels.\n fengming setup\n Create the baseline config, workspace, and session folders.\n fengming configure\n Change models, Gateway, channels, plugins, skills, and health checks.\n fengming status\n Check Gateway, channel, model, and recent-session status.\n fengming doctor --fix\n Repair common config, service, plugin, and channel problems.\n fengming channels add\n Add or update a chat channel account with guided prompts.\n fengming channels status\n See connected messaging accounts and login state.\n fengming --dev gateway\n Run a dev Gateway (isolated state/config) on ws://127.0.0.1:19001.\n fengming gateway run --force\n Start the Gateway and replace anything bound to its port.\n fengming models status\n Show model/provider auth health before running agents.\n fengming plugins list\n Inspect enabled, disabled, and installed plugins.\n fengming agent --to +15555550123 --message \"Run summary\" --deliver\n Run one agent turn through the Gateway and optionally deliver the reply.\n fengming message send --channel telegram --target @mychat --message \"Hi\"\n Send via your Telegram bot.\n\nDocs: https://docs.fengming.ai/cli\n\n"
|
|
32
32
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-
|
|
1
|
+
import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-BWPaSddY.js";import{t as r}from"./string-coerce-BuYUxt7q.js";import{st as i,v as a}from"./index-bZJJ7U8q.js";var o=[`running`,`done`,`error`];function s(e){let t=new Date(e);return!Number.isFinite(e)||Number.isNaN(t.getTime())?``:t.toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`,second:`2-digit`})}function c(e){if(!Number.isFinite(e)||e<0)return n(`common.na`);if(e<1e3)return n(`activity.duration.ms`,{count:String(Math.round(e))});if(e<6e4)return n(`activity.duration.seconds`,{count:(e/1e3).toFixed(1)});let t=Math.round(e/1e3),r=Math.floor(t/60),i=t%60;return n(`activity.duration.minutes`,{minutes:String(r),seconds:String(i)})}function l(e){return n(`activity.status.${e}`)}function u(e){return e===1?n(`activity.argumentHiddenOne`):n(`activity.argumentsHidden`,{count:String(e)})}function d(e){return n(`activity.entrySummary`,{argumentSummary:u(e.hiddenArgumentCount),status:l(e.status),tool:e.toolName})}function f(e,t){return t?r([e.toolName,e.status,e.summary,d(e),e.outputPreview,e.runId,e.toolCallId,e.sessionKey].filter(Boolean).join(` `)).includes(t):!0}function p(e){return i(e.map(e=>e.toolName))}function m(e){let t=r(e.filterText);return e.entries.filter(n=>!e.statusFilters[n.status]||e.toolFilter&&n.toolName!==e.toolFilter?!1:f(n,t))}function h(e,n){return t`
|
|
2
2
|
<label class="activity-status-filter activity-status-filter--${n}">
|
|
3
3
|
<input
|
|
4
4
|
type="checkbox"
|
|
@@ -121,4 +121,4 @@ import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-C
|
|
|
121
121
|
</div>
|
|
122
122
|
</section>
|
|
123
123
|
`}export{_ as renderActivity};
|
|
124
|
-
//# sourceMappingURL=activity-
|
|
124
|
+
//# sourceMappingURL=activity-B7yRLbf3.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{f as e,i as t,p as n,t as r}from"./lit-runtime-DA0-mbwP.js";import{r as i}from"./i18n-
|
|
1
|
+
import{f as e,i as t,p as n,t as r}from"./lit-runtime-DA0-mbwP.js";import{r as i}from"./i18n-BWPaSddY.js";import{t as a}from"./string-coerce-BuYUxt7q.js";import{v as o}from"./markdown-runtime-C9Jq8Bu5.js";import{$ as s,B as c,G as l,H as u,J as d,K as f,Q as p,U as m,V as h,W as g,X as _,Y as ee,Z as v,et as y,i as b,n as x,nt as S,o as C,ot as w,q as te,r as ne,rt as T,t as E,tt as re,v as D,z as O}from"./index-bZJJ7U8q.js";import{r as k}from"./channel-config-extras-GDGUjA2T.js";import{i as A,n as ie,r as ae,t as j}from"./skills-shared-lQxAuc7D.js";function oe(t){let{agent:r,configForm:a,agentFilesList:o,configLoading:c,configSaving:l,configDirty:f,onConfigReload:m,onConfigSave:h,onModelChange:g,onModelFallbacksChange:y,onSelectPanel:b}=t,x=!!(t.defaultId&&r.id===t.defaultId),S=ee(a,r.id),C=r.model,w=(o&&o.agentId===r.id?o.workspace:null)||S.entry?.workspace||S.defaults?.workspace||r.workspace||`default`,ne=S.entry?.model?p(S.entry?.model):S.defaults?.model?p(S.defaults?.model):p(C),T=_(r.agentRuntime),E=p(S.defaults?.model??C),re=s(S.entry?.model),D=s(S.defaults?.model)||(E===`-`?null:te(E))||(a?null:s(C)),O=re??D??null,k=x?O:re,A=v(S.entry?.model)??v(S.defaults?.model)??(a?null:v(C))??[],ie=Array.isArray(S.entry?.skills)?S.entry?.skills:null,ae=ie?.length??null,j=!a||c||l,oe=e=>{let t=A.filter((t,n)=>n!==e);y(r.id,t)};return n`
|
|
2
2
|
<section class="card">
|
|
3
3
|
<div class="card-title">${i(`agents.overview`)}</div>
|
|
4
4
|
<div class="card-sub">${i(`agents.overview.workspaceHint`)}</div>
|
|
@@ -1027,4 +1027,4 @@ Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error
|
|
|
1027
1027
|
`)}
|
|
1028
1028
|
</div>
|
|
1029
1029
|
`}export{Cn as renderAgents};
|
|
1030
|
-
//# sourceMappingURL=agents-
|
|
1030
|
+
//# sourceMappingURL=agents-E-3DAkaW.js.map
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{r as e}from"./i18n-
|
|
2
|
-
//# sourceMappingURL=channel-config-extras-
|
|
1
|
+
import{r as e}from"./i18n-BWPaSddY.js";function t(e,t){if(!e)return null;let n=(e.channels??{})[t];if(n&&typeof n==`object`)return n;let r=e[t];return r&&typeof r==`object`?r:null}function n(t){if(t==null)return e(`common.na`);if(typeof t==`string`||typeof t==`number`||typeof t==`boolean`)return String(t);try{return JSON.stringify(t)}catch{return e(`common.na`)}}function r(e){let r=t(e.configForm,e.channelId);return r?e.fields.flatMap(e=>e in r?[{label:e,value:n(r[e])}]:[]):[]}export{t as n,r,n as t};
|
|
2
|
+
//# sourceMappingURL=channel-config-extras-GDGUjA2T.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-
|
|
1
|
+
import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-BWPaSddY.js";import{at as r,l as i,u as a,z as o}from"./index-bZJJ7U8q.js";import{n as s,t as c}from"./channel-config-extras-GDGUjA2T.js";function l(e,t){let n=e;for(let e of t){if(!n)return null;let t=r(n);if(t===`object`){let t=n.properties??{};if(typeof e==`string`&&t[e]){n=t[e];continue}let r=n.additionalProperties;if(typeof e==`string`&&r&&typeof r==`object`){n=r;continue}return null}if(t===`array`){if(typeof e!=`number`)return null;n=(Array.isArray(n.items)?n.items[0]:n.items)??null;continue}return null}return n}function u(e,t){return s(e,t)??{}}var d=[`groupPolicy`,`streamMode`,`dmPolicy`];function f(e){let n=d.flatMap(t=>t in e?[[t,e[t]]]:[]);return n.length===0?null:t`
|
|
2
2
|
<div class="status-list" style="margin-top: 12px;">
|
|
3
3
|
${n.map(([e,n])=>t`
|
|
4
4
|
<div>
|
|
@@ -117,4 +117,4 @@ ${r.snapshot?JSON.stringify(r.snapshot,null,2):n(`channels.health.noSnapshotYet`
|
|
|
117
117
|
</div>
|
|
118
118
|
</div>
|
|
119
119
|
`}export{S as renderChannels};
|
|
120
|
-
//# sourceMappingURL=channels-
|
|
120
|
+
//# sourceMappingURL=channels-D0c7A9OX.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{f as e,i as t,p as n,s as r}from"./lit-runtime-DA0-mbwP.js";import{r as i}from"./i18n-
|
|
1
|
+
import{f as e,i as t,p as n,s as r}from"./lit-runtime-DA0-mbwP.js";import{r as i}from"./i18n-BWPaSddY.js";import{L as a,M as o,N as s,_ as c,ct as l,it as u,o as d,ot as f,r as p,z as m}from"./index-bZJJ7U8q.js";function h(){return[{value:`ok`,label:i(`cron.runs.runStatusOk`)},{value:`error`,label:i(`cron.runs.runStatusError`)},{value:`skipped`,label:i(`cron.runs.runStatusSkipped`)}]}function g(){return[{value:`delivered`,label:i(`cron.runs.deliveryDelivered`)},{value:`not-delivered`,label:i(`cron.runs.deliveryNotDelivered`)},{value:`unknown`,label:i(`cron.runs.deliveryUnknown`)},{value:`not-requested`,label:i(`cron.runs.deliveryNotRequested`)}]}function _(e,t,n){let r=new Set(e);return n?r.add(t):r.delete(t),Array.from(r)}function v(e,t){return e.length===0?t:e.length<=2?e.join(`, `):`${e[0]} +${e.length-1}`}function y(e){let t=[`last`,...e.channels.filter(Boolean)],n=e.form.deliveryChannel?.trim();n&&!t.includes(n)&&t.push(n);let r=new Set;return t.filter(e=>r.has(e)?!1:(r.add(e),!0))}function b(e,t){if(t===`last`)return`last`;let n=e.channelMeta?.find(e=>e.id===t);return n?.label?n.label:e.channelLabels?.[t]??t}function x(e){return n`
|
|
2
2
|
<div class="field cron-filter-dropdown" data-filter=${e.id}>
|
|
3
3
|
<span>${e.title}</span>
|
|
4
4
|
<details class="cron-filter-dropdown__details">
|
|
@@ -1013,4 +1013,4 @@ import{f as e,i as t,p as n,s as r}from"./lit-runtime-DA0-mbwP.js";import{r as i
|
|
|
1013
1013
|
</div>
|
|
1014
1014
|
</div>
|
|
1015
1015
|
`}export{k as renderCron};
|
|
1016
|
-
//# sourceMappingURL=cron-
|
|
1016
|
+
//# sourceMappingURL=cron-B54j2Vmo.js.map
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-
|
|
1
|
+
import{f as e,p as t}from"./lit-runtime-DA0-mbwP.js";import{r as n}from"./i18n-BWPaSddY.js";import{a as r}from"./index-bZJJ7U8q.js";function i(i){let a=(i.status&&typeof i.status==`object`?i.status.securityAudit:null)?.summary??null,o=a?.critical??0,s=a?.warn??0,c=a?.info??0,l=o>0?`danger`:s>0?`warn`:`success`,u=o>0?n(`debug.security.critical`,{count:String(o)}):s>0?n(`debug.security.warnings`,{count:String(s)}):n(`debug.security.noCriticalIssues`);return t`
|
|
2
2
|
<section class="grid">
|
|
3
3
|
<div class="card">
|
|
4
4
|
<div class="row" style="justify-content: space-between;">
|
|
@@ -94,4 +94,4 @@ ${r(e.payload)}</pre
|
|
|
94
94
|
`}
|
|
95
95
|
</section>
|
|
96
96
|
`}export{i as renderDebug};
|
|
97
|
-
//# sourceMappingURL=debug-
|
|
97
|
+
//# sourceMappingURL=debug-CRcGYNA9.js.map
|