democut 1.0.57 → 1.0.58
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/cli.js +127 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -6916,7 +6916,7 @@ import { realpathSync } from "fs";
|
|
|
6916
6916
|
import { fileURLToPath } from "url";
|
|
6917
6917
|
|
|
6918
6918
|
// src/version.ts
|
|
6919
|
-
var VERSION = "1.0.
|
|
6919
|
+
var VERSION = "1.0.58";
|
|
6920
6920
|
|
|
6921
6921
|
// src/device-flow.ts
|
|
6922
6922
|
var DeviceFlowError = class extends Error {
|
|
@@ -9026,6 +9026,84 @@ var GENERATED_TOOLS = [
|
|
|
9026
9026
|
"openWorldHint": false
|
|
9027
9027
|
}
|
|
9028
9028
|
},
|
|
9029
|
+
{
|
|
9030
|
+
"name": "democut_list_folders",
|
|
9031
|
+
"description": "\uD504\uB85C\uC81D\uD2B8 \uD3F4\uB354 \uBAA9\uB85D(1\uB381\uC2A4, \uC911\uCCA9 \uC5C6\uC74C) + \uD3F4\uB354\uBCC4 \uD504\uB85C\uC81D\uD2B8 \uC218. \uBD80\uC791\uC6A9\uB3C4 \uACFC\uAE08\uB3C4 \uC5C6\uB2E4. \uD504\uB85C\uC81D\uD2B8\uB97C \uD3F4\uB354\uC5D0 \uB123\uC73C\uB824\uBA74 \uC5EC\uAE30\uC11C \uBC1B\uC740 id \uB97C democut_update_project \uC758 folder_id \uC5D0 \uC900\uB2E4. \uB2E4\uC74C \uD638\uCD9C: democut_create_folder, democut_update_project.",
|
|
9032
|
+
"inputSchema": {
|
|
9033
|
+
"type": "object",
|
|
9034
|
+
"properties": {},
|
|
9035
|
+
"required": [],
|
|
9036
|
+
"additionalProperties": false
|
|
9037
|
+
},
|
|
9038
|
+
"outputSchema": {
|
|
9039
|
+
"type": "object",
|
|
9040
|
+
"properties": {
|
|
9041
|
+
"folders": {
|
|
9042
|
+
"type": "array"
|
|
9043
|
+
}
|
|
9044
|
+
},
|
|
9045
|
+
"required": [
|
|
9046
|
+
"folders"
|
|
9047
|
+
]
|
|
9048
|
+
},
|
|
9049
|
+
"annotations": {
|
|
9050
|
+
"readOnlyHint": true,
|
|
9051
|
+
"destructiveHint": false,
|
|
9052
|
+
"idempotentHint": true,
|
|
9053
|
+
"openWorldHint": false
|
|
9054
|
+
}
|
|
9055
|
+
},
|
|
9056
|
+
{
|
|
9057
|
+
"name": "democut_create_folder",
|
|
9058
|
+
"description": "\uD504\uB85C\uC81D\uD2B8 \uD3F4\uB354\uB97C \uB9CC\uB4E0\uB2E4(0\uC6D0). \uAC19\uC740 \uC774\uB984\uC744 \uC5EC\uB7FF \uB9CC\uB4E4 \uC218 \uC788\uC73C\uB2C8 **\uBA3C\uC800 democut_list_folders \uB85C \uC788\uB294\uC9C0 \uBCF4\uB77C** \u2014 \uBB3B\uC9C0 \uC54A\uACE0 \uB9CC\uB4E4\uBA74 \uAC19\uC740 \uC774\uB984\uC758 \uD3F4\uB354\uAC00 \uC313\uC778\uB2E4. \uB9CC\uB4E0 \uB4A4 \uD504\uB85C\uC81D\uD2B8\uB97C \uB123\uB294 \uAC83\uC740 update_project(folder_id=\u2026) \uB2E4. \uB2E4\uC74C \uD638\uCD9C: democut_update_project, democut_list_folders.",
|
|
9059
|
+
"inputSchema": {
|
|
9060
|
+
"type": "object",
|
|
9061
|
+
"properties": {
|
|
9062
|
+
"name": {
|
|
9063
|
+
"description": "\uD3F4\uB354 \uC774\uB984(1~80\uC790, \uC55E\uB4A4 \uACF5\uBC31\uC740 \uC11C\uBC84\uAC00 \uC790\uB978\uB2E4)",
|
|
9064
|
+
"maxLength": 80,
|
|
9065
|
+
"minLength": 1,
|
|
9066
|
+
"type": "string"
|
|
9067
|
+
}
|
|
9068
|
+
},
|
|
9069
|
+
"required": [
|
|
9070
|
+
"name"
|
|
9071
|
+
],
|
|
9072
|
+
"additionalProperties": false
|
|
9073
|
+
},
|
|
9074
|
+
"outputSchema": {
|
|
9075
|
+
"type": "object",
|
|
9076
|
+
"properties": {
|
|
9077
|
+
"id": {
|
|
9078
|
+
"type": "string"
|
|
9079
|
+
},
|
|
9080
|
+
"name": {
|
|
9081
|
+
"type": "string"
|
|
9082
|
+
},
|
|
9083
|
+
"project_count": {
|
|
9084
|
+
"type": "integer"
|
|
9085
|
+
},
|
|
9086
|
+
"created_at": {
|
|
9087
|
+
"type": "string"
|
|
9088
|
+
},
|
|
9089
|
+
"updated_at": {
|
|
9090
|
+
"type": "string"
|
|
9091
|
+
}
|
|
9092
|
+
},
|
|
9093
|
+
"required": [
|
|
9094
|
+
"id",
|
|
9095
|
+
"name",
|
|
9096
|
+
"created_at",
|
|
9097
|
+
"updated_at"
|
|
9098
|
+
]
|
|
9099
|
+
},
|
|
9100
|
+
"annotations": {
|
|
9101
|
+
"readOnlyHint": false,
|
|
9102
|
+
"destructiveHint": false,
|
|
9103
|
+
"idempotentHint": false,
|
|
9104
|
+
"openWorldHint": false
|
|
9105
|
+
}
|
|
9106
|
+
},
|
|
9029
9107
|
{
|
|
9030
9108
|
"name": "democut_credit_balance",
|
|
9031
9109
|
"description": "\uB0B4 \uC6CC\uD06C\uC2A4\uD398\uC774\uC2A4\uC758 \uD06C\uB808\uB527 \uC794\uC561. \uBD80\uC791\uC6A9\uB3C4 \uACFC\uAE08\uB3C4 \uC5C6\uB2E4. \uB3C8\uC774 \uB098\uAC00\uB294 \uC791\uC5C5(democut_make_cuts \uB4F1)\uC744 \uC81C\uCD9C\uD558\uAE30 **\uC804\uC5D0** \uD655\uC778\uD558\uB77C \u2014 \uBD80\uC871\uD558\uBA74 \uC81C\uCD9C\uC774 402 \uB85C \uAC70\uBD80\uB418\uACE0, \uADF8\uAC83\uC744 \uBBF8\uB9AC \uC544\uB294 \uD3B8\uC774 \uB0AB\uB2E4(democut_estimate_cuts \uC758 can_afford \uAC00 \uC788\uC73C\uBA74 \uB9E4\uBC88 \uBD80\uB97C \uD544\uC694\uB294 \uC5C6\uB2E4). \uBAA8\uC790\uB77C\uBA74 \uC0AC\uC6A9\uC790\uC5D0\uAC8C \uC54C\uB9AC\uACE0 \uC6CC\uD06C\uC2A4\uD398\uC774\uC2A4 \uAD00\uB9AC\uC790\uC5D0\uAC8C \uCDA9\uC804\uC744 \uC694\uCCAD\uD558\uB3C4\uB85D \uC548\uB0B4\uD558\uB77C \u2014 \uB124\uAC00 \uC9C1\uC811 \uCDA9\uC804\uD560 \uC218\uB294 \uC5C6\uB2E4.",
|
|
@@ -12519,6 +12597,18 @@ var TOOL_META = {
|
|
|
12519
12597
|
"method": "POST",
|
|
12520
12598
|
"path": "/api/projects/{slug}/cuts/{cut_id}/images/generate"
|
|
12521
12599
|
},
|
|
12600
|
+
"democut_list_folders": {
|
|
12601
|
+
"cost": "none",
|
|
12602
|
+
"group": "core",
|
|
12603
|
+
"method": "GET",
|
|
12604
|
+
"path": "/api/folders"
|
|
12605
|
+
},
|
|
12606
|
+
"democut_create_folder": {
|
|
12607
|
+
"cost": "none",
|
|
12608
|
+
"group": "core",
|
|
12609
|
+
"method": "POST",
|
|
12610
|
+
"path": "/api/folders"
|
|
12611
|
+
},
|
|
12522
12612
|
"democut_credit_balance": {
|
|
12523
12613
|
"cost": "none",
|
|
12524
12614
|
"group": "credits",
|
|
@@ -14632,6 +14722,37 @@ function deleteCutVersion(a = {}, deps = {}) {
|
|
|
14632
14722
|
};
|
|
14633
14723
|
});
|
|
14634
14724
|
}
|
|
14725
|
+
function listFolders(_a3 = {}, deps = {}) {
|
|
14726
|
+
return guarded(READ_ONLY, async () => {
|
|
14727
|
+
const base = resolveBaseUrl(deps.baseUrl);
|
|
14728
|
+
const out4 = await apiRequest(base, "/api/folders", {}, deps);
|
|
14729
|
+
if (!out4.folders?.length) {
|
|
14730
|
+
return { text: "\uD3F4\uB354\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4. democut_create_folder \uB85C \uB9CC\uB4DC\uC138\uC694.", structured: callableStructured(out4) };
|
|
14731
|
+
}
|
|
14732
|
+
return {
|
|
14733
|
+
text: [
|
|
14734
|
+
`\uD3F4\uB354 ${out4.folders.length}\uAC1C \u2014 id \xB7 \uC774\uB984 \xB7 \uD504\uB85C\uC81D\uD2B8 \uC218:`,
|
|
14735
|
+
...out4.folders.map((f) => ` ${f.id} \xB7 ${f.name} \xB7 \uD504\uB85C\uC81D\uD2B8 ${f.project_count ?? 0}\uAC1C`),
|
|
14736
|
+
"\uD504\uB85C\uC81D\uD2B8\uB97C \uB123\uC73C\uB824\uBA74 democut_update_project \uC758 folder_id \uC5D0 \uC704 id \uB97C \uC8FC\uC138\uC694."
|
|
14737
|
+
].join("\n"),
|
|
14738
|
+
structured: callableStructured(out4)
|
|
14739
|
+
};
|
|
14740
|
+
});
|
|
14741
|
+
}
|
|
14742
|
+
function createFolder(a = {}, deps = {}) {
|
|
14743
|
+
return guarded(READ_ONLY, async () => {
|
|
14744
|
+
if (!(a.name ?? "").trim()) return { isError: true, text: "name \uC774 \uD544\uC694\uD569\uB2C8\uB2E4." };
|
|
14745
|
+
const base = resolveBaseUrl(deps.baseUrl);
|
|
14746
|
+
const out4 = await apiRequest(base, "/api/folders", { method: "POST", body: { name: a.name } }, deps);
|
|
14747
|
+
return {
|
|
14748
|
+
text: [
|
|
14749
|
+
`\uD3F4\uB354\uB97C \uB9CC\uB4E4\uC5C8\uC2B5\uB2C8\uB2E4: ${out4.name} [${out4.id}]`,
|
|
14750
|
+
`\uD504\uB85C\uC81D\uD2B8\uB97C \uB123\uC73C\uB824\uBA74 democut_update_project(slug=\u2026, folder_id=${out4.id}) \uB97C \uBD80\uB974\uC138\uC694.`
|
|
14751
|
+
].join("\n"),
|
|
14752
|
+
structured: callableStructured(out4)
|
|
14753
|
+
};
|
|
14754
|
+
});
|
|
14755
|
+
}
|
|
14635
14756
|
function characterLine(c) {
|
|
14636
14757
|
const photos = c.photos?.length ? `\uC0AC\uC9C4 ${c.photos.length}\uC7A5` : "\uC0AC\uC9C4 \uC5C6\uC74C";
|
|
14637
14758
|
return `${c.name} [${c.id}] rev=${c.rev} \xB7 ${photos}${c.current_photo_id ? " (\uB300\uD45C \uC788\uC74C)" : ""}`;
|
|
@@ -15477,6 +15598,11 @@ function dispatch(name, args, deps = {}) {
|
|
|
15477
15598
|
return selectCutVersion(args, deps);
|
|
15478
15599
|
case "democut_delete_cut_version":
|
|
15479
15600
|
return deleteCutVersion(args, deps);
|
|
15601
|
+
// ── 프로젝트 폴더(1뎁스) ──
|
|
15602
|
+
case "democut_list_folders":
|
|
15603
|
+
return listFolders(args, deps);
|
|
15604
|
+
case "democut_create_folder":
|
|
15605
|
+
return createFolder(args, deps);
|
|
15480
15606
|
// ── 아바타(캐릭터) CRUD (MR 19a) ──
|
|
15481
15607
|
case "democut_list_characters":
|
|
15482
15608
|
return listCharacters(args, deps);
|