@melius-ai/cli 0.5.0 → 0.5.2
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/bin/mel.js
CHANGED
|
@@ -8086,6 +8086,9 @@ var AgentAssetSearchQuerySchema = external_exports.object({
|
|
|
8086
8086
|
fileType: FileTypeSchema.optional(),
|
|
8087
8087
|
canvasId: external_exports.string().uuid().optional().describe(
|
|
8088
8088
|
'Optional. Omit to search the whole team library \u2014 this is the default and what nearly every request wants (e.g. "use the asset I have"). Only set this to scope to a DIFFERENT canvas the member explicitly names ("search my other canvas"), resolving the id from canvas_list. Do NOT pass the canvas the chat is currently on (its assets are already visible via canvas_content, and scoping there hides whole-library matches), and never guess an id.'
|
|
8089
|
+
),
|
|
8090
|
+
showInThread: external_exports.boolean().optional().describe(
|
|
8091
|
+
'Slack only. Set true when the member only wants to SEE the matched asset(s) \u2014 "find X and show it to me", "do I have Y?" \u2014 and is NOT asking to place, edit, or build on them. Skips the selection card and posts every match straight into the Slack thread as image files. Leave unset (the default) whenever the member wants to USE an asset on the canvas, so the selection card renders and a canvas gets bound.'
|
|
8089
8092
|
)
|
|
8090
8093
|
});
|
|
8091
8094
|
var AgentAssetSearchModeSchema = external_exports.enum(["semantic", "filename"]);
|
|
@@ -9924,6 +9927,16 @@ var TemplatePortSchema = external_exports.discriminatedUnion("direction", [
|
|
|
9924
9927
|
required: external_exports.boolean().optional(),
|
|
9925
9928
|
/** Creator-set cap on connections into this input. Absent = unlimited. */
|
|
9926
9929
|
maxConnections: external_exports.number().int().positive().optional(),
|
|
9930
|
+
/**
|
|
9931
|
+
* Hidden input: not exposed as a connectable handle on the collapsed box
|
|
9932
|
+
* — its value comes from the source baked into the template definition
|
|
9933
|
+
* (used as-is for an upload/custom text, regenerated for a generation
|
|
9934
|
+
* node). The port is still recorded (rather than dropped) so it
|
|
9935
|
+
* round-trips for editing in the internal tool. At apply, hidden input
|
|
9936
|
+
* ports are not materialized as instance bindings, so no handle renders
|
|
9937
|
+
* and they never gate a run.
|
|
9938
|
+
*/
|
|
9939
|
+
hidden: external_exports.boolean().optional(),
|
|
9927
9940
|
/**
|
|
9928
9941
|
* Every internal handle this input fans out to. Absent/empty = the
|
|
9929
9942
|
* single `nodeKey`/`internalHandle` binding (pre-fan-out templates).
|
|
@@ -9957,6 +9970,13 @@ var InstancePortBindingSchema = external_exports.discriminatedUnion("direction",
|
|
|
9957
9970
|
direction: external_exports.literal("input"),
|
|
9958
9971
|
required: external_exports.boolean().optional(),
|
|
9959
9972
|
maxConnections: external_exports.number().int().positive().optional(),
|
|
9973
|
+
/**
|
|
9974
|
+
* Mirror of `TemplatePort.hidden`. Hidden input ports are not
|
|
9975
|
+
* materialized as instance bindings today (the box never renders them),
|
|
9976
|
+
* so this is carried for symmetry/forward-compat rather than read at
|
|
9977
|
+
* runtime.
|
|
9978
|
+
*/
|
|
9979
|
+
hidden: external_exports.boolean().optional(),
|
|
9960
9980
|
/**
|
|
9961
9981
|
* Every internal endpoint this input fans out to (resolved form of
|
|
9962
9982
|
* `TemplatePort.internalTargets`). Absent/empty = the single
|
|
@@ -12104,6 +12124,15 @@ var ModelCostSchema = external_exports.discriminatedUnion("type", [
|
|
|
12104
12124
|
external_exports.object({
|
|
12105
12125
|
type: external_exports.literal("estimated"),
|
|
12106
12126
|
creditCost: external_exports.number()
|
|
12127
|
+
}),
|
|
12128
|
+
// A cost that varies between a floor and a ceiling depending on inputs — e.g.
|
|
12129
|
+
// text models that accept video input are free for text-to-text
|
|
12130
|
+
// (`minCreditCost`) but charge a flat fee when a video is attached
|
|
12131
|
+
// (`maxCreditCost`). Rendered as a "min–max" range.
|
|
12132
|
+
external_exports.object({
|
|
12133
|
+
type: external_exports.literal("range"),
|
|
12134
|
+
minCreditCost: external_exports.number(),
|
|
12135
|
+
maxCreditCost: external_exports.number()
|
|
12107
12136
|
})
|
|
12108
12137
|
]);
|
|
12109
12138
|
var InputFileSizeConstraintsResponseSchema = external_exports.object({
|
|
@@ -13752,7 +13781,7 @@ function isMajorUpgrade(current, latest) {
|
|
|
13752
13781
|
return l[0] > c17[0];
|
|
13753
13782
|
}
|
|
13754
13783
|
function shouldShowUpgradeNotice(ctx = {}) {
|
|
13755
|
-
const current = ctx.current ?? "0.5.
|
|
13784
|
+
const current = ctx.current ?? "0.5.2";
|
|
13756
13785
|
const latest = ctx.latest ?? serverLatestVersion;
|
|
13757
13786
|
const env = ctx.env ?? process.env;
|
|
13758
13787
|
const isTty = ctx.isTty ?? Boolean(process.stderr.isTTY);
|
|
@@ -13767,13 +13796,13 @@ function formatUpgradeNotice(current, latest) {
|
|
|
13767
13796
|
const breaking = isMajorUpgrade(current, latest) ? " This is a new major version that may include breaking changes." : "";
|
|
13768
13797
|
return `
|
|
13769
13798
|
mel ${latest} is available (you have ${current}).${breaking}
|
|
13770
|
-
Upgrade: npm install -g @melius-ai/cli@latest (or: brew upgrade mel) Silence: MEL_NO_UPDATE_NOTIFIER=1
|
|
13799
|
+
Upgrade: npm install -g @melius-ai/cli@latest (or: brew update && brew upgrade mel) Silence: MEL_NO_UPDATE_NOTIFIER=1
|
|
13771
13800
|
`;
|
|
13772
13801
|
}
|
|
13773
13802
|
function printUpgradeNoticeIfNeeded(ctx = {}) {
|
|
13774
13803
|
try {
|
|
13775
13804
|
if (!shouldShowUpgradeNotice(ctx)) return;
|
|
13776
|
-
const current = ctx.current ?? "0.5.
|
|
13805
|
+
const current = ctx.current ?? "0.5.2";
|
|
13777
13806
|
const latest = ctx.latest ?? serverLatestVersion;
|
|
13778
13807
|
process.stderr.write(formatUpgradeNotice(current, latest));
|
|
13779
13808
|
} catch {
|
|
@@ -18451,6 +18480,7 @@ Examples:
|
|
|
18451
18480
|
}
|
|
18452
18481
|
|
|
18453
18482
|
// src/commands/asset.ts
|
|
18483
|
+
var ASSET_PLAN_REQUIRED_SUGGESTION = "Asset search requires a Pro or Enterprise plan \u2014 upgrade at https://app.melius.com/billing";
|
|
18454
18484
|
function registerAssetCommands(program2, getOutputOpts) {
|
|
18455
18485
|
const asset = program2.command("asset").description(
|
|
18456
18486
|
"Search and place the team's Files (DAM) library assets. Requires a Pro or Enterprise plan"
|
|
@@ -18491,7 +18521,11 @@ Examples:
|
|
|
18491
18521
|
}
|
|
18492
18522
|
});
|
|
18493
18523
|
if (result.status !== 200) {
|
|
18494
|
-
handleApiError(
|
|
18524
|
+
handleApiError(
|
|
18525
|
+
result.status,
|
|
18526
|
+
result.body,
|
|
18527
|
+
result.status === 403 ? ASSET_PLAN_REQUIRED_SUGGESTION : void 0
|
|
18528
|
+
);
|
|
18495
18529
|
}
|
|
18496
18530
|
writeJson(result.body, getOutputOpts());
|
|
18497
18531
|
}
|
|
@@ -18520,7 +18554,11 @@ Examples:
|
|
|
18520
18554
|
body: { assetIds }
|
|
18521
18555
|
});
|
|
18522
18556
|
if (result.status !== 200) {
|
|
18523
|
-
handleApiError(
|
|
18557
|
+
handleApiError(
|
|
18558
|
+
result.status,
|
|
18559
|
+
result.body,
|
|
18560
|
+
result.status === 403 ? ASSET_PLAN_REQUIRED_SUGGESTION : void 0
|
|
18561
|
+
);
|
|
18524
18562
|
}
|
|
18525
18563
|
writeJson(result.body, getOutputOpts());
|
|
18526
18564
|
});
|
|
@@ -18661,7 +18699,7 @@ function withDefaultHelp(args) {
|
|
|
18661
18699
|
}
|
|
18662
18700
|
function createProgram() {
|
|
18663
18701
|
const program2 = new Command();
|
|
18664
|
-
program2.name("mel").description("Mel \u2014 Melius agent CLI").version("0.5.
|
|
18702
|
+
program2.name("mel").description("Mel \u2014 Melius agent CLI").version("0.5.2").showSuggestionAfterError(true).option("--json", "Force JSON output (default)").option("--text", "Human-readable output").option(
|
|
18665
18703
|
"--fields <fields>",
|
|
18666
18704
|
"Select specific output fields (comma-separated)"
|
|
18667
18705
|
).option("--quiet", "Suppress output, exit code only").option("--verbose", "Log request/response metadata to stderr").addHelpText(
|
package/dist/src/index.js
CHANGED