dd-harness 0.23.0 → 0.25.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/index.js CHANGED
@@ -313,9 +313,9 @@ async function comandoStart() {
313
313
  console.log(atualizou
314
314
  ? `Pronto — ${desatualizado.ultima} instalada. O wizard segue na ${desatualizado.atual} ` +
315
315
  "(o binário em execução não troca sozinho); do próximo comando em diante, a nova.\n"
316
- : `Não consegui atualizar (sem permissão de escrita global?). Você está na ` +
317
- `${desatualizado.atual} e a mais recente é ${desatualizado.ultima} rode ` +
318
- "`npm install -g dd-harness@latest` quando puder. O start segue assim mesmo.\n");
316
+ : `Não consegui atualizar o npm explicou o motivo acima. Você segue na ` +
317
+ `${desatualizado.atual}, e a mais recente é ${desatualizado.ultima}: rode ` +
318
+ "`npm install -g dd-harness@latest` quando puder. O start continua assim mesmo.\n");
319
319
  }
320
320
  // 1. Credencial. Sem ela nada do resto e possivel — nem listar tenant.
321
321
  // O estado aparece SEMPRE, mesmo quando ja existe credencial: antes o passo era
package/dist/init.d.ts CHANGED
@@ -24,16 +24,23 @@ export type ResultadoDoInit = {
24
24
  */
25
25
  export declare const SUGESTAO_MCP = "{\n \"mcpServers\": {\n \"dd-harness\": {\n \"command\": \"npx\",\n \"args\": [\"-y\", \"dd-harness-mcp\"]\n }\n }\n}";
26
26
  /**
27
- * O hook que carrega a politica no inicio de cada sessao.
27
+ * Os dois hooks do dd-harness, pelas duas razoes que nenhuma instrucao em markdown
28
+ * resolve.
28
29
  *
29
- * E a garantia de que nenhuma sessao abre sem protocolo o papel que antes era do
30
- * arquivo materializado mais a linha de import. Vive num hook, e nao numa instrucao no
31
- * `CLAUDE.md`, porque instrucao o modelo pode pular: o import quebrado falhava em
32
- * silencio, e isso foi medido.
30
+ * `SessionStart` carrega a politica no inicio de cada sessao a garantia de que nenhuma
31
+ * abre sem protocolo, papel que antes era do arquivo materializado mais a linha de
32
+ * import. Vive num hook, e nao numa instrucao no `CLAUDE.md`, porque instrucao o modelo
33
+ * pode pular: o import quebrado falhava em silencio, e isso foi medido.
34
+ *
35
+ * `PreToolUse` e o cinto: cruza o arquivo que esta sendo editado contra as ancoras e
36
+ * entrega a memoria ANTES da edicao. Existe porque o Brain era todo PULL, e PULL falha
37
+ * onde mais custa — o agente nao busca memoria quando *acha que sabe*. Os dois vao
38
+ * juntos aqui de proposito: quem monta o `settings.json` a mao pelo `init` sairia sem o
39
+ * cinto e sem nunca saber que ele existe.
33
40
  *
34
41
  * Sugerido e nao escrito, pelo mesmo motivo do `.mcp.json`.
35
42
  */
36
- export declare const SUGESTAO_HOOK = "{\n \"hooks\": {\n \"SessionStart\": [\n {\n \"hooks\": [\n {\n \"type\": \"command\",\n \"command\": \"dd-harness politica --hook\",\n \"statusMessage\": \"Carregando a pol\u00EDtica do dd-harness...\"\n }\n ]\n }\n ]\n }\n}";
43
+ export declare const SUGESTAO_HOOK = "{\n \"hooks\": {\n \"SessionStart\": [\n {\n \"hooks\": [\n {\n \"type\": \"command\",\n \"command\": \"dd-harness politica --hook\",\n \"statusMessage\": \"Carregando a pol\u00EDtica do dd-harness...\"\n }\n ]\n }\n ],\n \"PreToolUse\": [\n {\n \"matcher\": \"Edit|Write|MultiEdit\",\n \"hooks\": [\n {\n \"type\": \"command\",\n \"command\": \"dd-harness cinto\"\n }\n ]\n }\n ]\n }\n}";
37
44
  /**
38
45
  * O que escrever num `AGENTS.md`, para agente que NAO e o Claude Code.
39
46
  *
package/dist/init.js CHANGED
@@ -17,12 +17,19 @@ export const SUGESTAO_MCP = `{
17
17
  }
18
18
  }`;
19
19
  /**
20
- * O hook que carrega a politica no inicio de cada sessao.
20
+ * Os dois hooks do dd-harness, pelas duas razoes que nenhuma instrucao em markdown
21
+ * resolve.
21
22
  *
22
- * E a garantia de que nenhuma sessao abre sem protocolo o papel que antes era do
23
- * arquivo materializado mais a linha de import. Vive num hook, e nao numa instrucao no
24
- * `CLAUDE.md`, porque instrucao o modelo pode pular: o import quebrado falhava em
25
- * silencio, e isso foi medido.
23
+ * `SessionStart` carrega a politica no inicio de cada sessao a garantia de que nenhuma
24
+ * abre sem protocolo, papel que antes era do arquivo materializado mais a linha de
25
+ * import. Vive num hook, e nao numa instrucao no `CLAUDE.md`, porque instrucao o modelo
26
+ * pode pular: o import quebrado falhava em silencio, e isso foi medido.
27
+ *
28
+ * `PreToolUse` e o cinto: cruza o arquivo que esta sendo editado contra as ancoras e
29
+ * entrega a memoria ANTES da edicao. Existe porque o Brain era todo PULL, e PULL falha
30
+ * onde mais custa — o agente nao busca memoria quando *acha que sabe*. Os dois vao
31
+ * juntos aqui de proposito: quem monta o `settings.json` a mao pelo `init` sairia sem o
32
+ * cinto e sem nunca saber que ele existe.
26
33
  *
27
34
  * Sugerido e nao escrito, pelo mesmo motivo do `.mcp.json`.
28
35
  */
@@ -38,6 +45,17 @@ export const SUGESTAO_HOOK = `{
38
45
  }
39
46
  ]
40
47
  }
48
+ ],
49
+ "PreToolUse": [
50
+ {
51
+ "matcher": "Edit|Write|MultiEdit",
52
+ "hooks": [
53
+ {
54
+ "type": "command",
55
+ "command": "dd-harness cinto"
56
+ }
57
+ ]
58
+ }
41
59
  ]
42
60
  }
43
61
  }`;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dd-harness",
3
- "version": "0.23.0",
3
+ "version": "0.25.0",
4
4
  "type": "module",
5
5
  "description": "Cliente do dd-harness: politica no inicio da sessao, e memoria por busca — nada em disco. Sem dependencia: fetch, crypto e fs sao do Node.",
6
6
  "license": "UNLICENSED",