deel-local-cli 1.13.0 → 1.13.1

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 (50) hide show
  1. package/README.ko.md +3 -2
  2. package/README.md +3 -2
  3. package/package.json +1 -1
  4. package/src/acp/map.js +367 -367
  5. package/src/acp/serve.js +810 -810
  6. package/src/agent/budget.js +156 -156
  7. package/src/agent/commit.js +534 -534
  8. package/src/agent/compact.js +441 -441
  9. package/src/agent/effort.js +308 -308
  10. package/src/agent/evolve.js +263 -263
  11. package/src/agent/loop.js +1728 -1728
  12. package/src/agent/memory.js +156 -156
  13. package/src/agent/mention.js +210 -210
  14. package/src/agent/recall.js +222 -222
  15. package/src/agent/session.js +1056 -1056
  16. package/src/backend/adapter.js +1355 -1355
  17. package/src/backend/cachemark.js +223 -223
  18. package/src/backend/detect.js +327 -327
  19. package/src/backend/http.js +460 -460
  20. package/src/backend/mcp.js +407 -407
  21. package/src/backend/price.js +260 -260
  22. package/src/backend/probe.js +487 -487
  23. package/src/backend/quota.js +274 -274
  24. package/src/backend/tokens.js +59 -59
  25. package/src/backend/toolfit.js +352 -352
  26. package/src/backend/wire.js +715 -715
  27. package/src/commands.js +3184 -3184
  28. package/src/config.js +283 -283
  29. package/src/i18n/en.js +545 -545
  30. package/src/i18n/ja.js +498 -498
  31. package/src/i18n/ko.js +592 -592
  32. package/src/i18n/zh.js +498 -498
  33. package/src/oneshot.js +625 -625
  34. package/src/pack/tar.js +154 -154
  35. package/src/pack/zip.js +235 -235
  36. package/src/plugins/manage.js +416 -416
  37. package/src/repl.js +2616 -2616
  38. package/src/safety/audit.js +148 -148
  39. package/src/safety/guard.js +641 -641
  40. package/src/safety/network.js +200 -200
  41. package/src/tools/fastgrep.js +229 -229
  42. package/src/tools/fsutil.js +291 -291
  43. package/src/tools/index.js +2560 -2560
  44. package/src/tools/jobs.js +876 -876
  45. package/src/tools/spawn.js +213 -213
  46. package/src/tools/verify.js +358 -358
  47. package/src/tools/webfetch.js +418 -418
  48. package/src/ui/export.js +233 -233
  49. package/src/ui/pick.js +115 -115
  50. package/src/ui/status.js +617 -617
