@mx-space/cli 0.12.1 → 0.13.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 +59 -0
- package/ROADMAP.md +10 -7
- package/dist/bin/mxs.mjs +1 -1
- package/dist/esm-DGvoYR6n.mjs +2 -0
- package/dist/{esm-DFrz5rIo.mjs → esm-lpolVSUJ.mjs} +42 -7
- package/dist/index.d.mts +30 -1
- package/dist/index.mjs +1 -1
- package/dist/{mxs-PcmoYdgj.mjs → mxs-PFV8OJ-M.mjs} +5470 -4574
- package/package.json +1 -1
- package/skills/commands-ai.md +115 -0
- package/skills/overview.md +1 -0
- package/dist/esm-DXO9Afik.mjs +0 -2
package/README.md
CHANGED
|
@@ -447,6 +447,65 @@ echo '{"a":1}' | mxs snippet create --name config
|
|
|
447
447
|
mxs snippet edit web/theme
|
|
448
448
|
```
|
|
449
449
|
|
|
450
|
+
## AI
|
|
451
|
+
|
|
452
|
+
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.
|
|
453
|
+
|
|
454
|
+
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.
|
|
455
|
+
|
|
456
|
+
### Summary
|
|
457
|
+
|
|
458
|
+
| Command | Description |
|
|
459
|
+
| -------------------------------------------------- | ----------------------------------------------------------------- |
|
|
460
|
+
| `mxs ai summary regen <id> [--to <lang>...]` | Regenerate an article's summary (optionally for given languages). |
|
|
461
|
+
| `mxs ai summary list [--page <n>] [--size <n>] [--grouped]` | List summaries (flat or grouped by article). |
|
|
462
|
+
| `mxs ai summary get <recordId>` | Get one summary by record id. |
|
|
463
|
+
| `mxs ai summary by-article <id> [--lang <l>] [--only-db]` | Show an article's summary; `--only-db` skips auto-generate. |
|
|
464
|
+
| `mxs ai summary edit <recordId>` | Edit the `summary` field via `$EDITOR` (JSON envelope). |
|
|
465
|
+
| `mxs ai summary delete <recordId> [--force]` | Delete a summary record. |
|
|
466
|
+
|
|
467
|
+
### Translate
|
|
468
|
+
|
|
469
|
+
| Command | Description |
|
|
470
|
+
| -------------------------------------------------------- | ------------------------------------------------------------- |
|
|
471
|
+
| `mxs ai translate run <id> --to <lang>... [--no-wait]` | Translate an article into one or more languages (`--to` required, repeatable). |
|
|
472
|
+
| `mxs ai translate list [--page <n>] [--size <n>]` | List translations (always grouped by article — no flat list server-side). |
|
|
473
|
+
| `mxs ai translate get <recordId>` | Get one translation by record id. |
|
|
474
|
+
| `mxs ai translate by-article <id> [--lang <l>]` | Show an article's translations (single lang or all). |
|
|
475
|
+
| `mxs ai translate languages <id>` | List languages an article has been translated into. |
|
|
476
|
+
| `mxs ai translate edit <recordId>` | Edit translation fields via `$EDITOR` (JSON envelope). |
|
|
477
|
+
| `mxs ai translate delete <recordId> [--force]` | Delete a translation record. |
|
|
478
|
+
|
|
479
|
+
### Translation Entries
|
|
480
|
+
|
|
481
|
+
The i18n dictionary entries layer used by category / topic / note metadata. `--key-path` accepts only the server-validated set: `category.name`, `topic.name`, `topic.introduce`, `topic.description`, `note.mood`, `note.weather`.
|
|
482
|
+
|
|
483
|
+
| Command | Description |
|
|
484
|
+
| ----------------------------------------------------------------------------- | ------------------------------------------------------ |
|
|
485
|
+
| `mxs ai translate entries list [--page <n>] [--size <n>] [--key-path <p>] [--lang <l>]` | List entries with optional filters. |
|
|
486
|
+
| `mxs ai translate entries generate [--key-path <p>...] [--to <lang>...]` | Trigger regeneration of entries. |
|
|
487
|
+
| `mxs ai translate entries edit <recordId>` | Edit `translatedText` via `$EDITOR` (JSON envelope). |
|
|
488
|
+
| `mxs ai translate entries delete <recordId> [--force]` | Delete an entry. |
|
|
489
|
+
|
|
490
|
+
### Insights
|
|
491
|
+
|
|
492
|
+
| Command | Description |
|
|
493
|
+
| ------------------------------------------------------ | ------------------------------------------------------------------- |
|
|
494
|
+
| `mxs ai insights refresh <id> [--no-wait]` | Refresh AI insights for an article. |
|
|
495
|
+
| `mxs ai insights list [--page <n>] [--size <n>] [--grouped]` | List insights (flat or grouped by article). |
|
|
496
|
+
| `mxs ai insights get <recordId>` | Get one insights record by record id. |
|
|
497
|
+
| `mxs ai insights by-article <id> [--lang <l>] [--only-db]` | Show an article's insights; `--only-db` skips auto-generate. |
|
|
498
|
+
| `mxs ai insights edit <recordId>` | Edit the `content` field via `$EDITOR` (JSON envelope). |
|
|
499
|
+
| `mxs ai insights delete <recordId> [--force]` | Delete an insights record. |
|
|
500
|
+
|
|
501
|
+
```bash
|
|
502
|
+
mxs ai summary regen my-post --to en --to ja
|
|
503
|
+
mxs ai translate run my-post --to en
|
|
504
|
+
mxs ai insights refresh my-post
|
|
505
|
+
mxs ai summary list --grouped
|
|
506
|
+
mxs ai translate languages my-post
|
|
507
|
+
```
|
|
508
|
+
|
|
450
509
|
## Configuration
|
|
451
510
|
|
|
452
511
|
| Command | Description |
|
package/ROADMAP.md
CHANGED
|
@@ -24,15 +24,18 @@
|
|
|
24
24
|
|
|
25
25
|
State map: `unread=0`, `read=1`, `junk=2`. Routes single-id verbs through the server's batch endpoints (`PATCH /comments/batch/state`, `DELETE /comments/batch`) for one unified path.
|
|
26
26
|
|
|
27
|
-
##
|
|
27
|
+
## Shipped in v0.13
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
- `mxs ai` — full management surface for AI artifacts.
|
|
30
|
+
- `mxs ai summary {regen,list,get,by-article,edit,delete}`
|
|
31
|
+
- `mxs ai translate {run,list,get,by-article,languages,edit,delete}`
|
|
32
|
+
- `mxs ai translate entries {list,generate,edit,delete}`
|
|
33
|
+
- `mxs ai insights {refresh,list,get,by-article,edit,delete}`
|
|
34
|
+
- Generate verbs enqueue a task on the server and poll `GET /tasks/:id` until terminal; `--no-wait` returns the `taskId` immediately. Dedup-aware: `created: false` joins the in-flight task.
|
|
30
35
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
- `mxs ai insights refresh`
|
|
35
|
-
- `mxs ai tokens`
|
|
36
|
+
## v2 — AI tokens / usage
|
|
37
|
+
|
|
38
|
+
- `mxs ai tokens` — aggregate `totalCost` and `totalTokens` across recent AI tasks. Pending a final decision on client-side aggregation vs. a dedicated `/ai/usage` endpoint on the server.
|
|
36
39
|
|
|
37
40
|
## v3
|
|
38
41
|
|
package/dist/bin/mxs.mjs
CHANGED
|
@@ -10390,7 +10390,7 @@ const liveServices = /*#__PURE__*/ pipe(/*#__PURE__*/ empty$24(), /*#__PURE__*/
|
|
|
10390
10390
|
*/
|
|
10391
10391
|
const currentServices = /*#__PURE__*/ globalValue(/*#__PURE__*/ Symbol.for("effect/DefaultServices/currentServices"), () => fiberRefUnsafeMakeContext(liveServices));
|
|
10392
10392
|
/** @internal */
|
|
10393
|
-
const sleep$
|
|
10393
|
+
const sleep$3 = (duration) => {
|
|
10394
10394
|
const decodedDuration = decode$4(duration);
|
|
10395
10395
|
return clockWith((clock) => clock.sleep(decodedDuration));
|
|
10396
10396
|
};
|
|
@@ -11860,7 +11860,7 @@ const matchSimple = (concurrency, sequential, concurrent) => {
|
|
|
11860
11860
|
* @since 2.0.0
|
|
11861
11861
|
* @category constructors
|
|
11862
11862
|
*/
|
|
11863
|
-
const sleep$
|
|
11863
|
+
const sleep$2 = sleep$3;
|
|
11864
11864
|
/**
|
|
11865
11865
|
* @since 2.0.0
|
|
11866
11866
|
* @category constructors
|
|
@@ -12037,7 +12037,7 @@ const provideService$1 = /*#__PURE__*/ dual(3, (self, tag, service) => contextWi
|
|
|
12037
12037
|
const provideServiceEffect = /*#__PURE__*/ dual(3, (self, tag, effect) => contextWithEffect$1((env) => flatMap$6(effect, (service) => provideContext$1(self, pipe(env, add$2(tag, service))))));
|
|
12038
12038
|
const repeatN$1 = /*#__PURE__*/ dual(2, (self, n) => suspend$8(() => repeatNLoop(self, n)));
|
|
12039
12039
|
const repeatNLoop = (self, n) => flatMap$6(self, (a) => n <= 0 ? succeed$8(a) : zipRight$3(yieldNow$2(), repeatNLoop(self, n - 1)));
|
|
12040
|
-
const sleep = sleep$
|
|
12040
|
+
const sleep$1 = sleep$2;
|
|
12041
12041
|
const succeedNone = /*#__PURE__*/ succeed$8(/*#__PURE__*/ none$4());
|
|
12042
12042
|
const summarized = /*#__PURE__*/ dual(3, (self, summary, f) => flatMap$6(summary, (start) => flatMap$6(self, (value) => map$7(summary, (end) => [f(start, end), value]))));
|
|
12043
12043
|
const tapError$1 = /*#__PURE__*/ dual(2, (self, f) => matchCauseEffect$2(self, {
|
|
@@ -16347,7 +16347,7 @@ const timeoutFail = /*#__PURE__*/ dual(2, (self, { duration, onTimeout }) => fla
|
|
|
16347
16347
|
duration
|
|
16348
16348
|
})));
|
|
16349
16349
|
/** @internal */
|
|
16350
|
-
const timeoutTo = /*#__PURE__*/ dual(2, (self, { duration, onSuccess, onTimeout }) => fiberIdWith$1((parentFiberId) => uninterruptibleMask$2((restore) => raceFibersWith(restore(self), interruptible$2(sleep(duration)), {
|
|
16350
|
+
const timeoutTo = /*#__PURE__*/ dual(2, (self, { duration, onSuccess, onTimeout }) => fiberIdWith$1((parentFiberId) => uninterruptibleMask$2((restore) => raceFibersWith(restore(self), interruptible$2(sleep$1(duration)), {
|
|
16351
16351
|
onSelfWin: (winner, loser) => flatMap$6(winner.await, (exit) => {
|
|
16352
16352
|
if (exit._tag === "Success") return flatMap$6(winner.inheritAll, () => as$1(interruptAsFiber(loser, parentFiberId), onSuccess(exit.value)));
|
|
16353
16353
|
else return flatMap$6(interruptAsFiber(loser, parentFiberId), () => exitFailCause$1(exit.cause));
|
|
@@ -17576,7 +17576,7 @@ var ScheduleDriverImpl = class {
|
|
|
17576
17576
|
const millis$1 = start(decision.intervals) - now;
|
|
17577
17577
|
if (millis$1 <= 0) return setState.pipe(zipRight$3(updateInfo(this.iterationMeta, now, input, out)), as$1(out));
|
|
17578
17578
|
const duration = millis(millis$1);
|
|
17579
|
-
return pipe(setState, zipRight$3(updateInfo(this.iterationMeta, now, input, out)), zipRight$3(sleep(duration)), as$1(out));
|
|
17579
|
+
return pipe(setState, zipRight$3(updateInfo(this.iterationMeta, now, input, out)), zipRight$3(sleep$1(duration)), as$1(out));
|
|
17580
17580
|
}))))));
|
|
17581
17581
|
}
|
|
17582
17582
|
};
|
|
@@ -20616,6 +20616,41 @@ const forkIn = forkIn$1;
|
|
|
20616
20616
|
*/
|
|
20617
20617
|
const forkScoped = forkScoped$1;
|
|
20618
20618
|
/**
|
|
20619
|
+
* Suspends the execution of an effect for a specified `Duration`.
|
|
20620
|
+
*
|
|
20621
|
+
* **Details**
|
|
20622
|
+
*
|
|
20623
|
+
* This function pauses the execution of an effect for a given duration. It is
|
|
20624
|
+
* asynchronous, meaning that it does not block the fiber executing the effect.
|
|
20625
|
+
* Instead, the fiber is suspended during the delay period and can resume once
|
|
20626
|
+
* the specified time has passed.
|
|
20627
|
+
*
|
|
20628
|
+
* The duration can be specified using various formats supported by the
|
|
20629
|
+
* `Duration` module, such as a string (`"2 seconds"`) or numeric value
|
|
20630
|
+
* representing milliseconds.
|
|
20631
|
+
*
|
|
20632
|
+
* **Example**
|
|
20633
|
+
*
|
|
20634
|
+
* ```ts
|
|
20635
|
+
* import { Effect } from "effect"
|
|
20636
|
+
*
|
|
20637
|
+
* const program = Effect.gen(function*() {
|
|
20638
|
+
* console.log("Starting task...")
|
|
20639
|
+
* yield* Effect.sleep("3 seconds") // Waits for 3 seconds
|
|
20640
|
+
* console.log("Task completed!")
|
|
20641
|
+
* })
|
|
20642
|
+
*
|
|
20643
|
+
* Effect.runFork(program)
|
|
20644
|
+
* // Output:
|
|
20645
|
+
* // Starting task...
|
|
20646
|
+
* // Task completed!
|
|
20647
|
+
* ```
|
|
20648
|
+
*
|
|
20649
|
+
* @since 2.0.0
|
|
20650
|
+
* @category Delays & Timeouts
|
|
20651
|
+
*/
|
|
20652
|
+
const sleep = sleep$1;
|
|
20653
|
+
/**
|
|
20619
20654
|
* Adds a time limit to an effect, triggering a timeout if the effect exceeds
|
|
20620
20655
|
* the duration.
|
|
20621
20656
|
*
|
|
@@ -28089,7 +28124,7 @@ const get$2 = (self_) => {
|
|
|
28089
28124
|
self.state = stateEmpty;
|
|
28090
28125
|
return scopeClose(state.scope, exitVoid$1);
|
|
28091
28126
|
}
|
|
28092
|
-
return sleep(self.idleTimeToLive).pipe(interruptible$2, zipRight$3(suspend$8(() => {
|
|
28127
|
+
return sleep$1(self.idleTimeToLive).pipe(interruptible$2, zipRight$3(suspend$8(() => {
|
|
28093
28128
|
if (self.state._tag === "Acquired" && self.state.refCount === 0) {
|
|
28094
28129
|
self.state = stateEmpty;
|
|
28095
28130
|
return scopeClose(state.scope, exitVoid$1);
|
|
@@ -37649,4 +37684,4 @@ const unsafeAdd = /*#__PURE__*/ dual((args) => isFiberSet(args[0]), (self, fiber
|
|
|
37649
37684
|
*/
|
|
37650
37685
|
const join = (self) => _await(self.deferred);
|
|
37651
37686
|
//#endregion
|
|
37652
|
-
export { drain as $,
|
|
37687
|
+
export { drain as $, identity as $a, reduce$7 as $i, try_ as $n, get$9 as $r, either$1 as $t, compose as A, pipeArguments as Aa, empty$26 as Ai, orElse$3 as An, Scope as Ar, encodeSync as At, ensuring as B, cached$1 as Ba, head$2 as Bi, scoped$3 as Bn, set$2 as Br, async as Bt, Number$ as C, some$1 as Ca, isConfigError as Ci, match$2 as Cn, Equivalence$2 as Cr, currentContext as Ct, String$ as D, left as Da, appendAll$2 as Di, onError as Dn, taggedEnum as Dr, unsafeMake$3 as Dt, Schema_exports as E, string$2 as Ea, append$2 as Ei, negate as En, tagged as Er, get$3 as Et, transform as F, redact as Fa, findFirstIndex as Fi, retry as Fn, isFailure as Fr, addFinalizer as Ft, mapError as G, hasProperty as Ga, join$3 as Gi, suspend$6 as Gn, updateAs as Gr, catchIf as Gt, fromChannel as H, hash as Ha, isArray as Hi, serviceOption as Hn, updateAndGet as Hr, catchAll as Ht, make$5 as I, symbolRedactable as Ia, findLast as Ii, runFork$1 as In, void_$2 as Ir, all as It, splitLines as J, globalValue as Ja, match$8 as Ji, tapError as Jn, cons as Jr, catchTags as Jt, run as K, isObject as Ka, make$48 as Ki, sync$1 as Kn, CommitPrototype as Kr, catchSome as Kt, isConfig as L, toStringUnknown as La, flatMap$8 as Li, runSync as Ln, ParentSpan as Lr, annotateLogs as Lt, decodeUnknown as M, Class$5 as Ma, filter$4 as Mi, provide$1 as Mn, isInterrupted as Mr, _void as Mt, int as N, NodeInspectSymbol as Na, filterMap as Ni, provideService as Nn, isInterruptedOnly as Nr, acquireRelease as Nt, TaggedError as O, merge$3 as Oa, contains as Oi, onInterrupt as On, error as Or, nominal as Ot, optional as P, format$4 as Pa, findFirst$1 as Pi, repeatN as Pn, fail$7 as Pr, acquireUseRelease$2 as Pt, unwrapScoped as Q, dual as Qa, prepend$2 as Qi, tryPromise as Qn, fromIterable$5 as Qr, dieMessage as Qt, asyncScoped as R, equals$3 as Ra, fromIterable$10 as Ri, runtime as Rn, get$5 as Rr, as as Rt, Literal as S, orElse$5 as Sa, omit$3 as Si, mapInputContext as Sn, unsafeDone as Sr, succeed$1 as St, Record as T, mapInput as Ta, allocate as Ti, matchEffect as Tn, TaggedError$1 as Tr, currentTracerEnabled as Tt, fromReadableStream as U, string$3 as Ua, isEmptyReadonlyArray as Ui, sleep as Un, allLevels as Ur, catchAllCause$1 as Ut, fail as V, combine$7 as Va, headNonEmpty$2 as Vi, serviceFunctions as Vn, update$1 as Vr, cached as Vt, mapChunks as W, symbol$1 as Wa, isNonEmptyReadonlyArray as Wi, succeed$3 as Wn, getOrDefault as Wr, catchAllDefect as Wt, transduce as X, constUndefined as Xa, matchRight as Xi, timeout as Xn, of as Xr, contextWithEffect as Xt, suspend$1 as Y, constFalse as Ya, matchLeft as Yi, tapErrorCause as Yn, isNil as Yr, context as Yt, unwrap as Z, constVoid as Za, of$2 as Zi, tryMap as Zn, empty$19 as Zr, die as Zt, fromString as _, isOption as _a, Reference as _i, logError as _n, failCause$3 as _r, effect$1 as _t, make$1 as a, tailNonEmpty$1 as aa, add as ai, filterOrDieMessage as an, useSpan as ar, embedInput as at, Defect as b, match$9 as ba, getOption$1 as bi, mapBoth$1 as bn, make$15 as br, provideMerge as bt, defaultLogger as c, getEquivalence$5 as ca, remove$1 as ci, fnUntraced as cn, withParentSpan as cr, fromEffect as ct, get as d, flatMap$9 as da, map$11 as di, forkScoped as dn, zipRight$1 as dr, write as dt, reduceRight as ea, has$4 as ei, ensuring$4 as en, pipe as eo, uninterruptible as er, foldLeftChunks as et, make$3 as f, fromNullable as fa, of$1 as fi, gen as fn, zipWith as fr, spaced as ft, when as g, isNone as ga, GenericTag as gi, locally as gn, fail$5 as gr, make$10 as gt, value as h, getOrUndefined as ha, unsafeFromArray as hi, isEffect as hn, complete as hr, get$1 as ht, isMailbox as i, splitAt as ia, make$39 as ii, filter$1 as in, __toESM as io, unsafeMakeSemaphore as ir, acquireUseRelease as it, declare as j, BaseProto as ja, every$1 as ji, orElseFail as jn, addFinalizer$1 as jr, is as jt, Union as k, right as ka, drop$1 as ki, orDie as kn, log as kr, decodeSync as kt, prettyLoggerDefault as l, map$13 as la, seconds as li, forEach$2 as ln, zip$1 as lr, suspend$2 as lt, orElse as m, getOrThrow as ma, toArray$1 as mi, interruptible as mn, _await as mr, updateContext as mt, make as n, sort as na, make$36 as ni, failCause$2 as nn, __exportAll as no, unlessEffect as nr, fromChannel$1 as nt, toChannel as o, take$3 as oa, fromIterable$6 as oi, flatMap$4 as on, when$2 as or, ensuring$1 as ot, updateEffect as p, getOrElse as pa, reduce$6 as pi, ignore as pn, DeferredTypeId as pr, runFork as pt, runCollect as q, isTagged as qa, map$12 as qi, tap as qn, round as qr, catchTag as qt, unsafeAdd as r, span as ra, set$4 as ri, failSync as rn, __require as ro, unsafeMakeLatch as rr, unwrapScoped$1 as rt, unify as s, unsafeGet$3 as sa, has$5 as si, flatten$3 as sn, withFiberRuntime as sr, flatMap as st, join as t, some as ta, isEmpty$5 as ti, fail$4 as tn, __commonJSMin as to, uninterruptibleMask as tr, forEach as tt, withMinimumLogLevel as u, filter$5 as ua, appendAll$1 as ui, forkDaemon as un, zipLeft as ur, void_ as ut, Cause as v, isSome as va, Tag as vi, logWarning as vn, interrupt$1 as vr, mergeAll$1 as vt, NumberFromString as w, boolean as wa, isMissingDataOnly as wi, matchCauseEffect as wn, Error$1 as wr, currentLoggers as wt, Int as x, none$4 as xa, merge$1 as xi, mapError$4 as xn, succeed$4 as xr, scoped$2 as xt, Date$ as y, map$14 as ya, get$13 as yi, map$3 as yn, isDone as yr, provide as yt, bufferChunks as z, symbol as za, getSomes as zi, scope as zn, make$27 as zr, asVoid as zt };
|
package/dist/index.d.mts
CHANGED
|
@@ -1493,6 +1493,35 @@ declare class SkillCorpusEmpty extends SkillCorpusEmpty_base<{
|
|
|
1493
1493
|
readonly hint?: string;
|
|
1494
1494
|
readonly cause?: unknown;
|
|
1495
1495
|
}> {}
|
|
1496
|
+
declare const AiTaskCreateFailed_base: new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => YieldableError & {
|
|
1497
|
+
readonly _tag: "AiTaskCreateFailed";
|
|
1498
|
+
} & Readonly<A>;
|
|
1499
|
+
declare class AiTaskCreateFailed extends AiTaskCreateFailed_base<{
|
|
1500
|
+
readonly message?: string;
|
|
1501
|
+
readonly details?: unknown;
|
|
1502
|
+
readonly hint?: string;
|
|
1503
|
+
readonly cause?: unknown;
|
|
1504
|
+
}> {}
|
|
1505
|
+
declare const AiTaskFailed_base: new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => YieldableError & {
|
|
1506
|
+
readonly _tag: "AiTaskFailed";
|
|
1507
|
+
} & Readonly<A>;
|
|
1508
|
+
declare class AiTaskFailed extends AiTaskFailed_base<{
|
|
1509
|
+
readonly message?: string;
|
|
1510
|
+
readonly taskId?: string;
|
|
1511
|
+
readonly status?: string;
|
|
1512
|
+
readonly details?: unknown;
|
|
1513
|
+
readonly hint?: string;
|
|
1514
|
+
}> {}
|
|
1515
|
+
declare const AiRecordNotFound_base: new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => YieldableError & {
|
|
1516
|
+
readonly _tag: "AiRecordNotFound";
|
|
1517
|
+
} & Readonly<A>;
|
|
1518
|
+
declare class AiRecordNotFound extends AiRecordNotFound_base<{
|
|
1519
|
+
readonly message?: string;
|
|
1520
|
+
readonly kind?: string;
|
|
1521
|
+
readonly ref?: string;
|
|
1522
|
+
readonly details?: unknown;
|
|
1523
|
+
readonly hint?: string;
|
|
1524
|
+
}> {}
|
|
1496
1525
|
declare const Generic_base: new <A extends Record<string, any> = {}>(args: VoidIfEmpty<{ readonly [P in keyof A as P extends "_tag" ? never : P]: A[P] }>) => YieldableError & {
|
|
1497
1526
|
readonly _tag: "Generic";
|
|
1498
1527
|
} & Readonly<A>;
|
|
@@ -1502,7 +1531,7 @@ declare class Generic extends Generic_base<{
|
|
|
1502
1531
|
readonly hint?: string;
|
|
1503
1532
|
readonly cause?: unknown;
|
|
1504
1533
|
}> {}
|
|
1505
|
-
type CliError = AuthMissing | AuthExpired | AuthDenied | AuthProbe | NetworkTimeout | NetworkDns | NetworkRefused | ValidationFailed | ValidationXml | ValidationJson | ServerError | ResourceNotFound | ConfigMissingApiUrl | ConfigMissingToken | ConfigMigrationFailed | ProfileNotFound | ProfileNoneActive | ProfileInvalidName | WriteRequiresExplicit | UpdateDevEnvironment | UpdateTransientInstall | UpdatePmUnknown | UpdateRegistryUnreachable | UpdateNodeIncompatible | UpdateSpawnFailed | UpdatePermissionDenied | ArgvParse | ChapterNotFound | SkillCorpusEmpty | Generic;
|
|
1534
|
+
type CliError = AuthMissing | AuthExpired | AuthDenied | AuthProbe | NetworkTimeout | NetworkDns | NetworkRefused | ValidationFailed | ValidationXml | ValidationJson | ServerError | ResourceNotFound | ConfigMissingApiUrl | ConfigMissingToken | ConfigMigrationFailed | ProfileNotFound | ProfileNoneActive | ProfileInvalidName | WriteRequiresExplicit | UpdateDevEnvironment | UpdateTransientInstall | UpdatePmUnknown | UpdateRegistryUnreachable | UpdateNodeIncompatible | UpdateSpawnFailed | UpdatePermissionDenied | ArgvParse | ChapterNotFound | SkillCorpusEmpty | AiTaskCreateFailed | AiTaskFailed | AiRecordNotFound | Generic;
|
|
1506
1535
|
type CliErrorTag = CliError['_tag'];
|
|
1507
1536
|
declare const tagToCode: Record<CliErrorTag, string>;
|
|
1508
1537
|
declare const codeForTag: (tag: CliErrorTag) => string;
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as defaultMessageFor, c as tagToCode, i as codeForTag, l as toErrorEnvelope, n as defaultGlobalFlags, o as exitCodeForError, r as parseGlobalFlags, s as exitCodeForTag, t as run } from "./mxs-
|
|
1
|
+
import { a as defaultMessageFor, c as tagToCode, i as codeForTag, l as toErrorEnvelope, n as defaultGlobalFlags, o as exitCodeForError, r as parseGlobalFlags, s as exitCodeForTag, t as run } from "./mxs-PFV8OJ-M.mjs";
|
|
2
2
|
export { codeForTag, defaultGlobalFlags, defaultMessageFor, exitCodeForError, exitCodeForTag, parseGlobalFlags, run, tagToCode, toErrorEnvelope };
|