mister-wolf 2.10.0 → 2.12.0
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/adapters/cli/cli-entry.d.ts.map +1 -1
- package/dist/adapters/cli/cli-entry.js +337 -94
- package/dist/adapters/cli/cli-entry.js.map +1 -1
- package/dist/adapters/cli/commands/analytics.d.ts +1 -1
- package/dist/adapters/cli/commands/analytics.d.ts.map +1 -1
- package/dist/adapters/cli/commands/analytics.js +30 -1
- package/dist/adapters/cli/commands/analytics.js.map +1 -1
- package/dist/adapters/cli/commands/memory-brief.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-brief.js +15 -2
- package/dist/adapters/cli/commands/memory-brief.js.map +1 -1
- package/dist/adapters/cli/commands/memory-call.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-call.js +54 -3
- package/dist/adapters/cli/commands/memory-call.js.map +1 -1
- package/dist/adapters/cli/commands/memory-recap.d.ts.map +1 -1
- package/dist/adapters/cli/commands/memory-recap.js +16 -1
- package/dist/adapters/cli/commands/memory-recap.js.map +1 -1
- package/dist/adapters/fs/config-file.d.ts +8 -0
- package/dist/adapters/fs/config-file.d.ts.map +1 -1
- package/dist/adapters/fs/config-file.js +57 -2
- package/dist/adapters/fs/config-file.js.map +1 -1
- package/dist/adapters/fs/heuristic-project-scanner.d.ts +10 -0
- package/dist/adapters/fs/heuristic-project-scanner.d.ts.map +1 -1
- package/dist/adapters/fs/heuristic-project-scanner.js +58 -1
- package/dist/adapters/fs/heuristic-project-scanner.js.map +1 -1
- package/dist/adapters/fs/markdown-memory-store.d.ts +2 -0
- package/dist/adapters/fs/markdown-memory-store.d.ts.map +1 -1
- package/dist/adapters/fs/markdown-memory-store.js +25 -1
- package/dist/adapters/fs/markdown-memory-store.js.map +1 -1
- package/dist/adapters/fs/scan-snapshot-cache.d.ts +23 -0
- package/dist/adapters/fs/scan-snapshot-cache.d.ts.map +1 -0
- package/dist/adapters/fs/scan-snapshot-cache.js +36 -0
- package/dist/adapters/fs/scan-snapshot-cache.js.map +1 -0
- package/dist/adapters/fs/session-delivery-registry.d.ts +31 -0
- package/dist/adapters/fs/session-delivery-registry.d.ts.map +1 -0
- package/dist/adapters/fs/session-delivery-registry.js +104 -0
- package/dist/adapters/fs/session-delivery-registry.js.map +1 -0
- package/dist/adapters/fs/session-metrics-log.d.ts +15 -3
- package/dist/adapters/fs/session-metrics-log.d.ts.map +1 -1
- package/dist/adapters/fs/session-metrics-log.js +150 -29
- package/dist/adapters/fs/session-metrics-log.js.map +1 -1
- package/dist/adapters/mcp/mcp-schemas.d.ts +10 -1
- package/dist/adapters/mcp/mcp-schemas.d.ts.map +1 -1
- package/dist/adapters/mcp/mcp-schemas.js +29 -0
- package/dist/adapters/mcp/mcp-schemas.js.map +1 -1
- package/dist/adapters/mcp/mcp-tools.d.ts.map +1 -1
- package/dist/adapters/mcp/mcp-tools.js +72 -19
- package/dist/adapters/mcp/mcp-tools.js.map +1 -1
- package/dist/adapters/render/opencode/opencode-renderer.d.ts +1 -0
- package/dist/adapters/render/opencode/opencode-renderer.d.ts.map +1 -1
- package/dist/adapters/render/opencode/opencode-renderer.js +47 -8
- package/dist/adapters/render/opencode/opencode-renderer.js.map +1 -1
- package/dist/adapters/render/sync-state.d.ts +9 -0
- package/dist/adapters/render/sync-state.d.ts.map +1 -0
- package/dist/adapters/render/sync-state.js +32 -0
- package/dist/adapters/render/sync-state.js.map +1 -0
- package/dist/adapters/sqlite/sqlite-search-index.d.ts +6 -1
- package/dist/adapters/sqlite/sqlite-search-index.d.ts.map +1 -1
- package/dist/adapters/sqlite/sqlite-search-index.js +47 -25
- package/dist/adapters/sqlite/sqlite-search-index.js.map +1 -1
- package/dist/app/use-cases/add-memory-object.d.ts.map +1 -1
- package/dist/app/use-cases/add-memory-object.js +2 -1
- package/dist/app/use-cases/add-memory-object.js.map +1 -1
- package/dist/app/use-cases/build-analytics.d.ts +64 -1
- package/dist/app/use-cases/build-analytics.d.ts.map +1 -1
- package/dist/app/use-cases/build-analytics.js +157 -0
- package/dist/app/use-cases/build-analytics.js.map +1 -1
- package/dist/app/use-cases/generate-agent-brief.d.ts.map +1 -1
- package/dist/app/use-cases/generate-agent-brief.js +3 -0
- package/dist/app/use-cases/generate-agent-brief.js.map +1 -1
- package/dist/app/use-cases/generate-recap.d.ts +14 -0
- package/dist/app/use-cases/generate-recap.d.ts.map +1 -1
- package/dist/app/use-cases/generate-recap.js +37 -0
- package/dist/app/use-cases/generate-recap.js.map +1 -1
- package/dist/app/use-cases/get-call-injections.d.ts +6 -0
- package/dist/app/use-cases/get-call-injections.d.ts.map +1 -1
- package/dist/app/use-cases/get-call-injections.js +26 -8
- package/dist/app/use-cases/get-call-injections.js.map +1 -1
- package/dist/app/use-cases/scan-project.d.ts +36 -1
- package/dist/app/use-cases/scan-project.d.ts.map +1 -1
- package/dist/app/use-cases/scan-project.js +91 -37
- package/dist/app/use-cases/scan-project.js.map +1 -1
- package/dist/domain/error-class.d.ts.map +1 -1
- package/dist/domain/error-class.js +5 -0
- package/dist/domain/error-class.js.map +1 -1
- package/dist/domain/memory-types.d.ts.map +1 -1
- package/dist/domain/memory-types.js +7 -2
- package/dist/domain/memory-types.js.map +1 -1
- package/dist/domain/router-log.d.ts +8 -2
- package/dist/domain/router-log.d.ts.map +1 -1
- package/dist/domain/router-log.js +14 -2
- package/dist/domain/router-log.js.map +1 -1
- package/dist/domain/schemas/relation-schema.d.ts +1 -1
- package/package.json +1 -1
- package/templates/base/agents/executor-lead.md +5 -3
- package/templates/base/playbooks/executor-lead-playbook.md +68 -0
- package/templates/opencode/plugins/wolf-router.ts +102 -44
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { UserFacingError } from './errors.js';
|
|
1
2
|
const FULL = [
|
|
2
3
|
'active',
|
|
3
4
|
'open',
|
|
@@ -293,8 +294,12 @@ export const CORE_TAXONOMY = CORE_TAXONOMY_DECLS;
|
|
|
293
294
|
/** Поиск декларации: сначала core-таксономия, потом extra (project-типы из config.yaml). */
|
|
294
295
|
export function getDeclaration(type, extra) {
|
|
295
296
|
const decl = CORE_TAXONOMY.find((d) => d.name === type) ?? extra?.find((d) => d.name === type);
|
|
296
|
-
if (!decl)
|
|
297
|
-
|
|
297
|
+
if (!decl) {
|
|
298
|
+
// T011: UserFacingError + список валидных типов (включая deprecated document) —
|
|
299
|
+
// агент получает читаемую ошибку, classifyError матчит 'unknown memory type' → invalid_input
|
|
300
|
+
const valid = [...CORE_TAXONOMY.map((d) => d.name), ...(extra ?? []).map((d) => d.name)].join(', ');
|
|
301
|
+
throw new UserFacingError(`Unknown memory type "${type}". Valid types: ${valid}`);
|
|
302
|
+
}
|
|
298
303
|
return decl;
|
|
299
304
|
}
|
|
300
305
|
export function subdirectoryFor(type, scope) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"memory-types.js","sourceRoot":"","sources":["../../src/domain/memory-types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"memory-types.js","sourceRoot":"","sources":["../../src/domain/memory-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
* Пишет плагин wolf-router (templates/opencode/plugins/wolf-router.ts):
|
|
4
4
|
* `<ISO> agent-id=<id> playbook=hit name=<mem-id> variant=canonical injected=yes`
|
|
5
5
|
* `<ISO> agent-id=<id> playbook=miss injected=no`
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* P106 (волна 2.12): строка дополняется `ms=<resolve>` и `bytes=<playbook bytes>`
|
|
7
|
+
* (nullable — старые строки полей не имеют). Старые файлы могут не иметь
|
|
8
|
+
* name/variant. Парсинг k=v парами (не позиционно), чтобы пережить будущие
|
|
9
|
+
* поля; строка валидна ⇔ есть agent-id И playbook=hit|miss.
|
|
8
10
|
* Битая строка не роняет аналитику — только malformedLines (прецедент readJsonl).
|
|
9
11
|
*/
|
|
10
12
|
export interface RouterLogRow {
|
|
@@ -13,6 +15,10 @@ export interface RouterLogRow {
|
|
|
13
15
|
hit: boolean;
|
|
14
16
|
playbookId: string | null;
|
|
15
17
|
variant: string | null;
|
|
18
|
+
/** P106: длительность resolve, мс (нет в старых строках). */
|
|
19
|
+
ms: number | null;
|
|
20
|
+
/** P106: размер инъекции playbook, байты (нет в старых строках). */
|
|
21
|
+
bytes: number | null;
|
|
16
22
|
}
|
|
17
23
|
export declare function parseRouterLog(text: string): {
|
|
18
24
|
rows: RouterLogRow[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router-log.d.ts","sourceRoot":"","sources":["../../src/domain/router-log.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"router-log.d.ts","sourceRoot":"","sources":["../../src/domain/router-log.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,OAAO,CAAC;IACb,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,6DAA6D;IAC7D,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,oEAAoE;IACpE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,CAW7F"}
|
|
@@ -3,8 +3,10 @@
|
|
|
3
3
|
* Пишет плагин wolf-router (templates/opencode/plugins/wolf-router.ts):
|
|
4
4
|
* `<ISO> agent-id=<id> playbook=hit name=<mem-id> variant=canonical injected=yes`
|
|
5
5
|
* `<ISO> agent-id=<id> playbook=miss injected=no`
|
|
6
|
-
*
|
|
7
|
-
*
|
|
6
|
+
* P106 (волна 2.12): строка дополняется `ms=<resolve>` и `bytes=<playbook bytes>`
|
|
7
|
+
* (nullable — старые строки полей не имеют). Старые файлы могут не иметь
|
|
8
|
+
* name/variant. Парсинг k=v парами (не позиционно), чтобы пережить будущие
|
|
9
|
+
* поля; строка валидна ⇔ есть agent-id И playbook=hit|miss.
|
|
8
10
|
* Битая строка не роняет аналитику — только malformedLines (прецедент readJsonl).
|
|
9
11
|
*/
|
|
10
12
|
export function parseRouterLog(text) {
|
|
@@ -40,12 +42,22 @@ function parseLine(line) {
|
|
|
40
42
|
return null;
|
|
41
43
|
const name = kv.get('name');
|
|
42
44
|
const variant = kv.get('variant');
|
|
45
|
+
// P106: ms/bytes — целые числа; нечисловое/отсутствующее → null (толерантность)
|
|
46
|
+
const num = (key) => {
|
|
47
|
+
const v = kv.get(key);
|
|
48
|
+
if (v === undefined || !/^\d+$/.test(v))
|
|
49
|
+
return null;
|
|
50
|
+
const n = Number(v);
|
|
51
|
+
return Number.isSafeInteger(n) ? n : null;
|
|
52
|
+
};
|
|
43
53
|
return {
|
|
44
54
|
ts,
|
|
45
55
|
agentId,
|
|
46
56
|
hit: playbook === 'hit',
|
|
47
57
|
playbookId: name !== undefined && name !== '' ? name : null,
|
|
48
58
|
variant: variant !== undefined && variant !== '' ? variant : null,
|
|
59
|
+
ms: num('ms'),
|
|
60
|
+
bytes: num('bytes'),
|
|
49
61
|
};
|
|
50
62
|
}
|
|
51
63
|
//# sourceMappingURL=router-log.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router-log.js","sourceRoot":"","sources":["../../src/domain/router-log.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"router-log.js","sourceRoot":"","sources":["../../src/domain/router-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,10 +4,10 @@ export declare const RelationSchema: z.ZodObject<{
|
|
|
4
4
|
id: z.ZodString;
|
|
5
5
|
subject: z.ZodString;
|
|
6
6
|
predicate: z.ZodEnum<{
|
|
7
|
+
superseded_by: "superseded_by";
|
|
7
8
|
answers: "answers";
|
|
8
9
|
supports: "supports";
|
|
9
10
|
owner_skill: "owner_skill";
|
|
10
|
-
superseded_by: "superseded_by";
|
|
11
11
|
answered_by: "answered_by";
|
|
12
12
|
supported_by: "supported_by";
|
|
13
13
|
based_on: "based_on";
|
package/package.json
CHANGED
|
@@ -20,9 +20,11 @@ agent-id: executor-lead
|
|
|
20
20
|
|
|
21
21
|
- **РАМКА** — этот файл: роль, границы, запреты. Статична; меняется
|
|
22
22
|
только `wolf sync`.
|
|
23
|
-
- **ЛИЦО** —
|
|
24
|
-
а
|
|
25
|
-
|
|
23
|
+
- **ЛИЦО** — playbook `executor-lead` (канон в памяти Wolf): базовые
|
|
24
|
+
контракты lead'а (декомпозиция, промпты воркеров, пределы); работа
|
|
25
|
+
по нему обязательна.
|
|
26
|
+
- **ДОСТАВКА** — plugin-inject (основной); при недоступности канона
|
|
27
|
+
роутер доставляет универсальный fallback-playbook.
|
|
26
28
|
|
|
27
29
|
## Контекст-бюджет уровня L1
|
|
28
30
|
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Executor-lead playbook v1 — конвейер декомпозиции и приёмки
|
|
3
|
+
owner_skill: executor-lead
|
|
4
|
+
version: 1
|
|
5
|
+
steps: Прочитай Task Brief и классифицируй подзадачи ДО исполнения | TRIVIAL/SIMPLE делай сам, MEDIUM/COMPLEX декомпозируй на воркеров | Спавнь независимых воркеров параллельно с полными промптами | Прими отчёты и сверь с критериями проверки | Верни REPORT/STATUS/CRITERIA и полный отчёт в файл
|
|
6
|
+
tags: executor-lead playbook,playbook
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
playbook: v1 (executor-lead). Владелец: executor-lead. Меняется
|
|
10
|
+
только через инкремент версии; мутатор — Стюард.
|
|
11
|
+
|
|
12
|
+
## ДЕКОМПОЗИЦИЯ ДО ИСПОЛНЕНИЯ (таблица — в отчёт, она доказывает классификацию)
|
|
13
|
+
|
|
14
|
+
| Класс | Признаки | Исполнитель |
|
|
15
|
+
|---|---|---|
|
|
16
|
+
| TRIVIAL | ≤50 строк, 1 файл, без архитектуры | сам |
|
|
17
|
+
| SIMPLE | ≤200 строк, 1–2 файла, без архитектуры | сам |
|
|
18
|
+
| MEDIUM | ≤500 строк ИЛИ 3+ файла | воркеры |
|
|
19
|
+
| COMPLEX | архитектура / кросс-слой / риск регрессии | воркеры |
|
|
20
|
+
|
|
21
|
+
Независимые подзадачи → воркеров спавнь ПАРАЛЛЕЛЬНО, не последовательно.
|
|
22
|
+
|
|
23
|
+
## ПРОМПТ ВОРКЕРА
|
|
24
|
+
|
|
25
|
+
Полный текст подзадачи (не ссылка) + точные пути файлов + контракт
|
|
26
|
+
результата + критерий проверки + блок «Инструменты» (какие тула, известные
|
|
27
|
+
ловушки). Передал подходящее — снял с воркера расход на пробы. Плохой
|
|
28
|
+
промпт = мусор в ответе — ошибка lead'а. Исследовательские подзадачи
|
|
29
|
+
(«как устроен X», «почему в Z так») → `worker-researcher`, не делай сам.
|
|
30
|
+
|
|
31
|
+
## КОНТРАКТ ФИНАЛЬНОГО ОТВЕТА
|
|
32
|
+
|
|
33
|
+
`REPORT: <path>` / `STATUS: <complete | partial>` / `CRITERIA: <n>/<m>`
|
|
34
|
+
кратко координатору; полный отчёт — файл (Metadata / Summary / Changes /
|
|
35
|
+
Task Decomposition / Workers Used / Validation Results).
|
|
36
|
+
|
|
37
|
+
## ПРЕДЕЛЫ И ОТКАЗЫ
|
|
38
|
+
|
|
39
|
+
- Лимит воркеров на сессию: 5; фикс не удался за 2 попытки → partial.
|
|
40
|
+
- «Нужен executor» от воркера → переклассифицируй подзадачу.
|
|
41
|
+
- Противоречивый бриф → partial с причиной, не выдумывай за границами.
|
|
42
|
+
- Pre-existing failure (красное до твоих правок) — фиксируй отдельно,
|
|
43
|
+
не чини чужое.
|
|
44
|
+
- FRICTION из ответов воркеров — эскалируй в раздел FRICTION отчёта.
|
|
45
|
+
- Коммиты — только если бриф явно поручает.
|
|
46
|
+
|
|
47
|
+
## КОНТУР ЛИЦА
|
|
48
|
+
|
|
49
|
+
- ДО задачи: `wolf search "executor-lead playbook"` — работай по
|
|
50
|
+
наибольшей версии.
|
|
51
|
+
- ТРИГГЕР ЖАЛОБЫ (обязателен, не на усмотрение): систематически плохо
|
|
52
|
+
ПРАВИЛО (декомпозиция/промпт воркера/контракт ответа), не тул и не
|
|
53
|
+
разовый случай: **W1** предписание противоречит брифу — следовать
|
|
54
|
+
обоим невозможно; **W2** случай не покрыт правилом; **W3** следование
|
|
55
|
+
предписанию даёт неверный результат (пруф); **W4** предписание
|
|
56
|
+
двусмысленно — два прочтения с разными результатами (второе прочтение —
|
|
57
|
+
в evidence). Сбой тула → FRICTION, не жалоба. Сработал →
|
|
58
|
+
`wolf complain --about executor-lead --rule "п.N требует X"
|
|
59
|
+
--evidence "дословная цитата + что произошло" --proposal "что
|
|
60
|
+
изменить"` → строка `COMPLAINT: <id> — …` в отчёте (после FRICTION).
|
|
61
|
+
Строка в отчёте жалобу НЕ заменяет. Стюарда не вызываю и статусы не
|
|
62
|
+
перевожу — триажирует диспетчер; задачу завершаю штатно, не жду
|
|
63
|
+
реакции. Не мутируй playbook сам — мутатор всегда Стюард.
|
|
64
|
+
|
|
65
|
+
## ПРИЧИНА ВЕРСИИ
|
|
66
|
+
|
|
67
|
+
Посев wolf-init (T012, волна 1.1): контракты lead'а вынесены из рамки в
|
|
68
|
+
лицо — рамка статична, конвейер калибруется жалобами через Стюарда.
|
|
@@ -5,17 +5,20 @@
|
|
|
5
5
|
* доставка вместо вероятностного wolf search агентом. Маркер
|
|
6
6
|
* `agent-id: <id>` В ТЕЛЕ рамки агента (frontmatter в system-промпт не
|
|
7
7
|
* попадает — известная грабля) → wolf search --type playbook → get +
|
|
8
|
-
* гвард owner_skill === agentId | `skill:${agentId}` (legacy) →
|
|
9
|
-
*
|
|
8
|
+
* гвард owner_skill === agentId | `skill:${agentId}` (legacy) → первый
|
|
9
|
+
* прошедший гвард кандидат (ранний стоп, A2-б) → инжект в system-промпт
|
|
10
|
+
* на каждое сообщение.
|
|
10
11
|
*
|
|
11
|
-
* Fallback
|
|
12
|
-
*
|
|
13
|
-
*
|
|
12
|
+
* Fallback (T012, волна 1.1): канон приоритетен; при miss для ЛЮБОГО
|
|
13
|
+
* agent-id инъецируется встроенный универсальный FALLBACK_PLAYBOOK —
|
|
14
|
+
* доставка не зависит от того, звала ли рамка wolf search (слой №2).
|
|
15
|
+
* В router.log: variant=canonical | variant=fallback. Реестр доставок =
|
|
16
|
+
* сами playbook-объекты через owner_skill, отдельного конфига нет.
|
|
14
17
|
*
|
|
15
18
|
* Ноль зависимостей (Node stdlib; ai-sdk НЕ используется). Fail-safe: всё в
|
|
16
19
|
* try/catch — плагин не имеет права уронить сессию (лог: .wolf/router.log —
|
|
17
|
-
* agent-id,
|
|
18
|
-
* подстановка {{tool.*}} и штамп `// wolf:rendered` (ставит рендерер).
|
|
20
|
+
* agent-id, name, variant, injected, ms, bytes). Через этот файл при рендере
|
|
21
|
+
* проходят подстановка {{tool.*}} и штамп `// wolf:rendered` (ставит рендерер).
|
|
19
22
|
*/
|
|
20
23
|
|
|
21
24
|
import path from 'path';
|
|
@@ -31,21 +34,41 @@ const LOCAL_CLI = path.join(PROJECT_ROOT, 'dist', 'bootstrap', 'cli.js');
|
|
|
31
34
|
// WOLF_ROUTER_LOG — тест-шов (юнит-тесты пишут в tmp, не в живой dogfood-лог)
|
|
32
35
|
const LOG = process.env.WOLF_ROUTER_LOG ?? path.join(PROJECT_ROOT, '.wolf', 'router.log');
|
|
33
36
|
const INJECT_HEADER = '# Актуальный playbook (источник: память Wolf, доставлен плагином; обязательный формат ответа)';
|
|
37
|
+
// T012 (волна 1.1): встроенный универсальный playbook для agent-id без канона
|
|
38
|
+
// в памяти. Role-агностичный базовый контур Wolf; канон всегда приоритетен.
|
|
39
|
+
const FALLBACK_PLAYBOOK = `# Универсальный playbook (fallback)
|
|
40
|
+
|
|
41
|
+
Канонического playbook для твоего agent-id в памяти Wolf нет — работай
|
|
42
|
+
по этому универсальному контуру.
|
|
43
|
+
|
|
44
|
+
1. Холодный старт сессии: \`wolf call\` → \`wolf brief\` — возвращённые
|
|
45
|
+
injections и brief — активное руководство проекта.
|
|
46
|
+
2. Значимое фиксируй в память Wolf: решения — \`add --type decision\`,
|
|
47
|
+
уроки — \`--type lesson\`, блокеры — \`--type blocker\`.
|
|
48
|
+
3. Состояние проекта спрашивай у Wolf (\`wolf search\`, \`wolf get\`,
|
|
49
|
+
\`wolf brief\`): статические списки в файлах устаревают.
|
|
50
|
+
4. Правила и playbook'ы не мутируй сам — мутатор Стюард; систематически
|
|
51
|
+
плохое ПРАВИЛО → \`wolf complain\` (не тул и не разовый случай).
|
|
52
|
+
5. Сбой тула — FRICTION-строка в отчёте (\`FRICTION: <n>× <тул> —
|
|
53
|
+
причина; обошёл через <что сработало>\`), не молча и не ретраи в стол.`;
|
|
34
54
|
// [ \t] вместо \s: \s съедает переводы строк и вытаскивает id с чужой строки.
|
|
35
55
|
const AGENT_ID_RE = /^agent-id:[ \t]*([\w-]+)[ \t]*$/m;
|
|
36
|
-
|
|
56
|
+
// Спека A2: playbook — canonical-память, Стюард мутирует редко → TTL 5 минут.
|
|
57
|
+
// Негативный кэш (null) живёт тем же TTL — повторный miss не спавнит CLI.
|
|
58
|
+
const CACHE_TTL_MS = 300_000;
|
|
59
|
+
|
|
60
|
+
// agent-id последней рамки, пропущенной через system.transform (для skill-метрики B3)
|
|
61
|
+
let lastAgentId: string | null = null;
|
|
37
62
|
|
|
38
63
|
const run = promisify(execFile);
|
|
39
64
|
// execFile: args array, no shell. Целевой проект — глобальный `wolf`;
|
|
40
65
|
// догфуд в репо Wolf — локальный dist. Ошибка обоих → исключение наверх (fail-safe).
|
|
41
|
-
//
|
|
42
|
-
//
|
|
66
|
+
// WOLF_SESSION (4.C): ключ ставится фабрикой ОДИН раз на процесс opencode —
|
|
67
|
+
// спавны и bash-вызовы волка наследуют его из process.env (execFile без
|
|
68
|
+
// env-поля наследует сам). Известный потолок: несколько чатов одного процесса
|
|
69
|
+
// opencode шарят ключ — консервативная недо-дедупликация, не ошибка.
|
|
43
70
|
const runWolf = (args: string[]): Promise<{ stdout: string }> => {
|
|
44
|
-
const opts = {
|
|
45
|
-
cwd: PROJECT_ROOT,
|
|
46
|
-
timeout: 5000,
|
|
47
|
-
env: { ...process.env, WOLF_SESSION: 'opc-' + randomUUID() },
|
|
48
|
-
};
|
|
71
|
+
const opts = { cwd: PROJECT_ROOT, timeout: 5000 };
|
|
49
72
|
return run('wolf', args, opts).catch(() => run('node', [LOCAL_CLI, ...args], opts));
|
|
50
73
|
};
|
|
51
74
|
|
|
@@ -58,7 +81,8 @@ function logRoute(line: string): void {
|
|
|
58
81
|
}
|
|
59
82
|
}
|
|
60
83
|
|
|
61
|
-
// ponytail: per-agent кэш
|
|
84
|
+
// ponytail: per-agent кэш на TTL 5 мин — canonical-память мутируется редко,
|
|
85
|
+
// CLI-спавн не на каждое сообщение.
|
|
62
86
|
const cache = new Map<string, { value: { id: string; body: string } | null; at: number }>();
|
|
63
87
|
|
|
64
88
|
async function resolvePlaybook(agentId: string): Promise<{ id: string; body: string } | null> {
|
|
@@ -68,20 +92,17 @@ async function resolvePlaybook(agentId: string): Promise<{ id: string; body: str
|
|
|
68
92
|
try {
|
|
69
93
|
const { stdout } = await runWolf(['search', agentId, '--type', 'playbook', '--hide-superseded']);
|
|
70
94
|
const ids = [...stdout.matchAll(/^([\w-]+) \[playbook\]/gm)].map((m) => m[1]);
|
|
71
|
-
|
|
72
|
-
|
|
95
|
+
// Ранний стоп (спека A2-б): релевантность поиска уже отсортировала,
|
|
96
|
+
// --hide-superseded отсекает старые версии — первый кандидат, прошедший
|
|
97
|
+
// гвард владельца, и есть результат (один get при miss вместо K подряд).
|
|
73
98
|
for (const id of ids) {
|
|
74
99
|
const { stdout: json } = await runWolf(['get', id]);
|
|
75
100
|
const obj = JSON.parse(json);
|
|
76
101
|
const owner = obj.owner_skill ?? obj.extra?.owner_skill;
|
|
77
102
|
if (owner !== agentId && owner !== `skill:${agentId}`) continue; // гвард владельца
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
bestVersion = version;
|
|
81
|
-
best = obj;
|
|
82
|
-
}
|
|
103
|
+
if (obj.body) found = { id: String(obj.id ?? id), body: obj.body };
|
|
104
|
+
break;
|
|
83
105
|
}
|
|
84
|
-
found = best?.body ? { id: String(best.id ?? ''), body: best.body } : null;
|
|
85
106
|
} catch {
|
|
86
107
|
/* fail-safe: без playbook — рамка работает через wolf search */
|
|
87
108
|
}
|
|
@@ -89,24 +110,61 @@ async function resolvePlaybook(agentId: string): Promise<{ id: string; body: str
|
|
|
89
110
|
return found;
|
|
90
111
|
}
|
|
91
112
|
|
|
92
|
-
export const WolfPlaybookPlugin = async () =>
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
return; //
|
|
113
|
+
export const WolfPlaybookPlugin = async () => {
|
|
114
|
+
// 4.C: один WOLF_SESSION на процесс opencode — спавны волка и bash-вызовы
|
|
115
|
+
// наследуют ключ. Известный потолок: несколько чатов одного процесса
|
|
116
|
+
// opencode шарят ключ — консервативная недо-дедупликация.
|
|
117
|
+
if (!process.env.WOLF_SESSION) process.env.WOLF_SESSION = 'opc-' + randomUUID();
|
|
118
|
+
return {
|
|
119
|
+
'experimental.chat.system.transform': async (_input, output) => {
|
|
120
|
+
try {
|
|
121
|
+
const joined = output.system.join('\n');
|
|
122
|
+
const m = joined.match(AGENT_ID_RE);
|
|
123
|
+
if (!m) return; // рамка без маркера — не наша забота
|
|
124
|
+
if (joined.includes(INJECT_HEADER)) return; // идемпотентность: не вставляем дважды
|
|
125
|
+
const agentId = m[1];
|
|
126
|
+
lastAgentId = agentId; // агент известен хуку skill-метрики (B3)
|
|
127
|
+
const startedAt = Date.now();
|
|
128
|
+
const resolved = await resolvePlaybook(agentId);
|
|
129
|
+
const ms = Date.now() - startedAt;
|
|
130
|
+
if (resolved) {
|
|
131
|
+
output.system.push(`\n\n${INJECT_HEADER}\n\n${resolved.body}`);
|
|
132
|
+
logRoute(
|
|
133
|
+
`agent-id=${agentId} playbook=hit name=${resolved.id} variant=canonical injected=yes` +
|
|
134
|
+
` ms=${ms} bytes=${Buffer.byteLength(resolved.body)}`
|
|
135
|
+
);
|
|
136
|
+
} else {
|
|
137
|
+
// T012: miss канона → универсальный fallback; инъекция для любого agent-id
|
|
138
|
+
output.system.push(`\n\n${INJECT_HEADER}\n\n${FALLBACK_PLAYBOOK}`);
|
|
139
|
+
logRoute(
|
|
140
|
+
`agent-id=${agentId} playbook=hit name=fallback variant=fallback injected=yes` +
|
|
141
|
+
` ms=${ms} bytes=${Buffer.byteLength(FALLBACK_PLAYBOOK)}`
|
|
142
|
+
);
|
|
143
|
+
}
|
|
144
|
+
} catch {
|
|
145
|
+
/* fail-safe: не роняем сессию */
|
|
104
146
|
}
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
147
|
+
},
|
|
148
|
+
// B3: метрика вызовов скиллов. Форма входа по докам opencode: input.tool —
|
|
149
|
+
// имя тула, output.args — объект аргументов (name | skill — фолбэк).
|
|
150
|
+
// Отдельный JSONL-файл — инвариант: enum событий SignalEventSchema закрытый,
|
|
151
|
+
// в общий router.log эти события класть нельзя. WOLF_SKILL_LOG — тест-шов
|
|
152
|
+
// (читается на каждый вызов: env ставится тестами уже после импорта модуля).
|
|
153
|
+
'tool.execute.before': async (input: unknown, output: unknown) => {
|
|
154
|
+
try {
|
|
155
|
+
if ((input as { tool?: string } | null)?.tool !== 'skill') return;
|
|
156
|
+
const args = (output as { args?: { name?: string; skill?: string } } | null)?.args;
|
|
157
|
+
const skill = args?.name ?? args?.skill;
|
|
158
|
+
if (!skill) return;
|
|
159
|
+
const file =
|
|
160
|
+
process.env.WOLF_SKILL_LOG ?? path.join(PROJECT_ROOT, '.wolf', 'metrics', 'skill-invocations.jsonl');
|
|
161
|
+
fs.mkdirSync(path.dirname(file), { recursive: true });
|
|
162
|
+
const entry: { ts: string; skill: string; agent?: string } = { ts: new Date().toISOString(), skill };
|
|
163
|
+
if (lastAgentId) entry.agent = lastAgentId;
|
|
164
|
+
fs.appendFileSync(file, `${JSON.stringify(entry)}\n`);
|
|
165
|
+
} catch {
|
|
166
|
+
/* fail-safe: падение метрики не роняет сессию */
|
|
167
|
+
}
|
|
168
|
+
},
|
|
169
|
+
};
|
|
170
|
+
};
|