@@ -1,59 +1,59 @@
1
- /*
2
- * 토큰을 대략 센다.
3
- *
4
- * ── 왜 여기 있나 ────────────────────────────────────────────────────────
5
- *
6
- * 이 함수는 agent/session.js 안에 있었다. 그런데 재는 자가 필요한 자리가
7
- * 거기 하나가 아니다 — backend/cachemark.js 도 「이 대화가 캐시에 잡힐 만한
8
- * 크기인가」 를 재야 하는데, cachemark 는 아무것도 안 들여오는 잎 모듈이라
9
- * session.js 를 부르면 순환이 된다(session 이 cachemark 의 조각표를 쓴다).
10
- *
11
- * 그래서 cachemark 는 제 나름대로 **글자 수를 토큰의 두 배로** 쳤다. 영어와
12
- * 코드에서만 맞는 셈이라, 실제로는 2,300토큰인 대화를 4,096토큰 문턱을 넘었다고
13
- * 답했다. 안 잡힐 표식을 붙여 놓고 화면에는 「캐시 표식」 이라고 적혔다.
14
- *
15
- * 재는 자가 둘이면 언젠가 둘이 어긋난다. 그래서 자를 **잎으로 내려서** 한
16
- * 벌만 둔다. session.js 는 이것을 그대로 다시 내보내므로 부르던 자리는 그대로다.
17
- *
18
- * ── 얼마나 맞나 ────────────────────────────────────────────────────────
19
- *
20
- * 정확한 토크나이저는 안 쓴다 — 의존성 0개가 이 프로그램의 약속이고, 창구마다
21
- * 토크나이저가 다르므로 하나를 골라 박아도 다른 창구에서는 또 틀린다.
22
- * 대신 서버가 실제 값을 알려 주면 그 값으로 배수를 배운다(session.js 의 배운다).
23
- * 여기는 **배우기 전의 첫 짐작**이다.
24
- *
25
- * 한글(자모 포함)·일본어·한자 글자당 1토큰
26
- * 그 밖(영문·코드) 3.6글자당 1토큰
27
- */
28
- /*
29
- * ── 한글은 완성형만 한글이 아니다 ───────────────────────────────────────
30
- *
31
- * 여기가 완성형 음절(가–힣)만 셌다. 그래서 아래 것들이 **영문 취급**을 받아
32
- * 3.6분의 1로 세어졌다:
33
- *
34
- * ㅋㅋㅋ ㅎㅎ ㅠㅠ ㅡㅡ 호환 자모 (U+3130–318F) — 대화에 제일 흔하다
35
- * ᄀ ᅡ ᆨ 첫가끝 자모 (U+1100–11FF) — 맥에서 만든 파일
36
- * 이름과 그 파일 내용이 이 꼴(NFD)로 온다
37
- *
38
- * 덜 센 값은 화면 숫자로 안 끝난다. 남은 자리를 넉넉히 보고 → 접기를 늦게
39
- * 켜고 → 실제로는 넘친 채로 요청을 보낸다. 한국어를 쓰는 사람이 가장 자주
40
- * 치는 글자가 하필 이 칸이었다.
41
- */
42
- const 자모인가 = (cp) => (
43
- (cp >= 0x1100 && cp <= 0x11ff) // 첫가끝 (NFD)
44
- || (cp >= 0x3130 && cp <= 0x318f) // 호환 자모 (ㅋ ㅎ ㅠ …)
45
- || (cp >= 0xa960 && cp <= 0xa97f) // 확장 A
46
- || (cp >= 0xd7b0 && cp <= 0xd7ff) // 확장 B
47
- );
48
-
49
- export function estimateTokens(text) {
50
- const s = String(text ?? '');
51
- let cjk = 0;
52
- for (const ch of s) {
53
- const cp = ch.codePointAt(0);
54
- if ((cp >= 0xac00 && cp <= 0xd7a3) || (cp >= 0x3040 && cp <= 0x30ff) || (cp >= 0x4e00 && cp <= 0x9fff)
55
- || 자모인가(cp)) cjk++;
56
- }
57
- const rest = s.length - cjk;
58
- return Math.ceil(cjk + rest / 3.6);
59
- }
1
+ /*
2
+ * 토큰을 대략 센다.
3
+ *
4
+ * ── 왜 여기 있나 ────────────────────────────────────────────────────────
5
+ *
6
+ * 이 함수는 agent/session.js 안에 있었다. 그런데 재는 자가 필요한 자리가
7
+ * 거기 하나가 아니다 — backend/cachemark.js 도 「이 대화가 캐시에 잡힐 만한
8
+ * 크기인가」 를 재야 하는데, cachemark 는 아무것도 안 들여오는 잎 모듈이라
9
+ * session.js 를 부르면 순환이 된다(session 이 cachemark 의 조각표를 쓴다).
10
+ *
11
+ * 그래서 cachemark 는 제 나름대로 **글자 수를 토큰의 두 배로** 쳤다. 영어와
12
+ * 코드에서만 맞는 셈이라, 실제로는 2,300토큰인 대화를 4,096토큰 문턱을 넘었다고
13
+ * 답했다. 안 잡힐 표식을 붙여 놓고 화면에는 「캐시 표식」 이라고 적혔다.
14
+ *
15
+ * 재는 자가 둘이면 언젠가 둘이 어긋난다. 그래서 자를 **잎으로 내려서** 한
16
+ * 벌만 둔다. session.js 는 이것을 그대로 다시 내보내므로 부르던 자리는 그대로다.
17
+ *
18
+ * ── 얼마나 맞나 ────────────────────────────────────────────────────────
19
+ *
20
+ * 정확한 토크나이저는 안 쓴다 — 의존성 0개가 이 프로그램의 약속이고, 창구마다
21
+ * 토크나이저가 다르므로 하나를 골라 박아도 다른 창구에서는 또 틀린다.
22
+ * 대신 서버가 실제 값을 알려 주면 그 값으로 배수를 배운다(session.js 의 배운다).
23
+ * 여기는 **배우기 전의 첫 짐작**이다.
24
+ *
25
+ * 한글(자모 포함)·일본어·한자 글자당 1토큰
26
+ * 그 밖(영문·코드) 3.6글자당 1토큰
27
+ */
28
+ /*
29
+ * ── 한글은 완성형만 한글이 아니다 ───────────────────────────────────────
30
+ *
31
+ * 여기가 완성형 음절(가–힣)만 셌다. 그래서 아래 것들이 **영문 취급**을 받아
32
+ * 3.6분의 1로 세어졌다:
33
+ *
34
+ * ㅋㅋㅋ ㅎㅎ ㅠㅠ ㅡㅡ 호환 자모 (U+3130–318F) — 대화에 제일 흔하다
35
+ * ᄀ ᅡ ᆨ 첫가끝 자모 (U+1100–11FF) — 맥에서 만든 파일
36
+ * 이름과 그 파일 내용이 이 꼴(NFD)로 온다
37
+ *
38
+ * 덜 센 값은 화면 숫자로 안 끝난다. 남은 자리를 넉넉히 보고 → 접기를 늦게
39
+ * 켜고 → 실제로는 넘친 채로 요청을 보낸다. 한국어를 쓰는 사람이 가장 자주
40
+ * 치는 글자가 하필 이 칸이었다.
41
+ */
42
+ const 자모인가 = (cp) => (
43
+ (cp >= 0x1100 && cp <= 0x11ff) // 첫가끝 (NFD)
44
+ || (cp >= 0x3130 && cp <= 0x318f) // 호환 자모 (ㅋ ㅎ ㅠ …)
45
+ || (cp >= 0xa960 && cp <= 0xa97f) // 확장 A
46
+ || (cp >= 0xd7b0 && cp <= 0xd7ff) // 확장 B
47
+ );
48
+
49
+ export function estimateTokens(text) {
50
+ const s = String(text ?? '');
51
+ let cjk = 0;
52
+ for (const ch of s) {
53
+ const cp = ch.codePointAt(0);
54
+ if ((cp >= 0xac00 && cp <= 0xd7a3) || (cp >= 0x3040 && cp <= 0x30ff) || (cp >= 0x4e00 && cp <= 0x9fff)
55
+ || 자모인가(cp)) cjk++;
56
+ }
57
+ const rest = s.length - cjk;
58
+ return Math.ceil(cjk + rest / 3.6);
59
+ }