micro-models-agent 0.2.63 → 0.2.64

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 (82) hide show
  1. package/README.md +354 -354
  2. package/dist/agent/loop.d.ts.map +1 -1
  3. package/dist/agent/loop.js +119 -3
  4. package/dist/agent/loop.js.map +1 -1
  5. package/dist/agent/tool-executor.d.ts +2 -10
  6. package/dist/agent/tool-executor.d.ts.map +1 -1
  7. package/dist/agent/tool-executor.js +92 -1
  8. package/dist/agent/tool-executor.js.map +1 -1
  9. package/dist/async-map.d.ts +6 -0
  10. package/dist/async-map.d.ts.map +1 -0
  11. package/dist/async-map.js +16 -0
  12. package/dist/async-map.js.map +1 -0
  13. package/dist/blog-api/types/index.d.ts +2 -0
  14. package/dist/blog-api/types/index.d.ts.map +1 -0
  15. package/dist/blog-api/types/index.js +2 -0
  16. package/dist/blog-api/types/index.js.map +1 -0
  17. package/dist/cli/config.js +1 -1
  18. package/dist/cli/config.js.map +1 -1
  19. package/dist/config/config.d.ts +10 -0
  20. package/dist/config/config.d.ts.map +1 -1
  21. package/dist/config/config.js +29 -2
  22. package/dist/config/config.js.map +1 -1
  23. package/dist/config/types.d.ts +16 -1
  24. package/dist/config/types.d.ts.map +1 -1
  25. package/dist/examples.d.ts +22 -0
  26. package/dist/examples.d.ts.map +1 -0
  27. package/dist/examples.js +45 -0
  28. package/dist/examples.js.map +1 -0
  29. package/dist/fibonacci.d.ts +19 -0
  30. package/dist/fibonacci.d.ts.map +1 -0
  31. package/dist/fibonacci.js +61 -0
  32. package/dist/fibonacci.js.map +1 -0
  33. package/dist/plugins/builtin/lint-on-write/index.ts +96 -96
  34. package/dist/plugins/builtin/notify/index.js +6 -6
  35. package/dist/plugins/builtin/notify/index.ts +104 -104
  36. package/dist/repl.d.ts +5 -0
  37. package/dist/repl.d.ts.map +1 -0
  38. package/dist/repl.js +472 -0
  39. package/dist/repl.js.map +1 -0
  40. package/dist/skills/builtin/agent-test/SKILL.md +68 -68
  41. package/dist/skills/builtin/grill-me/SKILL.md +46 -46
  42. package/dist/sort.d.ts +8 -0
  43. package/dist/sort.d.ts.map +1 -0
  44. package/dist/sort.js +36 -0
  45. package/dist/sort.js.map +1 -0
  46. package/dist/stack.d.ts +9 -0
  47. package/dist/stack.d.ts.map +1 -0
  48. package/dist/stack.js +22 -0
  49. package/dist/stack.js.map +1 -0
  50. package/dist/test-run.d.ts +2 -0
  51. package/dist/test-run.d.ts.map +1 -0
  52. package/dist/test-run.js +13 -0
  53. package/dist/test-run.js.map +1 -0
  54. package/dist/tools/subagent.d.ts +16 -1
  55. package/dist/tools/subagent.d.ts.map +1 -1
  56. package/dist/tools/subagent.js +84 -9
  57. package/dist/tools/subagent.js.map +1 -1
  58. package/dist/ui/components/diff-view.d.ts +8 -0
  59. package/dist/ui/components/diff-view.d.ts.map +1 -0
  60. package/dist/ui/components/diff-view.js +25 -0
  61. package/dist/ui/components/diff-view.js.map +1 -0
  62. package/dist/ui/double-press.d.ts +9 -0
  63. package/dist/ui/double-press.d.ts.map +1 -0
  64. package/dist/ui/double-press.js +18 -0
  65. package/dist/ui/double-press.js.map +1 -0
  66. package/dist/ui/opentui-renderer.d.ts +53 -0
  67. package/dist/ui/opentui-renderer.d.ts.map +1 -0
  68. package/dist/ui/opentui-renderer.js +463 -0
  69. package/dist/ui/opentui-renderer.js.map +1 -0
  70. package/dist/utils/memoize.d.ts +14 -0
  71. package/dist/utils/memoize.d.ts.map +1 -0
  72. package/dist/utils/memoize.js +51 -0
  73. package/dist/utils/memoize.js.map +1 -0
  74. package/dist/utils/types.d.ts +6 -0
  75. package/dist/utils/types.d.ts.map +1 -0
  76. package/dist/utils/types.js +2 -0
  77. package/dist/utils/types.js.map +1 -0
  78. package/dist/utils.d.ts +22 -0
  79. package/dist/utils.d.ts.map +1 -0
  80. package/dist/utils.js +81 -0
  81. package/dist/utils.js.map +1 -0
  82. package/package.json +2 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EACxD,EAAE,EAAE,CAAC,EACL,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC5B,CAAC,CA4CH;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,EAClE,EAAE,EAAE,CAAC,EACL,IAAI,CAAC,EAAE,MAAM,EACb,OAAO,GAAE,eAAoB,GAC5B;IAAE,SAAS,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,MAAM,IAAI,CAAA;CAAE,CAoCtC"}
