democut 1.0.79 → 1.0.82

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.
Files changed (2) hide show
  1. package/dist/cli.js +46 -19
  2. 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.79";
6919
+ var VERSION = "1.0.82";
6920
6920
 
6921
6921
  // src/device-flow.ts
6922
6922
  var DeviceFlowError = class extends Error {
@@ -9884,7 +9884,7 @@ var GENERATED_TOOLS = [
9884
9884
  },
9885
9885
  {
9886
9886
  "name": "democut_get_brand_kit",
9887
- "description": "\uC774 \uC6CC\uD06C\uC2A4\uD398\uC774\uC2A4\uC758 \uBE0C\uB79C\uB4DC\uD0B7(\uBE0C\uB79C\uB4DC \uC774\uB984\xB7\uB300\uD45C\uC0C9\xB7\uBCF4\uC870\uC0C9\xB7\uBC30\uACBD\uC0C9\xB7\uD5E4\uB529/\uBCF8\uBB38 \uD3F0\uD2B8\xB7\uB85C\uACE0\xB7\uD654\uBA74 \uC2DC\uC5F0 \uBC30\uACBD/\uCEE4\uC11C/\uD0C0\uC774\uD2C0\uBC14)\uACFC \uACE0\uB97C \uC218 \uC788\uB294 \uD3F0\uD2B8(font_options \u2014 `is_default` \uAC00 \uD3F0\uD2B8\uB97C \uBE44\uC6E0\uC744 \uB54C \uC4F0\uC774\uB294 \uAC83). \uBD80\uC791\uC6A9\uB3C4 \uACFC\uAE08\uB3C4 \uC5C6\uB2E4. \uC800\uC7A5\uD55C \uC801\uC774 \uC5C6\uC73C\uBA74 \uBE48 \uBE0C\uB79C\uB4DC\uD0B7\uACFC rev 0 \uC774\uB2E4. \uB85C\uACE0\uC5D0\uC11C \uB300\uD45C\uC0C9\xB7\uBCF4\uC870\uC0C9 \uD6C4\uBCF4\uB97C \uBCF4\uB824\uBA74 democut_get_logo_palette.",
9887
+ "description": "\uC774 \uC6CC\uD06C\uC2A4\uD398\uC774\uC2A4\uC758 \uBE0C\uB79C\uB4DC\uD0B7(\uB300\uD45C\uC0C9\xB7\uBCF4\uC870\uC0C9\xB7\uBC30\uACBD\uC0C9\xB7\uD5E4\uB529/\uBCF8\uBB38 \uD3F0\uD2B8\xB7\uB85C\uACE0\uC640 \uADF8 \uC790\uB9AC/\uD06C\uAE30\xB7\uD654\uBA74 \uC2DC\uC5F0 \uBC30\uACBD/\uCEE4\uC11C/\uD0C0\uC774\uD2C0\uBC14)\uACFC \uACE0\uB97C \uC218 \uC788\uB294 \uD3F0\uD2B8(font_options \u2014 `is_default` \uAC00 \uD3F0\uD2B8\uB97C \uBE44\uC6E0\uC744 \uB54C \uC4F0\uC774\uB294 \uAC83). \uBD80\uC791\uC6A9\uB3C4 \uACFC\uAE08\uB3C4 \uC5C6\uB2E4. \uC800\uC7A5\uD55C \uC801\uC774 \uC5C6\uC73C\uBA74 \uBE48 \uBE0C\uB79C\uB4DC\uD0B7\uACFC rev 0 \uC774\uB2E4. \uB85C\uACE0\uC5D0\uC11C \uB300\uD45C\uC0C9\xB7\uBCF4\uC870\uC0C9 \uD6C4\uBCF4\uB97C \uBCF4\uB824\uBA74 democut_get_logo_palette.",
9888
9888
  "inputSchema": {
9889
9889
  "type": "object",
9890
9890
  "properties": {},
@@ -9952,22 +9952,10 @@ var GENERATED_TOOLS = [
9952
9952
  },
9953
9953
  {
9954
9954
  "name": "democut_put_brand_kit",
9955
- "description": "\uBE0C\uB79C\uB4DC\uD0B7\uC744 \uC804\uCCB4 \uAD50\uCCB4\uD55C\uB2E4(0\uC6D0, If-Match rev). democut_get_brand_kit \uC758 rev \uB97C \uADF8\uB300\uB85C \uB123\uC5B4\uB77C \u2014 \uADF8 \uC0AC\uC774 \uB204\uAC00 \uBC14\uAFE8\uC73C\uBA74 409 \uC774\uACE0 \uBCD1\uD569\uD558\uC9C0 \uC54A\uB294\uB2E4. \uC548 \uC900 \uD544\uB4DC\uB294 \uBE44\uC6CC\uC9C0\uBBC0\uB85C \uBC14\uAFB8\uC9C0 \uC54A\uC744 \uAC12\uB3C4 democut_get_brand_kit \uC758 brand \uC5D0\uC11C \uC62E\uACA8 \uB123\uC5B4\uB77C. \uD3F0\uD2B8\uB294 font_options[].id(\uBE44\uC6B0\uBA74 is_default \uD3F0\uD2B8\uB85C \uB098\uC628\uB2E4), \uB85C\uACE0\uB294 democut_upload_asset \uC73C\uB85C \uC62C\uB9B0 ready \uC774\uBBF8\uC9C0\uC758 asset_id. background_hex \uB294 \uBAA8\uC158\uADF8\uB798\uD53D \uBC30\uACBD\uC0C9\uC774\uB2E4(\uBE44\uC6B0\uBA74 \uC5B4\uB450\uC6C0 #09090B, \uBC1D\uC74C\uC740 #F4F4F5, \uADF8 \uBC16\uC758 \uC0C9\uB3C4 \uB41C\uB2E4) \u2014 \uAE00\uC790\xB7\uCE74\uB4DC \uC0C9\uC740 \uC11C\uBC84\uAC00 \uBC30\uACBD \uBC1D\uAE30\uB85C \uC815\uD55C\uB2E4. screen_background\xB7screen_cursor\xB7screen_titlebar \uB294 \uD654\uBA74 \uC2DC\uC5F0(layout_pattern=screen_demo) \uCEF7\uC758 \uBC30\uACBD\xB7\uCEE4\uC11C \uD504\uB9AC\uC14B\uACFC \uCC3D \uD0C0\uC774\uD2C0\uBC14(\uD2B8\uB798\uD53D \uB77C\uC774\uD2B8) \uCF2C\xB7\uB054\uC774\uB2E4(\uBE44\uC6B0\uBA74 image_2\xB7arrow_black\xB7\uCF2C, \uB2E4\uC74C\uC5D0 \uB9CC\uB4DC\uB294 \uCEF7\uBD80\uD130).",
9955
+ "description": "\uBE0C\uB79C\uB4DC\uD0B7\uC744 \uC804\uCCB4 \uAD50\uCCB4\uD55C\uB2E4(0\uC6D0, If-Match rev). democut_get_brand_kit \uC758 rev \uB97C \uADF8\uB300\uB85C \uB123\uC5B4\uB77C \u2014 \uADF8 \uC0AC\uC774 \uB204\uAC00 \uBC14\uAFE8\uC73C\uBA74 409 \uC774\uACE0 \uBCD1\uD569\uD558\uC9C0 \uC54A\uB294\uB2E4. \uC548 \uC900 \uD544\uB4DC\uB294 \uBE44\uC6CC\uC9C0\uBBC0\uB85C \uBC14\uAFB8\uC9C0 \uC54A\uC744 \uAC12\uB3C4 democut_get_brand_kit \uC758 brand \uC5D0\uC11C \uC62E\uACA8 \uB123\uC5B4\uB77C. \uD3F0\uD2B8\uB294 font_options[].id(\uBE44\uC6B0\uBA74 is_default \uD3F0\uD2B8\uB85C \uB098\uC628\uB2E4), \uB85C\uACE0\uB294 democut_upload_asset \uC73C\uB85C \uC62C\uB9B0 ready \uC774\uBBF8\uC9C0\uC758 asset_id. background_hex \uB294 \uBAA8\uC158\uADF8\uB798\uD53D \uBC30\uACBD\uC0C9\uC774\uB2E4(\uBE44\uC6B0\uBA74 \uC5B4\uB450\uC6C0 #09090B, \uBC1D\uC74C\uC740 #F4F4F5, \uADF8 \uBC16\uC758 \uC0C9\uB3C4 \uB41C\uB2E4) \u2014 \uAE00\uC790\xB7\uCE74\uB4DC \uC0C9\uC740 \uC11C\uBC84\uAC00 \uBC30\uACBD \uBC1D\uAE30\uB85C \uC815\uD55C\uB2E4. screen_background\xB7screen_cursor\xB7screen_titlebar \uB294 \uD654\uBA74 \uC2DC\uC5F0(layout_pattern=screen_demo) \uCEF7\uC758 \uBC30\uACBD\xB7\uCEE4\uC11C \uD504\uB9AC\uC14B\uACFC \uCC3D \uD0C0\uC774\uD2C0\uBC14(\uD2B8\uB798\uD53D \uB77C\uC774\uD2B8) \uCF2C\xB7\uB054\uC774\uB2E4(\uBE44\uC6B0\uBA74 image_2\xB7arrow_black\xB7\uCF2C, \uB2E4\uC74C\uC5D0 \uB9CC\uB4DC\uB294 \uCEF7\uBD80\uD130). \uB85C\uACE0\uB294 **\uC644\uC131\uBCF8\uC744 \uB9CC\uB4E4 \uB54C** \uC11C\uBC84\uAC00 \uD654\uBA74 \uBAA8\uC11C\uB9AC\uC5D0 \uC5B9\uB294\uB2E4(\uCEF7\uC5D0\uB294 \uAD7D\uC9C0 \uC54A\uB294\uB2E4 \u2014 \uBE0C\uB79C\uB4DC\uB97C \uBC14\uAFB8\uBA74 \uC644\uC131\uBCF8\uB9CC \uB2E4\uC2DC \uB9CC\uB4E4\uBA74 \uB41C\uB2E4, 0\uC6D0). mark_position\xB7mark_size \uB294 \uADF8 \uBAA8\uC11C\uB9AC(tl\xB7tr\xB7bl\xB7br, \uBE44\uC6B0\uBA74 tl)\uC640 \uD06C\uAE30(s\xB7m\xB7l, \uBE44\uC6B0\uBA74 m)\uB2E4. \uB85C\uACE0\uAC00 \uC5C6\uC73C\uBA74 \uC544\uBB34\uAC83\uB3C4 \uC5B9\uC9C0 \uC54A\uB294\uB2E4. \uBE0C\uB79C\uB4DC \uC774\uB984\uC740 \uC5C6\uB2E4(\uBCF4\uB0B4\uB3C4 \uBC84\uB9B0\uB2E4).",
9956
9956
  "inputSchema": {
9957
9957
  "type": "object",
9958
9958
  "properties": {
9959
- "name": {
9960
- "anyOf": [
9961
- {
9962
- "maxLength": 60,
9963
- "type": "string"
9964
- },
9965
- {
9966
- "type": "null"
9967
- }
9968
- ],
9969
- "default": null
9970
- },
9971
9959
  "accent_hex": {
9972
9960
  "anyOf": [
9973
9961
  {
@@ -10091,6 +10079,41 @@ var GENERATED_TOOLS = [
10091
10079
  "default": null,
10092
10080
  "description": "\uD654\uBA74 \uC2DC\uC5F0 \uCC3D \uC704 \uD0C0\uC774\uD2C0\uBC14(\uD2B8\uB798\uD53D \uB77C\uC774\uD2B8) \uD45C\uC2DC \u2014 \uBE44\uC6B0\uBA74 true"
10093
10081
  },
10082
+ "mark_position": {
10083
+ "anyOf": [
10084
+ {
10085
+ "enum": [
10086
+ "tl",
10087
+ "tr",
10088
+ "bl",
10089
+ "br"
10090
+ ],
10091
+ "type": "string"
10092
+ },
10093
+ {
10094
+ "type": "null"
10095
+ }
10096
+ ],
10097
+ "default": null,
10098
+ "description": "\uC644\uC131\uBCF8\uC5D0 \uC5B9\uB294 \uBE0C\uB79C\uB4DC \uB85C\uACE0\uC758 \uC790\uB9AC: tl(\uC67C\uCABD \uC704) | tr(\uC624\uB978\uCABD \uC704) | bl(\uC67C\uCABD \uC544\uB798) | br(\uC624\uB978\uCABD \uC544\uB798) (\uBE44\uC6B0\uBA74 tl). \uC6CC\uD06C\uC2A4\uD398\uC774\uC2A4 \uBE0C\uB79C\uB4DC\uD0B7\uC5D0\uC11C\uB9CC \uC815\uD55C\uB2E4 \u2014 \uD504\uB85C\uC81D\uD2B8 defaults.brand \uC5D0\uB294 \uC2E4\uC744 \uC218 \uC5C6\uB2E4"
10099
+ },
10100
+ "mark_size": {
10101
+ "anyOf": [
10102
+ {
10103
+ "enum": [
10104
+ "s",
10105
+ "m",
10106
+ "l"
10107
+ ],
10108
+ "type": "string"
10109
+ },
10110
+ {
10111
+ "type": "null"
10112
+ }
10113
+ ],
10114
+ "default": null,
10115
+ "description": "\uC644\uC131\uBCF8\uC5D0 \uC5B9\uB294 \uBE0C\uB79C\uB4DC \uB85C\uACE0\uC758 \uD06C\uAE30: s(\uC791\uAC8C) | m(\uBCF4\uD1B5) | l(\uD06C\uAC8C) (\uBE44\uC6B0\uBA74 m). \uC6CC\uD06C\uC2A4\uD398\uC774\uC2A4 \uBE0C\uB79C\uB4DC\uD0B7\uC5D0\uC11C\uB9CC \uC815\uD55C\uB2E4"
10116
+ },
10094
10117
  "rev": {
10095
10118
  "type": "integer",
10096
10119
  "minimum": 0,
@@ -15025,7 +15048,6 @@ function putCharacter(a = {}, deps = {}) {
15025
15048
  function brandKitLine(v) {
15026
15049
  const b = v.brand ?? {};
15027
15050
  const pairs = [
15028
- ["\uC774\uB984", b.name],
15029
15051
  ["\uB300\uD45C\uC0C9", b.accent_hex],
15030
15052
  ["\uBCF4\uC870\uC0C9", b.secondary_hex],
15031
15053
  ["\uBC30\uACBD\uC0C9", b.background_hex],
@@ -15034,7 +15056,9 @@ function brandKitLine(v) {
15034
15056
  ["\uB85C\uACE0", b.logo_asset_id],
15035
15057
  ["\uD654\uBA74 \uC2DC\uC5F0 \uBC30\uACBD", b.screen_background],
15036
15058
  ["\uD654\uBA74 \uC2DC\uC5F0 \uCEE4\uC11C", b.screen_cursor],
15037
- ["\uD654\uBA74 \uC2DC\uC5F0 \uD0C0\uC774\uD2C0\uBC14", b.screen_titlebar === false ? "\uB054" : null]
15059
+ ["\uD654\uBA74 \uC2DC\uC5F0 \uD0C0\uC774\uD2C0\uBC14", b.screen_titlebar === false ? "\uB054" : null],
15060
+ ["\uB85C\uACE0 \uC790\uB9AC", b.mark_position],
15061
+ ["\uB85C\uACE0 \uD06C\uAE30", b.mark_size]
15038
15062
  ];
15039
15063
  const parts = [`rev ${v.rev}`];
15040
15064
  for (const [label, value] of pairs) if (value) parts.push(`${label} ${value}`);
@@ -15081,7 +15105,7 @@ function putBrandKit(a = {}, deps = {}) {
15081
15105
  return { isError: true, text: "rev \uAC00 \uD544\uC694\uD569\uB2C8\uB2E4 \u2014 democut_get_brand_kit \uB85C \uD604\uC7AC rev \uB97C \uC77D\uC5B4 \uADF8\uB300\uB85C \uB123\uC73C\uC138\uC694." };
15082
15106
  }
15083
15107
  const body = {
15084
- name: a.name ?? null,
15108
+ // ★ 브랜드 이름(`name`)은 계약에서 물렸다(2026-10-05 — 영상에는 로고만 넣는다). 싣지 않는다.
15085
15109
  accent_hex: a.accent_hex ?? null,
15086
15110
  secondary_hex: a.secondary_hex ?? null,
15087
15111
  heading_font: a.heading_font ?? null,
@@ -15094,7 +15118,10 @@ function putBrandKit(a = {}, deps = {}) {
15094
15118
  // ★ false(끔)는 보낸다 — 빠지면 서버가 비움(= 켬)으로 읽는다.
15095
15119
  ...typeof a.screen_titlebar === "boolean" ? { screen_titlebar: a.screen_titlebar } : {},
15096
15120
  // ★ 배경색도 값이 있을 때만 — 먼저 게시된 CLI 가 옛 서버에 422 를 받지 않게(빠진 키 = 비움 = 기본 어두움).
15097
- ...a.background_hex ? { background_hex: a.background_hex } : {}
15121
+ ...a.background_hex ? { background_hex: a.background_hex } : {},
15122
+ // ★ 완성본에 얹는 로고의 자리·크기도 값이 있을 때만(같은 이유 — 빠진 키 = 비움 = 왼쪽 위·보통).
15123
+ ...a.mark_position ? { mark_position: a.mark_position } : {},
15124
+ ...a.mark_size ? { mark_size: a.mark_size } : {}
15098
15125
  };
15099
15126
  const base = resolveBaseUrl(deps.baseUrl);
15100
15127
  const out4 = await apiRequest(
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "democut",
3
- "version": "1.0.79",
3
+ "version": "1.0.82",
4
4
  "description": "DemoCut 에이전트 CLI — device flow 로그인(RFC 8628) + 영상 생성",
5
5
  "license": "MIT",
6
6
  "author": "InfoGrab",