izanagi-ai 3.10.1 → 3.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/.manifest +3 -3
- package/RULES.md +8 -0
- package/dist/cli/commands/run.d.ts +53 -0
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +132 -20
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/runtime/llm/client.d.ts +46 -2
- package/dist/runtime/llm/client.d.ts.map +1 -1
- package/dist/runtime/llm/client.js +81 -13
- package/dist/runtime/llm/client.js.map +1 -1
- package/dist/runtime/llm/prompt-cache.d.ts +68 -0
- package/dist/runtime/llm/prompt-cache.d.ts.map +1 -0
- package/dist/runtime/llm/prompt-cache.js +80 -0
- package/dist/runtime/llm/prompt-cache.js.map +1 -0
- package/dist/runtime/llm/session-diet.d.ts +83 -0
- package/dist/runtime/llm/session-diet.d.ts.map +1 -0
- package/dist/runtime/llm/session-diet.js +108 -0
- package/dist/runtime/llm/session-diet.js.map +1 -0
- package/dist/runtime/tests/prompt-cache.test.d.ts +2 -0
- package/dist/runtime/tests/prompt-cache.test.d.ts.map +1 -0
- package/dist/runtime/tests/prompt-cache.test.js +227 -0
- package/dist/runtime/tests/prompt-cache.test.js.map +1 -0
- package/dist/runtime/tests/run-cache-telemetry.test.d.ts +2 -0
- package/dist/runtime/tests/run-cache-telemetry.test.d.ts.map +1 -0
- package/dist/runtime/tests/run-cache-telemetry.test.js +237 -0
- package/dist/runtime/tests/run-cache-telemetry.test.js.map +1 -0
- package/dist/runtime/tests/run-skill-disclosure.test.d.ts +2 -0
- package/dist/runtime/tests/run-skill-disclosure.test.d.ts.map +1 -0
- package/dist/runtime/tests/run-skill-disclosure.test.js +241 -0
- package/dist/runtime/tests/run-skill-disclosure.test.js.map +1 -0
- package/dist/runtime/tests/session-diet.test.d.ts +2 -0
- package/dist/runtime/tests/session-diet.test.d.ts.map +1 -0
- package/dist/runtime/tests/session-diet.test.js +188 -0
- package/dist/runtime/tests/session-diet.test.js.map +1 -0
- package/dist/runtime/text/frontmatter.d.ts +62 -0
- package/dist/runtime/text/frontmatter.d.ts.map +1 -0
- package/dist/runtime/text/frontmatter.js +270 -0
- package/dist/runtime/text/frontmatter.js.map +1 -0
- package/package.json +1 -1
- package/skills/economia-tokens/SKILL.md +21 -2
package/.manifest
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "izanagi-ai",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.12.0",
|
|
4
4
|
"description": "Izanagi AI - Modular Skill-Oriented AI Prompt & Agent Framework for Autonomous Software Engineering",
|
|
5
5
|
"author": "Pedro Henrique Sanches Leal",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"homepage": "https://github.com/pedrohenriquesanchesleal4-debug/izanagi-ai#readme",
|
|
8
|
-
"generatedAt": "2026-08-
|
|
8
|
+
"generatedAt": "2026-08-23T20:20:32.068Z",
|
|
9
9
|
"agents": [
|
|
10
10
|
{
|
|
11
11
|
"id": "adversarial-critic",
|
|
@@ -787,7 +787,7 @@
|
|
|
787
787
|
},
|
|
788
788
|
{
|
|
789
789
|
"id": "economia-tokens",
|
|
790
|
-
"name": "
|
|
790
|
+
"name": "economia-tokens",
|
|
791
791
|
"version": "1.0.0",
|
|
792
792
|
"path": "skills/economia-tokens/SKILL.md"
|
|
793
793
|
},
|
package/RULES.md
CHANGED
|
@@ -87,6 +87,14 @@ Regras obrigatórias de autonomia e execução:
|
|
|
87
87
|
- **Autonomia de ponta a ponta:** Execute a tarefa até a conclusão total (planejamento → instalação de deps → código completo → build e verificação), sem parar pela metade ou exigir intervenção manual desnecessária.
|
|
88
88
|
- **Execução proativa de comandos:** Sempre que houver comandos utilitários, de build, teste ou instalação necessários para o sucesso da tarefa, execute-os autonomamente.
|
|
89
89
|
|
|
90
|
+
### 2.6 Zero-Waste Execution (Tools & Edits)
|
|
91
|
+
|
|
92
|
+
Diretrizes de desperdício-zero ao executar e editar; detalhamento completo na skill `economia-tokens` (Fluxo Zero-Waste + Pilares 4 e 6):
|
|
93
|
+
|
|
94
|
+
- **Silenciamento de ferramentas:** prefira flags quiet em comandos cuja saída bruta não será lida integralmente (`--quiet`/`--silent`/`-s`, `pytest -q --tb=short`, `cargo build 2>&1 | tail -n 20`, `git log --oneline -n 5`).
|
|
95
|
+
- **Geração orientada a DIFF:** proibido reescrever arquivo inteiro para mudança pontual; use edição cirúrgica/unified diff ("Edit by diff", seção 2.4). Rewrite integral só quando a maioria do arquivo muda.
|
|
96
|
+
- **Observation hygiene:** resuma outputs longos antes de reportar ou manter em contexto (grep da falha, `--stat`, `| tail`); nunca cole dumps integrais no contexto nem na resposta.
|
|
97
|
+
|
|
90
98
|
## 3. Skills
|
|
91
99
|
|
|
92
100
|
### 3.1 Skill Declaration
|
|
@@ -1,3 +1,15 @@
|
|
|
1
|
+
import type { CompletionOptions, CompletionResult } from '../../runtime/llm/client.js';
|
|
2
|
+
import type { GraphNode } from '../../runtime/types.js';
|
|
3
|
+
interface RunArgs {
|
|
4
|
+
agentId?: string;
|
|
5
|
+
task?: string;
|
|
6
|
+
/** Só compila e salva izanagi-prompt.md — não executa (sem graph/eval/trace). */
|
|
7
|
+
promptOnly: boolean;
|
|
8
|
+
verbose: boolean;
|
|
9
|
+
/** Desliga a fundação estática (RULES.md) e o marker CAPC — prompt idêntico ao pré-wave. */
|
|
10
|
+
noCacheFoundation: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function parseRunArgs(args: string[]): RunArgs;
|
|
1
13
|
interface TaskClassification {
|
|
2
14
|
category: string;
|
|
3
15
|
agent: string;
|
|
@@ -5,6 +17,14 @@ interface TaskClassification {
|
|
|
5
17
|
export declare function classifyTask(desc: string): TaskClassification;
|
|
6
18
|
export declare function resolveChainForCategory(agent: any, category: string): string[];
|
|
7
19
|
export declare function runCommand(baseDir: string, args: string[]): Promise<void>;
|
|
20
|
+
/**
|
|
21
|
+
* Superfície mínima do LLMClient consumida pelo run — permite injetar um
|
|
22
|
+
* client de teste (structural typing) sem tocar no Orchestrator.
|
|
23
|
+
*/
|
|
24
|
+
export interface RuntimeLLMClient {
|
|
25
|
+
configuredProviders(): string[];
|
|
26
|
+
complete(provider: string, opts: CompletionOptions): Promise<CompletionResult>;
|
|
27
|
+
}
|
|
8
28
|
/**
|
|
9
29
|
* Modo runtime: usa o Orchestrator do framework para construir o execution
|
|
10
30
|
* graph, avaliar, curar falhas e persistir trace + aprendizados.
|
|
@@ -22,7 +42,40 @@ export declare function runRuntime(baseDir: string, opts: {
|
|
|
22
42
|
verbose: boolean;
|
|
23
43
|
/** Retoma um run interrompido/pausado em vez de planejar do zero (izanagi resume/approve/reject). */
|
|
24
44
|
resumeRunId?: string;
|
|
45
|
+
/** Desliga fundação RULES.md estática + marker CAPC (prompt pré-wave). */
|
|
46
|
+
noCacheFoundation?: boolean;
|
|
47
|
+
/** Client LLM injetável (testes). Default: LLMClient real lido do ambiente. */
|
|
48
|
+
client?: RuntimeLLMClient;
|
|
25
49
|
}): Promise<void>;
|
|
50
|
+
/**
|
|
51
|
+
* Budget máximo (em chars) da fundação RULES.md embutida no prefixo estático.
|
|
52
|
+
* 6000 chars ≈ 1500 tokens estimados (~4 chars/token) — folga sobre o piso
|
|
53
|
+
* MIN_CACHEABLE_TOKENS (1024) mesmo após o corte determinístico.
|
|
54
|
+
*/
|
|
55
|
+
export declare const RULES_FOUNDATION_MAX_CHARS = 6000;
|
|
56
|
+
/**
|
|
57
|
+
* Compila o system prompt de um nó do grafo: identidade do agente do nó,
|
|
58
|
+
* regras obrigatórias, skills resolvidas (resumidas) e contrato do artefato.
|
|
59
|
+
*
|
|
60
|
+
* Cache-Aware Prompt Compression (CAPC): quando existe RULES.md e o prefixo
|
|
61
|
+
* estático atinge MIN_CACHEABLE_TOKENS tokens estimados, o prompt vira
|
|
62
|
+
* `[ESTÁTICO] + <!-- IZANAGI:DYNAMIC --> + [VOLÁTIL]`:
|
|
63
|
+
* ESTÁTICO = header genérico + regra suprema + fundação RULES.md (seções 1–2)
|
|
64
|
+
* VOLÁTIL = nó em execução + artefato esperado + identidade + always/never
|
|
65
|
+
* + TAREFA + skills — tudo na ordem pré-wave.
|
|
66
|
+
* O bloco estático fica BYTE-IDÊNTICO entre nós do mesmo run (condição para
|
|
67
|
+
* o provider cachear: Anthropic via cache_control automático no client;
|
|
68
|
+
* OpenAI-compatible via prefix caching). Guardas retrocompatíveis: sem
|
|
69
|
+
* RULES.md OU estático abaixo do piso → formato pré-wave SEM marker.
|
|
70
|
+
* flags.noCacheFoundation desliga a fundação/marker incondicionalmente.
|
|
71
|
+
*/
|
|
72
|
+
export declare function buildNodePrompt(node: GraphNode, opts: {
|
|
73
|
+
task: string;
|
|
74
|
+
agent: any;
|
|
75
|
+
skillChain: string[];
|
|
76
|
+
}, baseDir: string, flags?: {
|
|
77
|
+
noCacheFoundation?: boolean;
|
|
78
|
+
}): string;
|
|
26
79
|
export declare function findAgentJson(agentId: string, baseDir: string): any;
|
|
27
80
|
export {};
|
|
28
81
|
//# sourceMappingURL=run.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAEvF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAIxD,UAAU,OAAO;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iFAAiF;IACjF,UAAU,EAAE,OAAO,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,4FAA4F;IAC5F,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CA0CpD;AAED,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,CA2D7D;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,EAAE,CAY9E;AAmBD,wBAAsB,UAAU,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsL/E;AAED;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB,IAAI,MAAM,EAAE,CAAC;IAChC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAChF;AAED;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAC9B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE;IACJ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,EAAE,GAAG,CAAC;IACX,OAAO,EAAE,OAAO,CAAC;IACjB,qGAAqG;IACrG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,0EAA0E;IAC1E,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,+EAA+E;IAC/E,MAAM,CAAC,EAAE,gBAAgB,CAAC;CAC3B,GACA,OAAO,CAAC,IAAI,CAAC,CA6Gf;AAID;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,OAAO,CAAC;AAmD/C;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAC7B,IAAI,EAAE,SAAS,EACf,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,GAAG,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,EACxD,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE;IAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,GACtC,MAAM,CAyCR;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,GAAG,CAYnE"}
|
package/dist/cli/commands/run.js
CHANGED
|
@@ -4,12 +4,15 @@ import { findAgentFile, loadSkillResolver, resolveSkillPath, loadProjectConfig }
|
|
|
4
4
|
import { buildBlueprintCtx } from '../blueprint.js';
|
|
5
5
|
import { Orchestrator } from '../../runtime/orchestrator.js';
|
|
6
6
|
import { LLMClient } from '../../runtime/llm/client.js';
|
|
7
|
+
import { DYNAMIC_MARKER, estimateStaticTokens, MIN_CACHEABLE_TOKENS } from '../../runtime/llm/prompt-cache.js';
|
|
8
|
+
import { layeredSkillSummary, findV2Counterpart } from '../../runtime/text/frontmatter.js';
|
|
7
9
|
import { printTrace } from './trace.js';
|
|
8
|
-
function parseRunArgs(args) {
|
|
10
|
+
export function parseRunArgs(args) {
|
|
9
11
|
let agentId;
|
|
10
12
|
let task;
|
|
11
13
|
let promptOnly = false;
|
|
12
14
|
let verbose = false;
|
|
15
|
+
let noCacheFoundation = false;
|
|
13
16
|
const positionals = [];
|
|
14
17
|
for (let i = 0; i < args.length; i++) {
|
|
15
18
|
const arg = args[i];
|
|
@@ -23,6 +26,9 @@ function parseRunArgs(args) {
|
|
|
23
26
|
else if (arg === '--prompt-only' || arg === '-p') {
|
|
24
27
|
promptOnly = true;
|
|
25
28
|
}
|
|
29
|
+
else if (arg === '--no-cache-foundation') {
|
|
30
|
+
noCacheFoundation = true;
|
|
31
|
+
}
|
|
26
32
|
else if (arg === '--runtime' || arg === '-r') {
|
|
27
33
|
// Compatibilidade: execução via runtime é o comportamento default desde a
|
|
28
34
|
// unificação dos caminhos de 'run' — a flag é aceita e ignorada (no-op).
|
|
@@ -46,7 +52,7 @@ function parseRunArgs(args) {
|
|
|
46
52
|
else if (positionals.length > 0 && !agentId) {
|
|
47
53
|
agentId = positionals[0];
|
|
48
54
|
}
|
|
49
|
-
return { agentId, task, promptOnly, verbose };
|
|
55
|
+
return { agentId, task, promptOnly, verbose, noCacheFoundation };
|
|
50
56
|
}
|
|
51
57
|
export function classifyTask(desc) {
|
|
52
58
|
const lower = desc.toLowerCase();
|
|
@@ -117,9 +123,10 @@ export function resolveChainForCategory(agent, category) {
|
|
|
117
123
|
return ['planner', 'reviewer', 'clean-code'];
|
|
118
124
|
}
|
|
119
125
|
/**
|
|
120
|
-
* Compacta
|
|
121
|
-
*
|
|
122
|
-
*
|
|
126
|
+
* Compacta conteúdo de documento NÃO-skill (references curadas, SYSTEM.md,
|
|
127
|
+
* RULES.md) para o prompt: mantém apenas as primeiras linhas até o limite.
|
|
128
|
+
* Skills usam a política em camadas de `layeredSkillSummary` (front-matter
|
|
129
|
+
* v2 primeiro, corpo por prioridade de seção; legadas caem neste truncamento).
|
|
123
130
|
*/
|
|
124
131
|
function summarizeSkill(fullPath, maxLines) {
|
|
125
132
|
const content = fs.readFileSync(fullPath, 'utf-8');
|
|
@@ -132,7 +139,7 @@ function agentLabel(agent) {
|
|
|
132
139
|
return agent.name || 'Custom agent';
|
|
133
140
|
}
|
|
134
141
|
export async function runCommand(baseDir, args) {
|
|
135
|
-
const { agentId, task, promptOnly, verbose } = parseRunArgs(args);
|
|
142
|
+
const { agentId, task, promptOnly, verbose, noCacheFoundation } = parseRunArgs(args);
|
|
136
143
|
if (!task) {
|
|
137
144
|
console.error('\x1b[31mError:\x1b[0m Please provide a task description.');
|
|
138
145
|
console.error('Usage: \x1b[1mizanagi run [agent] --task "<description>"\x1b[0m');
|
|
@@ -140,6 +147,7 @@ export async function runCommand(baseDir, args) {
|
|
|
140
147
|
console.error(' izanagi run "Create a login page" (Adaptive Runtime: graph + eval + trace + recovery + memory)');
|
|
141
148
|
console.error(' izanagi run architect --task "Design a microservices architecture"');
|
|
142
149
|
console.error(' izanagi run "..." --prompt-only (só compila izanagi-prompt.md, sem executar)');
|
|
150
|
+
console.error(' izanagi run "..." --no-cache-foundation (desliga fundação RULES.md estática/marker de prompt caching)');
|
|
143
151
|
process.exit(1);
|
|
144
152
|
}
|
|
145
153
|
const cwd = process.cwd();
|
|
@@ -184,7 +192,10 @@ export async function runCommand(baseDir, args) {
|
|
|
184
192
|
for (const skill of compactSkillChain) {
|
|
185
193
|
const skillPath = resolveSkillPath(cwd, baseDir, skill);
|
|
186
194
|
if (skillPath) {
|
|
187
|
-
|
|
195
|
+
const v2Path = findV2Counterpart(cwd, baseDir, skillPath);
|
|
196
|
+
const sourceLabel = path.relative(cwd, v2Path ?? skillPath);
|
|
197
|
+
const v2Tag = v2Path ? ' \x1b[90m[v2 progressive disclosure]\x1b[0m' : '';
|
|
198
|
+
console.log(` \x1b[32m✔\x1b[0m \x1b[1m${skill}\x1b[0m -> ${sourceLabel}${v2Tag}`);
|
|
188
199
|
resolvedCount++;
|
|
189
200
|
}
|
|
190
201
|
else if (aliases[skill]) {
|
|
@@ -248,7 +259,10 @@ export async function runCommand(baseDir, args) {
|
|
|
248
259
|
for (const skill of compactSkillChain) {
|
|
249
260
|
const sPath = resolveSkillPath(cwd, baseDir, skill);
|
|
250
261
|
if (sPath && fs.existsSync(sPath)) {
|
|
251
|
-
|
|
262
|
+
// Progressive disclosure: prefere a contraparte v2 (.skills/<name>/SKILL.md)
|
|
263
|
+
// quando existe; sem v2, o truncamento legado preserva compatibilidade.
|
|
264
|
+
const source = findV2Counterpart(cwd, baseDir, sPath) ?? sPath;
|
|
265
|
+
fullPrompt += `### SKILL: ${skill}\n` + layeredSkillSummary(source, compact ? 60 : 160) + `\n\n`;
|
|
252
266
|
}
|
|
253
267
|
}
|
|
254
268
|
if (systemContent && fs.existsSync(systemContent)) {
|
|
@@ -279,6 +293,7 @@ export async function runCommand(baseDir, args) {
|
|
|
279
293
|
skillChain: compactSkillChain,
|
|
280
294
|
agent,
|
|
281
295
|
verbose,
|
|
296
|
+
noCacheFoundation,
|
|
282
297
|
});
|
|
283
298
|
}
|
|
284
299
|
/**
|
|
@@ -291,7 +306,7 @@ export async function runCommand(baseDir, args) {
|
|
|
291
306
|
*/
|
|
292
307
|
export async function runRuntime(baseDir, opts) {
|
|
293
308
|
console.log('\n\x1b[36m=== Izanagi Adaptive Runtime ===\x1b[0m\n');
|
|
294
|
-
const client = new LLMClient();
|
|
309
|
+
const client = opts.client ?? new LLMClient();
|
|
295
310
|
const llmProviders = client.configuredProviders();
|
|
296
311
|
if (llmProviders.length === 0) {
|
|
297
312
|
console.log(' \x1b[33m⚠ Modo headless:\x1b[0m nenhuma API key encontrada (IZANAGI_OPENAI_API_KEY /');
|
|
@@ -302,6 +317,9 @@ export async function runRuntime(baseDir, opts) {
|
|
|
302
317
|
else {
|
|
303
318
|
console.log(` \x1b[32m✔ Execução real via LLM:\x1b[0m providers configurados: ${llmProviders.join(', ')}\n`);
|
|
304
319
|
}
|
|
320
|
+
// Telemetria de tokens/cache (só faz sentido com provider real — headless não
|
|
321
|
+
// consome tokens de verdade e nunca imprime esta linha).
|
|
322
|
+
const tokenStats = { input: 0, cached: 0, nodes: 0 };
|
|
305
323
|
const orchestrator = new Orchestrator({
|
|
306
324
|
baseDir,
|
|
307
325
|
command: 'run',
|
|
@@ -334,13 +352,21 @@ export async function runRuntime(baseDir, opts) {
|
|
|
334
352
|
}
|
|
335
353
|
// Execução real: compila o prompt do nó e chama o LLM com o modelo/provider
|
|
336
354
|
// já roteados pelo Orchestrator (mesma fonte de verdade, sem recomputar aqui).
|
|
337
|
-
const system = buildNodePrompt(node, opts, baseDir
|
|
355
|
+
const system = buildNodePrompt(node, { task: opts.task, agent: opts.agent, skillChain: opts.skillChain }, baseDir, {
|
|
356
|
+
noCacheFoundation: opts.noCacheFoundation,
|
|
357
|
+
});
|
|
338
358
|
const result = await client.complete(ctx.provider, {
|
|
339
359
|
model: ctx.model,
|
|
340
360
|
system,
|
|
341
361
|
messages: [{ role: 'user', content: opts.task }],
|
|
342
362
|
maxTokens: node.tokenBudget ?? 4000,
|
|
343
363
|
});
|
|
364
|
+
tokenStats.input += result.tokens;
|
|
365
|
+
tokenStats.cached += result.cachedTokens ?? 0;
|
|
366
|
+
tokenStats.nodes++;
|
|
367
|
+
if (opts.verbose) {
|
|
368
|
+
console.log(` \x1b[90m[tokens]\x1b[0m nó "${node.id}": entrada ${result.tokens} · cache-hit ${result.cachedTokens ?? 0}`);
|
|
369
|
+
}
|
|
344
370
|
return {
|
|
345
371
|
content: result.text,
|
|
346
372
|
kind: node.outputs?.[0] ?? 'raw',
|
|
@@ -355,6 +381,10 @@ export async function runRuntime(baseDir, opts) {
|
|
|
355
381
|
},
|
|
356
382
|
});
|
|
357
383
|
const result = await orchestrator.run();
|
|
384
|
+
if (llmProviders.length > 0 && tokenStats.nodes > 0) {
|
|
385
|
+
const pct = tokenStats.input > 0 ? Math.round((tokenStats.cached / tokenStats.input) * 100) : 0;
|
|
386
|
+
console.log(`[tokens] entrada ${tokenStats.input} · cache-hit ${tokenStats.cached} (${pct}% do input)`);
|
|
387
|
+
}
|
|
358
388
|
if (result.pendingApproval) {
|
|
359
389
|
console.log(`\n\x1b[1m\x1b[33m⏸ Execução pausada — aguardando aprovação humana\x1b[0m`);
|
|
360
390
|
console.log(` \x1b[90mNó:\x1b[0m ${result.pendingApproval.nodeId}${result.pendingApproval.context ? ` — ${result.pendingApproval.context}` : ''}`);
|
|
@@ -375,32 +405,114 @@ export async function runRuntime(baseDir, opts) {
|
|
|
375
405
|
console.log(`\x1b[90mAvaliação isolada:\x1b[0m \x1b[36mizanagi eval --report ${result.trace.runId}\x1b[0m`);
|
|
376
406
|
console.log(`\x1b[90mExplicação da execução:\x1b[0m \x1b[36mizanagi explain ${result.trace.runId}\x1b[0m\n`);
|
|
377
407
|
}
|
|
408
|
+
/* ==================== CAPC — fundação estática do prompt de nó ==================== */
|
|
409
|
+
/**
|
|
410
|
+
* Budget máximo (em chars) da fundação RULES.md embutida no prefixo estático.
|
|
411
|
+
* 6000 chars ≈ 1500 tokens estimados (~4 chars/token) — folga sobre o piso
|
|
412
|
+
* MIN_CACHEABLE_TOKENS (1024) mesmo após o corte determinístico.
|
|
413
|
+
*/
|
|
414
|
+
export const RULES_FOUNDATION_MAX_CHARS = 6000;
|
|
415
|
+
/** Header genérico do prefixo estático: SEM dados do nó (id/outputs), senão o bloco cacheável divergiria entre nós. */
|
|
416
|
+
const STATIC_PROMPT_HEADER = '# IZANAGI AI — Adaptive Runtime\n';
|
|
417
|
+
const SUPREME_RULE_LINE = '- Regra suprema: NUNCA entregar checklists, resumos ou stubs — gerar conteúdo real, completo e pronto para produção.\n';
|
|
418
|
+
const FOUNDATION_TITLE = '## FUNDAÇÃO OPERACIONAL (RULES.md · seções 1–2)\n';
|
|
419
|
+
/**
|
|
420
|
+
* Localiza RULES.md na ordem canônica do framework: instalação distribuída
|
|
421
|
+
* (`<cwd>/.agents/RULES.md`) primeiro, repo-fonte (`<baseDir>/RULES.md`)
|
|
422
|
+
* depois. null = ausente nos dois roots (guard retrocompatível).
|
|
423
|
+
*/
|
|
424
|
+
function findRulesDoc(baseDir) {
|
|
425
|
+
for (const candidate of [path.join(process.cwd(), '.agents', 'RULES.md'), path.join(baseDir, 'RULES.md')]) {
|
|
426
|
+
if (fs.existsSync(candidate))
|
|
427
|
+
return candidate;
|
|
428
|
+
}
|
|
429
|
+
return null;
|
|
430
|
+
}
|
|
431
|
+
/** Header que abre a seção 3 no RULES.md canônico (`## 3. Skills`) — "ou equivalente" aceita `#`–`######`, `:` e espaço. */
|
|
432
|
+
const SECTION_3_HEADER = /^#{1,6}\s*3(\.|:|\s)/;
|
|
433
|
+
/**
|
|
434
|
+
* Corte DETERMINÍSTICO da fundação: linhas 1 até (exclusive) o header `## 3.`
|
|
435
|
+
* — as Golden Rules + Communication Rules (seções 1–2) são invariantes entre
|
|
436
|
+
* runs; o resto é específico demais para valer cache. Sem header `## 3.`,
|
|
437
|
+
* usa o arquivo inteiro. Acima do budget, trunca por linha inteira (nunca no
|
|
438
|
+
* meio) e declara o corte em comentário determinístico (sem timestamps).
|
|
439
|
+
*/
|
|
440
|
+
function extractRulesFoundation(content, sourcePath) {
|
|
441
|
+
const lines = content.split('\n');
|
|
442
|
+
const cutIdx = lines.findIndex((line) => SECTION_3_HEADER.test(line));
|
|
443
|
+
const selected = cutIdx === -1 ? [...lines] : lines.slice(0, cutIdx);
|
|
444
|
+
while (selected.length > 0 && selected[selected.length - 1].trim() === '')
|
|
445
|
+
selected.pop();
|
|
446
|
+
const total = selected.join('\n');
|
|
447
|
+
if (total.length <= RULES_FOUNDATION_MAX_CHARS) {
|
|
448
|
+
return `${total}\n\n<!-- fundação RULES.md: linhas 1–${selected.length} até o header "## 3." (corte determinístico) · conteúdo completo em ${sourcePath} -->`;
|
|
449
|
+
}
|
|
450
|
+
const kept = [];
|
|
451
|
+
let used = 0;
|
|
452
|
+
for (const line of selected) {
|
|
453
|
+
const cost = line.length + 1;
|
|
454
|
+
if (used + cost > RULES_FOUNDATION_MAX_CHARS)
|
|
455
|
+
break;
|
|
456
|
+
kept.push(line);
|
|
457
|
+
used += cost;
|
|
458
|
+
}
|
|
459
|
+
return `${kept.join('\n')}\n\n<!-- fundação RULES.md truncada em ${used - 1} chars (budget ${RULES_FOUNDATION_MAX_CHARS}) até o header "## 3." (corte determinístico) · conteúdo completo em ${sourcePath} -->`;
|
|
460
|
+
}
|
|
378
461
|
/**
|
|
379
462
|
* Compila o system prompt de um nó do grafo: identidade do agente do nó,
|
|
380
463
|
* regras obrigatórias, skills resolvidas (resumidas) e contrato do artefato.
|
|
464
|
+
*
|
|
465
|
+
* Cache-Aware Prompt Compression (CAPC): quando existe RULES.md e o prefixo
|
|
466
|
+
* estático atinge MIN_CACHEABLE_TOKENS tokens estimados, o prompt vira
|
|
467
|
+
* `[ESTÁTICO] + <!-- IZANAGI:DYNAMIC --> + [VOLÁTIL]`:
|
|
468
|
+
* ESTÁTICO = header genérico + regra suprema + fundação RULES.md (seções 1–2)
|
|
469
|
+
* VOLÁTIL = nó em execução + artefato esperado + identidade + always/never
|
|
470
|
+
* + TAREFA + skills — tudo na ordem pré-wave.
|
|
471
|
+
* O bloco estático fica BYTE-IDÊNTICO entre nós do mesmo run (condição para
|
|
472
|
+
* o provider cachear: Anthropic via cache_control automático no client;
|
|
473
|
+
* OpenAI-compatible via prefix caching). Guardas retrocompatíveis: sem
|
|
474
|
+
* RULES.md OU estático abaixo do piso → formato pré-wave SEM marker.
|
|
475
|
+
* flags.noCacheFoundation desliga a fundação/marker incondicionalmente.
|
|
381
476
|
*/
|
|
382
|
-
function buildNodePrompt(node, opts, baseDir) {
|
|
477
|
+
export function buildNodePrompt(node, opts, baseDir, flags) {
|
|
383
478
|
const agent = node.agent ? findAgentJson(node.agent, baseDir) : undefined;
|
|
384
479
|
const identity = agent?.identity || agent?.role || opts.agent.identity || opts.agent.role || `Agente especialista (${node.agent ?? node.id})`;
|
|
385
480
|
const skills = (node.skills ?? opts.skillChain).slice(0, 4);
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
prompt += `## IDENTIDADE & PAPEL\n${identity}\n\n`;
|
|
481
|
+
// Corpo volátil compartilhado pelas duas formas do prompt (ordem pré-wave preservada).
|
|
482
|
+
const artifactLine = `- Artefato esperado deste nó: \`${node.outputs?.[0] ?? 'raw'}\` (conteúdo estruturado, sem markdown desnecessário).\n\n`;
|
|
483
|
+
let body = `## IDENTIDADE & PAPEL\n${identity}\n\n`;
|
|
390
484
|
if (agent?.always?.length)
|
|
391
|
-
|
|
485
|
+
body += `## REGRAS OBRIGATÓRIAS\n- ${agent.always.join('\n- ')}\n\n`;
|
|
392
486
|
if (agent?.never?.length)
|
|
393
|
-
|
|
394
|
-
|
|
487
|
+
body += `## PROIBIDO\n- ${agent.never.join('\n- ')}\n\n`;
|
|
488
|
+
body += `## TAREFA\n${opts.task}\n`;
|
|
395
489
|
if (skills.length > 0) {
|
|
396
|
-
|
|
490
|
+
body += `\n## SKILLS APLICÁVEIS\n`;
|
|
397
491
|
for (const skill of skills) {
|
|
398
492
|
const sPath = resolveSkillPath(process.cwd(), baseDir, skill);
|
|
399
493
|
if (sPath && fs.existsSync(sPath)) {
|
|
400
|
-
|
|
494
|
+
const source = findV2Counterpart(process.cwd(), baseDir, sPath) ?? sPath;
|
|
495
|
+
body += `\n### Skill: ${skill}\n${layeredSkillSummary(source, 80)}\n`;
|
|
401
496
|
}
|
|
402
497
|
}
|
|
403
498
|
}
|
|
499
|
+
if (!flags?.noCacheFoundation) {
|
|
500
|
+
const rulesPath = findRulesDoc(baseDir);
|
|
501
|
+
if (rulesPath) {
|
|
502
|
+
const foundation = extractRulesFoundation(fs.readFileSync(rulesPath, 'utf-8'), rulesPath);
|
|
503
|
+
const staticText = `${STATIC_PROMPT_HEADER}${SUPREME_RULE_LINE}${FOUNDATION_TITLE}${foundation}\n`;
|
|
504
|
+
// Guard do piso: abaixo de 1024 tokens estimados o provider ignora o
|
|
505
|
+
// cache_control — não vale mudar a forma do prompt; cai no formato pré-wave.
|
|
506
|
+
if (estimateStaticTokens(staticText) >= MIN_CACHEABLE_TOKENS) {
|
|
507
|
+
return `${staticText}${DYNAMIC_MARKER}\n- Nó em execução: "${node.id}"\n${artifactLine}${body}`;
|
|
508
|
+
}
|
|
509
|
+
}
|
|
510
|
+
}
|
|
511
|
+
// Formato pré-wave (retrocompatível byte-a-byte): sem fundação, sem marker.
|
|
512
|
+
let prompt = `# IZANAGI AI — Adaptive Runtime · Nó "${node.id}"\n`;
|
|
513
|
+
prompt += SUPREME_RULE_LINE;
|
|
514
|
+
prompt += artifactLine;
|
|
515
|
+
prompt += body;
|
|
404
516
|
return prompt;
|
|
405
517
|
}
|
|
406
518
|
export function findAgentJson(agentId, baseDir) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"run.js","sourceRoot":"","sources":["../../../src/cli/commands/run.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,7 +25,18 @@
|
|
|
25
25
|
*
|
|
26
26
|
* Sem chave/servidor configurado, o framework continua 100% funcional em modo
|
|
27
27
|
* headless (gera prompt) — o executor apenas informa que não está configurado.
|
|
28
|
+
*
|
|
29
|
+
* Cache-Aware Prompt Compression (CAPC): o system prompt pode carregar o
|
|
30
|
+
* delimitador `<!-- IZANAGI:DYNAMIC -->` (ver runtime/llm/prompt-cache.ts).
|
|
31
|
+
* A detecção é AUTOMÁTICA dentro de cada adapter — nenhum chamador precisa
|
|
32
|
+
* mudar: Anthropic ganha blocos com cache_control no prefixo estático quando
|
|
33
|
+
* ele atinge o piso de 1024 tokens; providers OpenAI-compatible recebem o
|
|
34
|
+
* conteúdo estável primeiro (prefix caching automático, wire format inalterado).
|
|
28
35
|
*/
|
|
36
|
+
/** Reexports públicos das utilidades de cache (mesma heurística, fonte única). */
|
|
37
|
+
export { DYNAMIC_MARKER, MIN_CACHEABLE_TOKENS, splitStaticDynamic, joinWithoutMarker, estimateStaticTokens, isPromptCacheEligible } from './prompt-cache.js';
|
|
38
|
+
/** Reexports públicos do AgentDiet (observation masking determinístico). */
|
|
39
|
+
export { dietHistory, summarizeObservation, MIN_TURNS, RECENT_WINDOW, MAX_OBS_CHARS } from './session-diet.js';
|
|
29
40
|
export interface CompletionMessage {
|
|
30
41
|
role: 'system' | 'user' | 'assistant';
|
|
31
42
|
content: string;
|
|
@@ -36,6 +47,14 @@ export interface CompletionOptions {
|
|
|
36
47
|
messages: CompletionMessage[];
|
|
37
48
|
maxTokens?: number;
|
|
38
49
|
temperature?: number;
|
|
50
|
+
/**
|
|
51
|
+
* AgentDiet (observation masking): quando true, aplica `dietHistory()` ao
|
|
52
|
+
* histórico ANTES de despachar ao adapter — observações antigas e longas
|
|
53
|
+
* (fora da janela recente) viram resumos sintéticos de 1 linha; mensagens
|
|
54
|
+
* 'system' e a janela recente ficam byte-a-byte. Default (ausente/false):
|
|
55
|
+
* histórico segue intacto, comportamento idêntico ao pré-AgentDiet.
|
|
56
|
+
*/
|
|
57
|
+
diet?: boolean;
|
|
39
58
|
}
|
|
40
59
|
export interface CompletionResult {
|
|
41
60
|
text: string;
|
|
@@ -43,6 +62,12 @@ export interface CompletionResult {
|
|
|
43
62
|
latencyMs: number;
|
|
44
63
|
model: string;
|
|
45
64
|
provider: string;
|
|
65
|
+
/**
|
|
66
|
+
* Tokens servidos do cache de prompt pelo provider (quando reportado):
|
|
67
|
+
* Anthropic `cache_read_input_tokens`, OpenAI `prompt_tokens_details.cached_tokens`,
|
|
68
|
+
* Google `usageMetadata.cachedContentTokenCount`. Ausente = provider não reportou.
|
|
69
|
+
*/
|
|
70
|
+
cachedTokens?: number;
|
|
46
71
|
}
|
|
47
72
|
export interface ModelAdapter {
|
|
48
73
|
readonly provider: string;
|
|
@@ -107,13 +132,23 @@ export declare class CustomOpenAICompatibleAdapter implements ModelAdapter {
|
|
|
107
132
|
get configured(): boolean;
|
|
108
133
|
complete(opts: CompletionOptions): Promise<CompletionResult>;
|
|
109
134
|
}
|
|
110
|
-
/** Provider Anthropic (Messages API). */
|
|
135
|
+
/** Provider Anthropic (Messages API) com prompt caching no prefixo estático. */
|
|
111
136
|
export declare class AnthropicAdapter implements ModelAdapter {
|
|
112
137
|
readonly provider = "anthropic";
|
|
113
138
|
private readonly apiKey;
|
|
114
139
|
private readonly baseUrl;
|
|
115
140
|
constructor(apiKey?: string, baseUrl?: string);
|
|
116
141
|
get configured(): boolean;
|
|
142
|
+
/**
|
|
143
|
+
* System → wire format cache-aware:
|
|
144
|
+
* - estático >= MIN_CACHEABLE_TOKENS (1024): array de blocos, com
|
|
145
|
+
* cache_control ephemeral APENAS no prefixo estático (o sufixo dinâmico
|
|
146
|
+
* fica num bloco separado, fora do cache);
|
|
147
|
+
* - caso contrário: string simples exatamente como antes (retrocompatível —
|
|
148
|
+
* o provider ignoraria o header abaixo do piso de qualquer forma).
|
|
149
|
+
* Sem system, o campo segue ausente do payload.
|
|
150
|
+
*/
|
|
151
|
+
private static systemToWire;
|
|
117
152
|
complete(opts: CompletionOptions): Promise<CompletionResult>;
|
|
118
153
|
}
|
|
119
154
|
/** Provider Google (Gemini — API OpenAI-compatible via generativelanguage). */
|
|
@@ -125,7 +160,16 @@ export declare class GoogleAdapter implements ModelAdapter {
|
|
|
125
160
|
get configured(): boolean;
|
|
126
161
|
complete(opts: CompletionOptions): Promise<CompletionResult>;
|
|
127
162
|
}
|
|
128
|
-
/**
|
|
163
|
+
/**
|
|
164
|
+
* Cliente único: resolve o adapter do provider e executa.
|
|
165
|
+
*
|
|
166
|
+
* CAPC é automático: se o `system` contiver `<!-- IZANAGI:DYNAMIC -->`, cada
|
|
167
|
+
* adapter aplica a estratégia de cache do seu provider por conta própria
|
|
168
|
+
* (blocos cache_control no Anthropic, prefixo estável nos OpenAI-compatible,
|
|
169
|
+
* system_instruction estável no Google). Chamadores existentes (run/chat/
|
|
170
|
+
* dashboard/arena) não precisam de NENHUMA mudança — basta incluir o
|
|
171
|
+
* delimitador no system quando houver parte volátil.
|
|
172
|
+
*/
|
|
129
173
|
export declare class LLMClient {
|
|
130
174
|
private readonly adapters;
|
|
131
175
|
constructor(adapters?: ModelAdapter[]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/runtime/llm/client.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../src/runtime/llm/client.ts"],"names":[],"mappings":"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"}
|