@mx-space/cli 0.14.1 → 0.15.0
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/README.md +35 -11
- package/dist/{Lexical.dev-DTxuYHmG.mjs → Lexical.dev-Cck4n26y.mjs} +998 -584
- package/dist/{Lexical.node-BlCLnfA6.mjs → Lexical.node-D6wf2D5M.mjs} +15 -5
- package/dist/Lexical.prod-DCwS1oTq.mjs +7170 -0
- package/dist/{LexicalClipboard.dev-CdFkLR_D.mjs → LexicalClipboard.dev-CMkPHV7O.mjs} +6 -6
- package/dist/{LexicalClipboard.node-ktUajxsv.mjs → LexicalClipboard.node-m4nZ7IYw.mjs} +2 -2
- package/dist/{LexicalClipboard.prod-DliyLofW.mjs → LexicalClipboard.prod-B_rN1vE1.mjs} +10 -8
- package/dist/{LexicalCodeCore.dev-CL9tHWJX.mjs → LexicalCodeCore.dev-DyJw3i8V.mjs} +62 -72
- package/dist/{LexicalCodeCore.prod-BoMSJc29.mjs → LexicalCodeCore.prod-DPXLHQLF.mjs} +212 -213
- package/dist/{LexicalDragon.dev-CqW7Aq5H.mjs → LexicalDragon.dev-ZkNfMwrE.mjs} +3 -3
- package/dist/{LexicalDragon.node-DLXctJyy.mjs → LexicalDragon.node-Ds9oLUFh.mjs} +2 -2
- package/dist/{LexicalDragon.prod-DHI3T6n5.mjs → LexicalDragon.prod-B58ic2av.mjs} +5 -4
- package/dist/{LexicalExtension.dev-BP-18zns.mjs → LexicalExtension.dev-DvwHs1Xv.mjs} +79 -67
- package/dist/{LexicalExtension.node-BWH6xbzG.mjs → LexicalExtension.node-5OymZQfy.mjs} +4 -2
- package/dist/{LexicalExtension.prod-Cs6OgrDn.mjs → LexicalExtension.prod-Ce0T5smQ.mjs} +372 -358
- package/dist/{LexicalHeadless.dev-DJp__UcP.mjs → LexicalHeadless.dev-DA0WldSR.mjs} +2 -2
- package/dist/{LexicalHeadless.prod-o0v9cIu5.mjs → LexicalHeadless.prod-1kQgKB6c.mjs} +2 -2
- package/dist/{LexicalHtml.dev-DoymwFpG.mjs → LexicalHtml.dev-BDB7CUrx.mjs} +14 -12
- package/dist/{LexicalHtml.node-CVkbWtUA.mjs → LexicalHtml.node-DpVNt7It.mjs} +4 -4
- package/dist/{LexicalHtml.prod-C2b3z99k.mjs → LexicalHtml.prod-HkxM5scw.mjs} +331 -300
- package/dist/{LexicalLink.dev-7cgLOLIe.mjs → LexicalLink.dev-C5zNJlrm.mjs} +65 -59
- package/dist/{LexicalLink.prod-DWFgoXHR.mjs → LexicalLink.prod-Bkt9hQAt.mjs} +196 -201
- package/dist/{LexicalList.dev-Ci2iOxFx.mjs → LexicalList.dev-B7VgME-m.mjs} +55 -82
- package/dist/LexicalList.prod-B8c7TDjH.mjs +951 -0
- package/dist/{LexicalMarkdown.dev-C0ZYCyuR.mjs → LexicalMarkdown.dev-B5z9kLbV.mjs} +62 -42
- package/dist/{LexicalMarkdown.prod-0M-Nc-rh.mjs → LexicalMarkdown.prod-wKzw7FFH.mjs} +255 -202
- package/dist/{LexicalRichText.dev-Cnr1kDym.mjs → LexicalRichText.dev-CUd6Li5F.mjs} +399 -120
- package/dist/{LexicalRichText.node-BUJZAiap.mjs → LexicalRichText.node-BKfaQ-CH.mjs} +12 -8
- package/dist/LexicalRichText.prod-SBewjJHx.mjs +708 -0
- package/dist/{LexicalSelection.dev-C4L7l8OB.mjs → LexicalSelection.dev-D27JOCqj.mjs} +48 -17
- package/dist/{LexicalSelection.node-CLKroUMQ.mjs → LexicalSelection.node-DBEwPjBu.mjs} +5 -4
- package/dist/{LexicalSelection.prod-DzFqpTlw.mjs → LexicalSelection.prod-OaYhXHOL.mjs} +101 -92
- package/dist/{LexicalTable.dev-Cc9-zqKa.mjs → LexicalTable.dev-6IFFOAE0.mjs} +590 -259
- package/dist/LexicalTable.prod-2CaLZ7fH.mjs +2524 -0
- package/dist/{LexicalUtils.dev-BRgK0L6G.mjs → LexicalUtils.dev-DJA7J_7v.mjs} +15 -19
- package/dist/{LexicalUtils.node-BVAwOkL4.mjs → LexicalUtils.node-Df9oPTlA.mjs} +6 -6
- package/dist/{LexicalUtils.prod-C1gtvVDP.mjs → LexicalUtils.prod-Bb7V4Ewg.mjs} +155 -159
- package/dist/bin/mxs.mjs +1 -1
- package/dist/esm-CDcJmHkG.mjs +2 -0
- package/dist/{esm-BNu4sUWV.mjs → esm-DLzrv7gD.mjs} +1837 -6015
- package/dist/index.d.mts +57 -62
- package/dist/index.mjs +1 -1
- package/dist/{mxs-CMX2yklg.mjs → mxs-BIRW5Axj.mjs} +13579 -8682
- package/dist/rolldown-runtime-JspESFgx.mjs +35 -0
- package/dist/vendor/litexml/cli.mjs +7043 -6207
- package/dist/vendor/litexml/litexml-html-preview-client.css +80 -47
- package/dist/vendor/litexml/litexml-html-preview-client.js +14422 -10838
- package/dist/vendor/litexml/style.css +6 -2
- package/package.json +23 -23
- package/skills/commands-ai.md +45 -12
- package/skills/overview.md +1 -1
- package/dist/Lexical.prod-CeB9UQuo.mjs +0 -6816
- package/dist/LexicalList.prod-D0xX5d3G.mjs +0 -944
- package/dist/LexicalRichText.prod-BfbMQ9uM.mjs +0 -538
- package/dist/LexicalTable.prod-BgO4nCxy.mjs +0 -2336
- package/dist/esm-jbwcVZth.mjs +0 -2
package/README.md
CHANGED
|
@@ -471,16 +471,17 @@ Use when authoring or reviewing any Postgres migration in this codebase.
|
|
|
471
471
|
|
|
472
472
|
## AI
|
|
473
473
|
|
|
474
|
-
Manage AI artifacts (summary, translation, insights) produced by the core AI module. Article references accept Snowflake id, post slug, or note nid — the CLI resolves to an article id via post-then-note lookup. Record references (`<recordId>`) are raw Snowflakes.
|
|
474
|
+
Manage AI artifacts (summary, translation, insights, tts, overview) produced by the core AI module. Article references accept Snowflake id, post slug, or note nid — the CLI resolves to an article id via post-then-note lookup. Record references (`<recordId>`) are raw Snowflakes.
|
|
475
475
|
|
|
476
|
-
Generate verbs (`summary regen`, `translate run`, `insights refresh`) enqueue a task on the server, then poll `GET /tasks/:id` until the task reaches a terminal status (`completed`, `partial_failed`, `failed`, `cancelled`). Progress lines write to stderr. Pass `--no-wait` to return immediately with `status: pending` after the task is created. If the server reports `created: false`, an in-flight deduplicated task already exists and the CLI joins it instead of erroring. The polling cadence is 1000 ms by default; override via `MXS_AI_POLL_MS=<n>` for tests.
|
|
476
|
+
Generate verbs (`summary regen`, `summary translate`, `translate run`, `insights refresh`, `insights translate`, `tts run`) enqueue a task on the server, then poll `GET /tasks/:id` until the task reaches a terminal status (`completed`, `partial_failed`, `failed`, `cancelled`). Progress lines write to stderr. Pass `--no-wait` to return immediately with `status: pending` after the task is created. If the server reports `created: false`, an in-flight deduplicated task already exists and the CLI joins it instead of erroring. Pass `--force` to regenerate even when an up-to-date result exists (without it the server skips languages that are already current). Target-language lists are capped at 8 per task server-side. The polling cadence is 1000 ms by default; override via `MXS_AI_POLL_MS=<n>` for tests.
|
|
477
477
|
|
|
478
478
|
### Summary
|
|
479
479
|
|
|
480
480
|
| Command | Description |
|
|
481
481
|
| -------------------------------------------------- | ----------------------------------------------------------------- |
|
|
482
|
-
| `mxs ai summary regen <id> [--to <lang>...]`
|
|
483
|
-
| `mxs ai summary
|
|
482
|
+
| `mxs ai summary regen <id> [--to <lang>...] [--force]` | Regenerate an article's summary (optionally for given languages). |
|
|
483
|
+
| `mxs ai summary translate <id> --to <lang> [--force]` | Translate the existing base summary into one language (fails with a hint when no base summary exists). |
|
|
484
|
+
| `mxs ai summary list [--page <n>] [--size <n>] [--grouped] [--search <q>]` | List summaries (flat or grouped by article). |
|
|
484
485
|
| `mxs ai summary get <recordId>` | Get one summary by record id. |
|
|
485
486
|
| `mxs ai summary by-article <id> [--lang <l>] [--only-db]` | Show an article's summary; `--only-db` skips auto-generate. |
|
|
486
487
|
| `mxs ai summary edit <recordId>` | Edit the `summary` field via `$EDITOR` (JSON envelope). |
|
|
@@ -490,8 +491,8 @@ Generate verbs (`summary regen`, `translate run`, `insights refresh`) enqueue a
|
|
|
490
491
|
|
|
491
492
|
| Command | Description |
|
|
492
493
|
| -------------------------------------------------------- | ------------------------------------------------------------- |
|
|
493
|
-
| `mxs ai translate run <id> --to <lang>... [--no-wait]`
|
|
494
|
-
| `mxs ai translate list [--page <n>] [--size <n>]`
|
|
494
|
+
| `mxs ai translate run <id> --to <lang>... [--force] [--no-wait]` | Translate an article into one or more languages (`--to` required, repeatable). |
|
|
495
|
+
| `mxs ai translate list [--page <n>] [--size <n>] [--search <q>]` | List translations (always grouped by article — no flat list server-side). |
|
|
495
496
|
| `mxs ai translate get <recordId>` | Get one translation by record id. |
|
|
496
497
|
| `mxs ai translate by-article <id> [--lang <l>]` | Show an article's translations (single lang or all). |
|
|
497
498
|
| `mxs ai translate languages <id>` | List languages an article has been translated into. |
|
|
@@ -513,18 +514,41 @@ The i18n dictionary entries layer used by category / topic / note metadata. `--k
|
|
|
513
514
|
|
|
514
515
|
| Command | Description |
|
|
515
516
|
| ------------------------------------------------------ | ------------------------------------------------------------------- |
|
|
516
|
-
| `mxs ai insights refresh <id> [--no-wait]`
|
|
517
|
-
| `mxs ai insights
|
|
517
|
+
| `mxs ai insights refresh <id> [--to <lang>...] [--force] [--no-wait]` | Refresh AI insights for an article; `--to` also translates the result once generated. |
|
|
518
|
+
| `mxs ai insights translate <id> --to <lang> [--force]` | Translate the existing base insights into one language (fails with a hint when no base insights exist). |
|
|
519
|
+
| `mxs ai insights list [--page <n>] [--size <n>] [--grouped] [--search <q>]` | List insights (flat or grouped by article). |
|
|
518
520
|
| `mxs ai insights get <recordId>` | Get one insights record by record id. |
|
|
519
521
|
| `mxs ai insights by-article <id> [--lang <l>] [--only-db]` | Show an article's insights; `--only-db` skips auto-generate. |
|
|
520
522
|
| `mxs ai insights edit <recordId>` | Edit the `content` field via `$EDITOR` (JSON envelope). |
|
|
521
523
|
| `mxs ai insights delete <recordId> [--force]` | Delete an insights record. |
|
|
522
524
|
|
|
525
|
+
### TTS (narrations)
|
|
526
|
+
|
|
527
|
+
| Command | Description |
|
|
528
|
+
| ------------------------------------------------------ | ------------------------------------------------------------------- |
|
|
529
|
+
| `mxs ai tts run <id> [--to <lang>...] [--force] [--no-wait]` | Generate AI narration for an article (per language). |
|
|
530
|
+
| `mxs ai tts list [--page <n>] [--size <n>] [--grouped] [--search <q>]` | List narrations (flat or grouped by article). |
|
|
531
|
+
| `mxs ai tts by-article <id>` | Show all narration rows for an article. |
|
|
532
|
+
| `mxs ai tts voices --provider <id> --model <m>` | Discover TTS voices for a provider/model pair (both required). |
|
|
533
|
+
| `mxs ai tts delete <recordId> [--force]` | Delete a narration record. |
|
|
534
|
+
|
|
535
|
+
### Overview
|
|
536
|
+
|
|
537
|
+
Read-only board aggregating each article's AI artifact state (summary / translation / insights coverage).
|
|
538
|
+
|
|
539
|
+
| Command | Description |
|
|
540
|
+
| ------------------------------------------------------ | ------------------------------------------------------------------- |
|
|
541
|
+
| `mxs ai overview list [--page <n>] [--size <n>] [--search <q>] [--type post\|note\|page]` | List the per-article AI overview board. |
|
|
542
|
+
| `mxs ai overview by-article <id>` | Show the AI artifact overview for one article. |
|
|
543
|
+
|
|
523
544
|
```bash
|
|
524
|
-
mxs ai summary regen my-post --to en --to ja
|
|
545
|
+
mxs ai summary regen my-post --to en --to ja --force
|
|
546
|
+
mxs ai summary translate my-post --to ja
|
|
525
547
|
mxs ai translate run my-post --to en
|
|
526
|
-
mxs ai insights refresh my-post
|
|
527
|
-
mxs ai
|
|
548
|
+
mxs ai insights refresh my-post --to en
|
|
549
|
+
mxs ai tts run my-post --to zh
|
|
550
|
+
mxs ai summary list --grouped --search hello
|
|
551
|
+
mxs ai overview list --type post
|
|
528
552
|
mxs ai translate languages my-post
|
|
529
553
|
```
|
|
530
554
|
|