micro-models-agent 0.2.50 → 0.2.52
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/agent/loop.d.ts.map +1 -1
- package/dist/agent/loop.js +87 -303
- package/dist/agent/loop.js.map +1 -1
- package/dist/agent/modes/applier.d.ts +43 -0
- package/dist/agent/modes/applier.d.ts.map +1 -0
- package/dist/agent/modes/applier.js +30 -0
- package/dist/agent/modes/applier.js.map +1 -0
- package/dist/agent/modes/registry.d.ts +35 -0
- package/dist/agent/modes/registry.d.ts.map +1 -0
- package/dist/agent/modes/registry.js +169 -0
- package/dist/agent/modes/registry.js.map +1 -0
- package/dist/agent/modes/types.d.ts +54 -0
- package/dist/agent/modes/types.d.ts.map +1 -0
- package/dist/agent/modes/types.js +13 -0
- package/dist/agent/modes/types.js.map +1 -0
- package/dist/agent/react-loop.d.ts +61 -0
- package/dist/agent/react-loop.d.ts.map +1 -0
- package/dist/agent/react-loop.js +119 -0
- package/dist/agent/react-loop.js.map +1 -0
- package/dist/agent/tool-executor.d.ts +44 -0
- package/dist/agent/tool-executor.d.ts.map +1 -0
- package/dist/agent/tool-executor.js +186 -0
- package/dist/agent/tool-executor.js.map +1 -0
- package/dist/config/types.d.ts +5 -2
- package/dist/config/types.d.ts.map +1 -1
- package/dist/plugins/adapters/hooks-adapter.d.ts +12 -0
- package/dist/plugins/adapters/hooks-adapter.d.ts.map +1 -0
- package/dist/plugins/adapters/hooks-adapter.js +23 -0
- package/dist/plugins/adapters/hooks-adapter.js.map +1 -0
- package/dist/plugins/loader.d.ts +13 -0
- package/dist/plugins/loader.d.ts.map +1 -0
- package/dist/plugins/loader.js +145 -0
- package/dist/plugins/loader.js.map +1 -0
- package/dist/plugins/manager.d.ts +52 -0
- package/dist/plugins/manager.d.ts.map +1 -0
- package/dist/plugins/manager.js +183 -0
- package/dist/plugins/manager.js.map +1 -0
- package/dist/plugins/types.d.ts +73 -0
- package/dist/plugins/types.d.ts.map +1 -0
- package/dist/plugins/types.js +8 -0
- package/dist/plugins/types.js.map +1 -0
- package/dist/repl/commands.d.ts +1 -0
- package/dist/repl/commands.d.ts.map +1 -1
- package/dist/repl/commands.js.map +1 -1
- package/dist/repl/index.d.ts.map +1 -1
- package/dist/repl/index.js +3 -2
- package/dist/repl/index.js.map +1 -1
- package/dist/session/store.d.ts +4 -2
- package/dist/session/store.d.ts.map +1 -1
- package/dist/session/store.js +4 -2
- package/dist/session/store.js.map +1 -1
- package/dist/tools/bash.d.ts +4 -0
- package/dist/tools/bash.d.ts.map +1 -1
- package/dist/tools/bash.js +24 -0
- package/dist/tools/bash.js.map +1 -1
- package/dist/tools/fs/copy-file.d.ts +2 -0
- package/dist/tools/fs/copy-file.d.ts.map +1 -1
- package/dist/tools/fs/copy-file.js +7 -0
- package/dist/tools/fs/copy-file.js.map +1 -1
- package/dist/tools/fs/create-dir.d.ts +2 -0
- package/dist/tools/fs/create-dir.d.ts.map +1 -1
- package/dist/tools/fs/create-dir.js +7 -0
- package/dist/tools/fs/create-dir.js.map +1 -1
- package/dist/tools/fs/delete-file.d.ts +2 -0
- package/dist/tools/fs/delete-file.d.ts.map +1 -1
- package/dist/tools/fs/delete-file.js +7 -0
- package/dist/tools/fs/delete-file.js.map +1 -1
- package/dist/tools/fs/edit-file.d.ts +2 -0
- package/dist/tools/fs/edit-file.d.ts.map +1 -1
- package/dist/tools/fs/edit-file.js +7 -0
- package/dist/tools/fs/edit-file.js.map +1 -1
- package/dist/tools/fs/file-info.d.ts +2 -0
- package/dist/tools/fs/file-info.d.ts.map +1 -1
- package/dist/tools/fs/file-info.js +7 -0
- package/dist/tools/fs/file-info.js.map +1 -1
- package/dist/tools/fs/glob-search.d.ts +2 -0
- package/dist/tools/fs/glob-search.d.ts.map +1 -1
- package/dist/tools/fs/glob-search.js +7 -0
- package/dist/tools/fs/glob-search.js.map +1 -1
- package/dist/tools/fs/grep-search.d.ts +2 -0
- package/dist/tools/fs/grep-search.d.ts.map +1 -1
- package/dist/tools/fs/grep-search.js +7 -0
- package/dist/tools/fs/grep-search.js.map +1 -1
- package/dist/tools/fs/list-dir.d.ts +2 -0
- package/dist/tools/fs/list-dir.d.ts.map +1 -1
- package/dist/tools/fs/list-dir.js +7 -0
- package/dist/tools/fs/list-dir.js.map +1 -1
- package/dist/tools/fs/move-file.d.ts +2 -0
- package/dist/tools/fs/move-file.d.ts.map +1 -1
- package/dist/tools/fs/move-file.js +7 -0
- package/dist/tools/fs/move-file.js.map +1 -1
- package/dist/tools/fs/read-file.d.ts +2 -0
- package/dist/tools/fs/read-file.d.ts.map +1 -1
- package/dist/tools/fs/read-file.js +7 -0
- package/dist/tools/fs/read-file.js.map +1 -1
- package/dist/tools/fs/tree.d.ts +2 -0
- package/dist/tools/fs/tree.d.ts.map +1 -1
- package/dist/tools/fs/tree.js +7 -0
- package/dist/tools/fs/tree.js.map +1 -1
- package/dist/tools/fs/write-file.d.ts +2 -0
- package/dist/tools/fs/write-file.d.ts.map +1 -1
- package/dist/tools/fs/write-file.js +7 -0
- package/dist/tools/fs/write-file.js.map +1 -1
- package/dist/tools/native/approve.d.ts +11 -0
- package/dist/tools/native/approve.d.ts.map +1 -0
- package/dist/tools/native/approve.js +39 -0
- package/dist/tools/native/approve.js.map +1 -0
- package/dist/tools/native/plan.d.ts +10 -0
- package/dist/tools/native/plan.d.ts.map +1 -0
- package/dist/tools/native/plan.js +46 -0
- package/dist/tools/native/plan.js.map +1 -0
- package/dist/tools/native/question.d.ts +11 -0
- package/dist/tools/native/question.d.ts.map +1 -0
- package/dist/tools/native/question.js +41 -0
- package/dist/tools/native/question.js.map +1 -0
- package/dist/tools/native/theme.d.ts +10 -0
- package/dist/tools/native/theme.d.ts.map +1 -0
- package/dist/tools/native/theme.js +106 -0
- package/dist/tools/native/theme.js.map +1 -0
- package/dist/tools/native/todo.d.ts +10 -0
- package/dist/tools/native/todo.d.ts.map +1 -0
- package/dist/tools/native/todo.js +58 -0
- package/dist/tools/native/todo.js.map +1 -0
- package/dist/tools/native/user-profile.d.ts +10 -0
- package/dist/tools/native/user-profile.d.ts.map +1 -0
- package/dist/tools/native/user-profile.js +58 -0
- package/dist/tools/native/user-profile.js.map +1 -0
- package/dist/tools/registry.d.ts +11 -10
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +40 -147
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/subagent.d.ts +2 -1
- package/dist/tools/subagent.d.ts.map +1 -1
- package/dist/tools/subagent.js +7 -4
- package/dist/tools/subagent.js.map +1 -1
- package/dist/tools/types.d.ts +59 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +2 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/tools/web-fetch.d.ts +2 -0
- package/dist/tools/web-fetch.d.ts.map +1 -1
- package/dist/tools/web-fetch.js +7 -0
- package/dist/tools/web-fetch.js.map +1 -1
- package/dist/tools/web-search.d.ts +2 -0
- package/dist/tools/web-search.d.ts.map +1 -1
- package/dist/tools/web-search.js +7 -0
- package/dist/tools/web-search.js.map +1 -1
- package/dist/updater.js +1 -1
- package/dist/updater.js.map +1 -1
- package/package.json +1 -1
package/dist/agent/loop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"loop.js","sourceRoot":"","sources":["../../src/agent/loop.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { ModeConfig, ModeContext } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Применение конфигурации режима к агенту.
|
|
4
|
+
*
|
|
5
|
+
* Не мутирует state напрямую — возвращает объект с параметрами,
|
|
6
|
+
* которые loop.ts / repl/index.ts применяют к своему state.
|
|
7
|
+
*
|
|
8
|
+
* @module agent/modes/applier
|
|
9
|
+
*/
|
|
10
|
+
/** Результат применения режима — параметры для агента */
|
|
11
|
+
export interface AppliedMode {
|
|
12
|
+
/** Ключ шаблона system prompt */
|
|
13
|
+
systemPromptTemplate: string;
|
|
14
|
+
/** Макс. количество скилов */
|
|
15
|
+
maxSkills: number;
|
|
16
|
+
/** Бюджет токенов для скилов */
|
|
17
|
+
skillTokenBudget: number;
|
|
18
|
+
/** Минимальный контекст */
|
|
19
|
+
minContextWindow: number;
|
|
20
|
+
/** Принудительные скилы */
|
|
21
|
+
forcedSkills: string[];
|
|
22
|
+
/** Разрешить автозагрузку */
|
|
23
|
+
allowAutoLoadSkills: boolean;
|
|
24
|
+
/** Поведения */
|
|
25
|
+
behaviors: Record<string, unknown>;
|
|
26
|
+
/** Префикс промпта */
|
|
27
|
+
promptPrefix: string;
|
|
28
|
+
/** Режим для subagent */
|
|
29
|
+
subagentMode: string;
|
|
30
|
+
/** Показывать thinking */
|
|
31
|
+
showThinking: boolean;
|
|
32
|
+
/** Тихий режим */
|
|
33
|
+
quiet: boolean;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Применяет режим и возвращает параметры.
|
|
37
|
+
*
|
|
38
|
+
* @param config - конфигурация режима
|
|
39
|
+
* @param context - контекст (renderer, quiet, showThinking)
|
|
40
|
+
* @returns параметры для агента
|
|
41
|
+
*/
|
|
42
|
+
export declare function applyMode(config: ModeConfig, context?: ModeContext): AppliedMode;
|
|
43
|
+
//# sourceMappingURL=applier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applier.d.ts","sourceRoot":"","sources":["../../../src/agent/modes/applier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE1D;;;;;;;GAOG;AAEH,yDAAyD;AACzD,MAAM,WAAW,WAAW;IAC1B,iCAAiC;IACjC,oBAAoB,EAAE,MAAM,CAAC;IAC7B,8BAA8B;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gCAAgC;IAChC,gBAAgB,EAAE,MAAM,CAAC;IACzB,2BAA2B;IAC3B,gBAAgB,EAAE,MAAM,CAAC;IACzB,2BAA2B;IAC3B,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,6BAA6B;IAC7B,mBAAmB,EAAE,OAAO,CAAC;IAC7B,gBAAgB;IAChB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,sBAAsB;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,yBAAyB;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,0BAA0B;IAC1B,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB;IAClB,KAAK,EAAE,OAAO,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,WAAW,CAuBhF"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Применяет режим и возвращает параметры.
|
|
3
|
+
*
|
|
4
|
+
* @param config - конфигурация режима
|
|
5
|
+
* @param context - контекст (renderer, quiet, showThinking)
|
|
6
|
+
* @returns параметры для агента
|
|
7
|
+
*/
|
|
8
|
+
export function applyMode(config, context) {
|
|
9
|
+
// Определяем quiet/showThinking из контекста или конфига
|
|
10
|
+
const quiet = context?.quiet ?? config.ui.quiet;
|
|
11
|
+
const showThinking = context?.showThinking ?? config.ui.showThinking;
|
|
12
|
+
// Устанавливаем префикс на renderer
|
|
13
|
+
if (context?.renderer?.setMode) {
|
|
14
|
+
context.renderer.setMode(config.ui.promptPrefix || config.id);
|
|
15
|
+
}
|
|
16
|
+
return {
|
|
17
|
+
systemPromptTemplate: config.systemPromptTemplate,
|
|
18
|
+
maxSkills: config.constraints.maxSkills,
|
|
19
|
+
skillTokenBudget: config.constraints.skillTokenBudget,
|
|
20
|
+
minContextWindow: config.constraints.minContextWindow,
|
|
21
|
+
forcedSkills: config.forcedSkills,
|
|
22
|
+
allowAutoLoadSkills: config.allowAutoLoadSkills,
|
|
23
|
+
behaviors: config.behaviors,
|
|
24
|
+
promptPrefix: config.ui.promptPrefix,
|
|
25
|
+
subagentMode: config.subagentMode,
|
|
26
|
+
showThinking,
|
|
27
|
+
quiet,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
//# sourceMappingURL=applier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applier.js","sourceRoot":"","sources":["../../../src/agent/modes/applier.ts"],"names":[],"mappings":"AAqCA;;;;;;GAMG;AACH,MAAM,UAAU,SAAS,CAAC,MAAkB,EAAE,OAAqB;IACjE,yDAAyD;IACzD,MAAM,KAAK,GAAG,OAAO,EAAE,KAAK,IAAI,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC;IAChD,MAAM,YAAY,GAAG,OAAO,EAAE,YAAY,IAAI,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC;IAErE,oCAAoC;IACpC,IAAI,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,IAAI,MAAM,CAAC,EAAE,CAAC,CAAC;IAChE,CAAC;IAED,OAAO;QACL,oBAAoB,EAAE,MAAM,CAAC,oBAAoB;QACjD,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,SAAS;QACvC,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB;QACrD,gBAAgB,EAAE,MAAM,CAAC,WAAW,CAAC,gBAAgB;QACrD,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,mBAAmB,EAAE,MAAM,CAAC,mBAAmB;QAC/C,SAAS,EAAE,MAAM,CAAC,SAAS;QAC3B,YAAY,EAAE,MAAM,CAAC,EAAE,CAAC,YAAY;QACpC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,YAAY;QACZ,KAAK;KACN,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import type { ModeConfig } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Реестр режимов.
|
|
4
|
+
*
|
|
5
|
+
* Использование:
|
|
6
|
+
* ```ts
|
|
7
|
+
* const registry = new ModeRegistry();
|
|
8
|
+
* registry.register(customMode);
|
|
9
|
+
* const mode = registry.get('pro');
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare class ModeRegistry {
|
|
13
|
+
private modes;
|
|
14
|
+
private defaultId;
|
|
15
|
+
constructor();
|
|
16
|
+
/** Регистрация/переопределение режима */
|
|
17
|
+
register(mode: ModeConfig): void;
|
|
18
|
+
/** Регистрация нескольких режимов */
|
|
19
|
+
registerAll(modes: ModeConfig[]): void;
|
|
20
|
+
/** Получение конфига по id */
|
|
21
|
+
get(id: string): ModeConfig | undefined;
|
|
22
|
+
/** Получение конфика по id (с fallback на default) */
|
|
23
|
+
getOrFallback(id: string): ModeConfig;
|
|
24
|
+
/** Список всех режимов */
|
|
25
|
+
list(): ModeConfig[];
|
|
26
|
+
/** Id режима по умолчанию */
|
|
27
|
+
getDefault(): string;
|
|
28
|
+
/** Установка режима по умолчанию */
|
|
29
|
+
setDefault(id: string): void;
|
|
30
|
+
/** Проверка существования режима */
|
|
31
|
+
has(id: string): boolean;
|
|
32
|
+
/** Загрузка кастомных режимов из конфига */
|
|
33
|
+
loadFromConfig(modesConfig?: Record<string, Partial<ModeConfig>>): void;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/agent/modes/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AA2F7C;;;;;;;;;GASG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,KAAK,CAAsC;IACnD,OAAO,CAAC,SAAS,CAAS;;IAU1B,yCAAyC;IACzC,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI;IAIhC,qCAAqC;IACrC,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,GAAG,IAAI;IAMtC,8BAA8B;IAC9B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU,GAAG,SAAS;IAIvC,sDAAsD;IACtD,aAAa,CAAC,EAAE,EAAE,MAAM,GAAG,UAAU;IAIrC,0BAA0B;IAC1B,IAAI,IAAI,UAAU,EAAE;IAIpB,6BAA6B;IAC7B,UAAU,IAAI,MAAM;IAIpB,oCAAoC;IACpC,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAM5B,oCAAoC;IACpC,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO;IAIxB,4CAA4C;IAC5C,cAAc,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,IAAI;CAuBxE"}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Реестр режимов агента.
|
|
3
|
+
*
|
|
4
|
+
* Хранит и управляет конфигурациями режимов.
|
|
5
|
+
* Встроенные режимы (fast/base/pro) регистрируются по умолчанию.
|
|
6
|
+
* Кастомные режимы загружаются из конфига.
|
|
7
|
+
*
|
|
8
|
+
* @module agent/modes/registry
|
|
9
|
+
*/
|
|
10
|
+
/** Встроенные режимы */
|
|
11
|
+
const BUILTIN_MODES = [
|
|
12
|
+
{
|
|
13
|
+
id: 'fast',
|
|
14
|
+
label: 'Fast',
|
|
15
|
+
systemPromptTemplate: 'fast',
|
|
16
|
+
constraints: {
|
|
17
|
+
maxSkills: 0,
|
|
18
|
+
skillTokenBudget: 0,
|
|
19
|
+
minContextWindow: 0,
|
|
20
|
+
},
|
|
21
|
+
forcedSkills: [],
|
|
22
|
+
allowAutoLoadSkills: false,
|
|
23
|
+
behaviors: {
|
|
24
|
+
planEnforcement: false,
|
|
25
|
+
directWriteStreak: false,
|
|
26
|
+
singleWritePerResponse: false,
|
|
27
|
+
readConsolidation: false,
|
|
28
|
+
continuationNudge: false,
|
|
29
|
+
},
|
|
30
|
+
ui: {
|
|
31
|
+
showThinking: false,
|
|
32
|
+
quiet: false,
|
|
33
|
+
promptPrefix: '[fast]',
|
|
34
|
+
},
|
|
35
|
+
subagentMode: 'fast',
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
id: 'base',
|
|
39
|
+
label: 'Base',
|
|
40
|
+
systemPromptTemplate: 'base',
|
|
41
|
+
constraints: {
|
|
42
|
+
maxSkills: 2,
|
|
43
|
+
skillTokenBudget: 4000,
|
|
44
|
+
minContextWindow: 0,
|
|
45
|
+
},
|
|
46
|
+
forcedSkills: [],
|
|
47
|
+
allowAutoLoadSkills: true,
|
|
48
|
+
behaviors: {
|
|
49
|
+
planEnforcement: true,
|
|
50
|
+
directWriteStreak: true,
|
|
51
|
+
singleWritePerResponse: true,
|
|
52
|
+
readConsolidation: true,
|
|
53
|
+
continuationNudge: true,
|
|
54
|
+
},
|
|
55
|
+
ui: {
|
|
56
|
+
showThinking: false,
|
|
57
|
+
quiet: false,
|
|
58
|
+
promptPrefix: '',
|
|
59
|
+
},
|
|
60
|
+
subagentMode: 'base',
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
id: 'pro',
|
|
64
|
+
label: 'Pro',
|
|
65
|
+
systemPromptTemplate: 'pro',
|
|
66
|
+
constraints: {
|
|
67
|
+
maxSkills: 0,
|
|
68
|
+
skillTokenBudget: 8000,
|
|
69
|
+
minContextWindow: 64000,
|
|
70
|
+
},
|
|
71
|
+
forcedSkills: ['grill-me'],
|
|
72
|
+
allowAutoLoadSkills: true,
|
|
73
|
+
behaviors: {
|
|
74
|
+
planEnforcement: true,
|
|
75
|
+
directWriteStreak: true,
|
|
76
|
+
singleWritePerResponse: true,
|
|
77
|
+
readConsolidation: true,
|
|
78
|
+
continuationNudge: true,
|
|
79
|
+
},
|
|
80
|
+
ui: {
|
|
81
|
+
showThinking: true,
|
|
82
|
+
quiet: false,
|
|
83
|
+
promptPrefix: '[pro]',
|
|
84
|
+
},
|
|
85
|
+
subagentMode: 'base',
|
|
86
|
+
},
|
|
87
|
+
];
|
|
88
|
+
/**
|
|
89
|
+
* Реестр режимов.
|
|
90
|
+
*
|
|
91
|
+
* Использование:
|
|
92
|
+
* ```ts
|
|
93
|
+
* const registry = new ModeRegistry();
|
|
94
|
+
* registry.register(customMode);
|
|
95
|
+
* const mode = registry.get('pro');
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
export class ModeRegistry {
|
|
99
|
+
modes = new Map();
|
|
100
|
+
defaultId;
|
|
101
|
+
constructor() {
|
|
102
|
+
// Регистрируем встроенные режимы
|
|
103
|
+
for (const mode of BUILTIN_MODES) {
|
|
104
|
+
this.modes.set(mode.id, mode);
|
|
105
|
+
}
|
|
106
|
+
this.defaultId = 'base';
|
|
107
|
+
}
|
|
108
|
+
/** Регистрация/переопределение режима */
|
|
109
|
+
register(mode) {
|
|
110
|
+
this.modes.set(mode.id, mode);
|
|
111
|
+
}
|
|
112
|
+
/** Регистрация нескольких режимов */
|
|
113
|
+
registerAll(modes) {
|
|
114
|
+
for (const mode of modes) {
|
|
115
|
+
this.register(mode);
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
/** Получение конфига по id */
|
|
119
|
+
get(id) {
|
|
120
|
+
return this.modes.get(id);
|
|
121
|
+
}
|
|
122
|
+
/** Получение конфика по id (с fallback на default) */
|
|
123
|
+
getOrFallback(id) {
|
|
124
|
+
return this.modes.get(id) ?? this.modes.get(this.defaultId);
|
|
125
|
+
}
|
|
126
|
+
/** Список всех режимов */
|
|
127
|
+
list() {
|
|
128
|
+
return Array.from(this.modes.values());
|
|
129
|
+
}
|
|
130
|
+
/** Id режима по умолчанию */
|
|
131
|
+
getDefault() {
|
|
132
|
+
return this.defaultId;
|
|
133
|
+
}
|
|
134
|
+
/** Установка режима по умолчанию */
|
|
135
|
+
setDefault(id) {
|
|
136
|
+
if (this.modes.has(id)) {
|
|
137
|
+
this.defaultId = id;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
/** Проверка существования режима */
|
|
141
|
+
has(id) {
|
|
142
|
+
return this.modes.has(id);
|
|
143
|
+
}
|
|
144
|
+
/** Загрузка кастомных режимов из конфига */
|
|
145
|
+
loadFromConfig(modesConfig) {
|
|
146
|
+
if (!modesConfig)
|
|
147
|
+
return;
|
|
148
|
+
for (const [id, overrides] of Object.entries(modesConfig)) {
|
|
149
|
+
const baseId = overrides.extends;
|
|
150
|
+
const base = baseId ? this.modes.get(baseId) : this.modes.get('base');
|
|
151
|
+
if (base) {
|
|
152
|
+
const mode = {
|
|
153
|
+
...base,
|
|
154
|
+
...overrides,
|
|
155
|
+
id,
|
|
156
|
+
constraints: { ...base.constraints, ...(overrides.constraints || {}) },
|
|
157
|
+
ui: { ...base.ui, ...(overrides.ui || {}) },
|
|
158
|
+
behaviors: { ...base.behaviors, ...(overrides.behaviors || {}) },
|
|
159
|
+
};
|
|
160
|
+
this.register(mode);
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
// Нет base — регистрируем как есть
|
|
164
|
+
this.register(overrides);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/agent/modes/registry.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Типы системы режимов агента.
|
|
3
|
+
*
|
|
4
|
+
* Mode = вариант настройки агента. Определяет:
|
|
5
|
+
* - Какой system prompt использовать
|
|
6
|
+
* - Какие инструменты/скилы доступны
|
|
7
|
+
* - Какие поведения включены
|
|
8
|
+
* - Как выглядит UI
|
|
9
|
+
*
|
|
10
|
+
* @module agent/modes/types
|
|
11
|
+
*/
|
|
12
|
+
/** Конфигурация режима агента */
|
|
13
|
+
export interface ModeConfig {
|
|
14
|
+
/** Уникальный id режима */
|
|
15
|
+
id: string;
|
|
16
|
+
/** Отображаемое имя */
|
|
17
|
+
label: string;
|
|
18
|
+
/** Ключ шаблона system prompt ('fast' | 'base' | 'pro') */
|
|
19
|
+
systemPromptTemplate: string;
|
|
20
|
+
/** Ограничения */
|
|
21
|
+
constraints: {
|
|
22
|
+
/** Макс. количество скилов (0 = безлимит) */
|
|
23
|
+
maxSkills: number;
|
|
24
|
+
/** Бюджет токенов для скилов */
|
|
25
|
+
skillTokenBudget: number;
|
|
26
|
+
/** Минимальный контекст (0 = не ограничен, pro = 64000) */
|
|
27
|
+
minContextWindow: number;
|
|
28
|
+
};
|
|
29
|
+
/** Принудительная загрузка скилов (например grill-me для pro) */
|
|
30
|
+
forcedSkills: string[];
|
|
31
|
+
/** Разрешить автозагрузку скилов по @упоминаниям */
|
|
32
|
+
allowAutoLoadSkills: boolean;
|
|
33
|
+
/** Поведения ( Record для расширяемости) */
|
|
34
|
+
behaviors: Record<string, unknown>;
|
|
35
|
+
/** UI настройки */
|
|
36
|
+
ui: {
|
|
37
|
+
showThinking: boolean;
|
|
38
|
+
quiet: boolean;
|
|
39
|
+
/** Префикс в промпте ('[fast]' / '[pro]' / '') */
|
|
40
|
+
promptPrefix: string;
|
|
41
|
+
};
|
|
42
|
+
/** Какой режим наследует subagent (id) */
|
|
43
|
+
subagentMode: string;
|
|
44
|
+
}
|
|
45
|
+
/** Контекст для applyMode */
|
|
46
|
+
export interface ModeContext {
|
|
47
|
+
quiet?: boolean;
|
|
48
|
+
showThinking?: boolean;
|
|
49
|
+
renderer?: {
|
|
50
|
+
setMode?: (mode: string) => void;
|
|
51
|
+
updateStatus?: (info: Record<string, unknown>) => void;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agent/modes/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,iCAAiC;AACjC,MAAM,WAAW,UAAU;IACzB,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,uBAAuB;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,2DAA2D;IAC3D,oBAAoB,EAAE,MAAM,CAAC;IAE7B,kBAAkB;IAClB,WAAW,EAAE;QACX,6CAA6C;QAC7C,SAAS,EAAE,MAAM,CAAC;QAClB,gCAAgC;QAChC,gBAAgB,EAAE,MAAM,CAAC;QACzB,2DAA2D;QAC3D,gBAAgB,EAAE,MAAM,CAAC;KAC1B,CAAC;IAEF,iEAAiE;IACjE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,oDAAoD;IACpD,mBAAmB,EAAE,OAAO,CAAC;IAE7B,4CAA4C;IAC5C,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEnC,mBAAmB;IACnB,EAAE,EAAE;QACF,YAAY,EAAE,OAAO,CAAC;QACtB,KAAK,EAAE,OAAO,CAAC;QACf,kDAAkD;QAClD,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;IAEF,0CAA0C;IAC1C,YAAY,EAAE,MAAM,CAAC;CACtB;AAED,6BAA6B;AAC7B,MAAM,WAAW,WAAW;IAC1B,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,EAAE;QACT,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QACjC,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,IAAI,CAAC;KACxD,CAAC;CACH"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Типы системы режимов агента.
|
|
3
|
+
*
|
|
4
|
+
* Mode = вариант настройки агента. Определяет:
|
|
5
|
+
* - Какой system prompt использовать
|
|
6
|
+
* - Какие инструменты/скилы доступны
|
|
7
|
+
* - Какие поведения включены
|
|
8
|
+
* - Как выглядит UI
|
|
9
|
+
*
|
|
10
|
+
* @module agent/modes/types
|
|
11
|
+
*/
|
|
12
|
+
export {};
|
|
13
|
+
//# sourceMappingURL=types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agent/modes/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import type { LLMProvider, ChatMessage } from '../llm/provider.js';
|
|
2
|
+
/**
|
|
3
|
+
* Минимальный общий ReAct-цикл для основного агента и субагента.
|
|
4
|
+
*
|
|
5
|
+
* Содержит только общие механики:
|
|
6
|
+
* - while loop с step counting
|
|
7
|
+
* - Инкрементальный подсчёт токенов
|
|
8
|
+
* - Compaction контекста
|
|
9
|
+
* - LLM-вызов
|
|
10
|
+
* - Парсинг и валидация tool calls
|
|
11
|
+
* - Пустые ответы
|
|
12
|
+
*
|
|
13
|
+
* Domain-логика (skills, plan enforcement, syntax check и т.д.)
|
|
14
|
+
* передаётся через callbacks.
|
|
15
|
+
*
|
|
16
|
+
* @module agent/react-loop
|
|
17
|
+
*/
|
|
18
|
+
/** Конфигурация ReAct-цикла */
|
|
19
|
+
export interface ReactLoopConfig {
|
|
20
|
+
provider: LLMProvider;
|
|
21
|
+
systemPrompt: string;
|
|
22
|
+
initialMessages?: ChatMessage[];
|
|
23
|
+
maxSteps: number;
|
|
24
|
+
quiet?: boolean;
|
|
25
|
+
showThinking?: boolean;
|
|
26
|
+
/** Имя вызывающего ('main' | 'subagent') */
|
|
27
|
+
caller?: string;
|
|
28
|
+
}
|
|
29
|
+
/** Результат выполнения ReAct-цикла */
|
|
30
|
+
export interface ReactLoopResult {
|
|
31
|
+
messages: ChatMessage[];
|
|
32
|
+
response: string;
|
|
33
|
+
steps: number;
|
|
34
|
+
aborted: boolean;
|
|
35
|
+
}
|
|
36
|
+
/** Обработчики событий цикла */
|
|
37
|
+
export interface ReactLoopHandlers {
|
|
38
|
+
/** Вызывается перед каждым шагом */
|
|
39
|
+
onStepStart?: (step: number, messages: ChatMessage[]) => void | Promise<void>;
|
|
40
|
+
/** Вызывается после LLM-ответа (до парсинга tool calls) */
|
|
41
|
+
onAfterLLM?: (step: number, response: string) => string | void | Promise<string | void>;
|
|
42
|
+
/** Вызывается для каждого tool call. Возвращает toolOutput + exitCode */
|
|
43
|
+
onToolCall?: (step: number, parsed: Record<string, unknown>, cmd: string | undefined, isBash: boolean, toolId: string) => Promise<{
|
|
44
|
+
output: string;
|
|
45
|
+
exitCode: number;
|
|
46
|
+
breakLoop?: boolean;
|
|
47
|
+
}> | null;
|
|
48
|
+
/** Вызывается после обработки всех tool calls на шаге */
|
|
49
|
+
onStepEnd?: (step: number) => void | Promise<void>;
|
|
50
|
+
/** Вызывается при compaction контекста */
|
|
51
|
+
onCompact?: (before: number, after: number) => void;
|
|
52
|
+
/** Вызывается при пустом ответе */
|
|
53
|
+
onEmptyResponse?: (step: number, consecutiveEmpty: number) => void;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Запуск минимального ReAct-цикла.
|
|
57
|
+
*
|
|
58
|
+
* @returns Результат с финальными messages и ответом
|
|
59
|
+
*/
|
|
60
|
+
export declare function reactLoop(config: ReactLoopConfig, handlers?: ReactLoopHandlers): Promise<ReactLoopResult>;
|
|
61
|
+
//# sourceMappingURL=react-loop.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"react-loop.d.ts","sourceRoot":"","sources":["../../src/agent/react-loop.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKnE;;;;;;;;;;;;;;;GAeG;AAEH,+BAA+B;AAC/B,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,WAAW,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,4CAA4C;IAC5C,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,uCAAuC;AACvC,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,gCAAgC;AAChC,MAAM,WAAW,iBAAiB;IAChC,oCAAoC;IACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9E,2DAA2D;IAC3D,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;IACxF,yEAAyE;IACzE,UAAU,CAAC,EAAE,CACX,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,GAAG,EAAE,MAAM,GAAG,SAAS,EACvB,MAAM,EAAE,OAAO,EACf,MAAM,EAAE,MAAM,KACX,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,GAAG,IAAI,CAAC;IAC/E,yDAAyD;IACzD,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnD,0CAA0C;IAC1C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACpD,mCAAmC;IACnC,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,KAAK,IAAI,CAAC;CACpE;AAED;;;;GAIG;AACH,wBAAsB,SAAS,CAC7B,MAAM,EAAE,eAAe,EACvB,QAAQ,GAAE,iBAAsB,GAC/B,OAAO,CAAC,eAAe,CAAC,CAuH1B"}
|