package/dist/utils.js ADDED
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Дебаунсер для функции
3
+ * @param fn Функция, которую нужно дебаунсить
4
+ * @param options Настройки (выдержка и немедленный вызов)
5
+ * @returns Обёрнутая функция с дебаунсингом
6
+ */
7
+ export function debounce(fn, wait, options = {}) {
8
+ const { wait: defaultWait = 100, immediate: shouldImmediate = false } = options;
9
+ let timer = null;
10
+ /**
11
+ * Обёрнутая функция
12
+ */
13
+ return ((...args) => {
14
+ // Очищаем предыдущий таймер
15
+ if (timer) {
16
+ clearTimeout(timer);
17
+ }
18
+ const timeout = defaultWait;
19
+ // Если нужно выполнить функцию немедленно при первом вызове
20
+ if (shouldImmediate) {
21
+ timer = setTimeout(() => {
22
+ timer = null;
23
+ }, timeout);
24
+ // Выполняем функцию сразу
25
+ try {
26
+ return fn(...args);
27
+ }
28
+ catch (error) {
29
+ console.error('Error in debounced function:', error);
30
+ throw error;
31
+ }
32
+ }
33
+ // Иначе выполняем функцию после выдержки
34
+ timer = setTimeout(() => {
35
+ timer = null;
36
+ try {
37
+ return fn(...args);
38
+ }
39
+ catch (error) {
40
+ console.error('Error in debounced function:', error);
41
+ throw error;
42
+ }
43
+ }, timeout);
44
+ });
45
+ }
46
+ /**
47
+ * Дебаунсер с поддержкой отмены
48
+ * @param fn Функция, которую нужно дебаунсить
49
+ * @param options Настройки
50
+ * @returns Объект с функцией и методом cancel
51
+ */
52
+ export function debounceWithCancel(fn, wait, options = {}) {
53
+ const { wait: defaultWait = 100, immediate: shouldImmediate = false } = options;
54
+ let timer = null;
55
+ let lastResult;
56
+ /**
57
+ * Обёрнутая функция
58
+ */
59
+ const debounced = ((...args) => {
60
+ // Очищаем предыдущий таймер
61
+ if (timer) {
62
+ clearTimeout(timer);
63
+ }
64
+ timer = setTimeout(() => {
65
+ lastResult = fn(...args);
66
+ timer = null;
67
+ }, defaultWait);
68
+ return lastResult;
69
+ });
70
+ /**
71
+ * Отмена следующего вызова
72
+ */
73
+ const cancel = () => {
74
+ if (timer) {
75
+ clearTimeout(timer);
76
+ timer = null;
77
+ }
78
+ };
79
+ return { debounced, cancel };
80
+ }
81
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAKA;;;;;GAKG;AACH,MAAM,UAAU,QAAQ,CACtB,EAAK,EACL,IAAa,EACb,UAA2B,EAAE;IAE7B,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,SAAS,EAAE,eAAe,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAEhF,IAAI,KAAK,GAAyC,IAAI,CAAC;IAEvD;;OAEG;IACH,OAAO,CAAC,CACN,GAAG,IAAmB,EACP,EAAE;QACjB,4BAA4B;QAC5B,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QAED,MAAM,OAAO,GAAG,WAAW,CAAC;QAE5B,4DAA4D;QAC5D,IAAI,eAAe,EAAE,CAAC;YACpB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;gBACtB,KAAK,GAAG,IAAI,CAAC;YACf,CAAC,EAAE,OAAO,CAAC,CAAC;YAEZ,0BAA0B;YAC1B,IAAI,CAAC;gBACH,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;gBACrD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,KAAK,GAAG,IAAI,CAAC;YACb,IAAI,CAAC;gBACH,OAAO,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;gBACrD,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC,EAAE,OAAO,CAAC,CAAC;IACd,CAAC,CAAM,CAAC;AACV,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,EAAK,EACL,IAAa,EACb,UAA2B,EAAE;IAE7B,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,GAAG,EAAE,SAAS,EAAE,eAAe,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;IAEhF,IAAI,KAAK,GAAyC,IAAI,CAAC;IACvD,IAAI,UAAqC,CAAC;IAE1C;;OAEG;IACH,MAAM,SAAS,GAAG,CAAC,CACjB,GAAG,IAAmB,EACP,EAAE;QACjB,4BAA4B;QAC5B,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;QACtB,CAAC;QAED,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,UAAU,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,KAAK,GAAG,IAAI,CAAC;QACf,CAAC,EAAE,WAAW,CAAC,CAAC;QAEhB,OAAO,UAAU,CAAC;IACpB,CAAC,CAAM,CAAC;IAER;;OAEG;IACH,MAAM,MAAM,GAAG,GAAG,EAAE;QAClB,IAAI,KAAK,EAAE,CAAC;YACV,YAAY,CAAC,KAAK,CAAC,CAAC;YACpB,KAAK,GAAG,IAAI,CAAC;QACf,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC;AAC/B,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "micro-models-agent",
3
- "version": "0.2.63",
3
+ "version": "0.2.64",
4
4
  "description": "Micro Models Agent (MMA) — LLM agent harness for small models (Qwen3.5-9B, 32K-64K context)",
5
5
  "type": "module",
6
6
  "bin": {
@@ -22,7 +22,7 @@
22
22
  "prepublishOnly": "npm run build",
23
23
  "prepack": "npm run build",
24
24
  "dev": "bun --watch src/index.ts",
25
- "test": "bun test tests/context.test.ts tests/sanitizer.test.ts tests/code-index.test.ts tests/plan-todo-memory.test.ts tests/file-loader-syntax.test.ts tests/commands.test.ts tests/subagent.test.ts",
25
+ "test": "bun test tests/context.test.ts tests/sanitizer.test.ts tests/code-index.test.ts tests/plan-todo-memory.test.ts tests/file-loader-syntax.test.ts tests/commands.test.ts tests/subagent.test.ts tests/specialist-config.test.ts tests/tool-executor.test.ts tests/specialist-integration.test.ts",
26
26
  "test:integration": "bun test tests/llm-integration.test.ts tests/agent-integration.test.ts tests/subagent-integration.test.ts",
27
27
  "test:all": "bun test",
28
28
  "test:watch": "vitest"