auroq-os 2.4.6 → 2.4.8
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/.claude/rules/agent-authority.md +23 -86
- package/.claude/rules/dna-operacional.md +10 -9
- package/.claude/rules/memoria-inteligente.md +3 -5
- package/.claude/rules/natural-language-first.md +18 -60
- package/.claude/rules/puxar-e-entregar.md +19 -3
- package/bin/auroq-os.js +20 -2
- package/lib/auth.js +2 -2
- package/package.json +1 -1
- package/.claude/rules/agent-handoff.md +0 -97
- package/.claude/rules/commit-inteligente.md +0 -86
|
@@ -1,98 +1,35 @@
|
|
|
1
1
|
# Agent Authority — Auroq OS
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## Exclusivo do Ops
|
|
4
4
|
|
|
5
|
-
|
|
5
|
+
`git push --force` · Pull Request (`gh pr create` / `gh pr merge`) · MCP add/remove/configure ·
|
|
6
|
+
environment bootstrap · `*update`. Nenhum outro agente executa isso — delegar pro Ops.
|
|
6
7
|
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
| `git push --force` | SIM | BLOQUEADO |
|
|
10
|
-
| `git commit` / `git push` / `git pull` (salvar, entregar, puxar) | NAO — Ops e o DONO do ritual | QUALQUER agente executa o ritual do Ops (`rules/puxar-e-entregar.md`), sem pedir troca de agente |
|
|
11
|
-
| `gh pr create` / `gh pr merge` | SIM | BLOQUEADO |
|
|
12
|
-
| MCP add/remove/configure | SIM | BLOQUEADO |
|
|
13
|
-
| Environment bootstrap | SIM | BLOQUEADO |
|
|
14
|
-
| Commit inteligente (definicao do ritual) | SIM (dono) | Outros agentes EXECUTAM o ritual quando o expert pede |
|
|
8
|
+
**Salvar, entregar e puxar NAO sao exclusivos.** O Ops e o dono do ritual, mas qualquer
|
|
9
|
+
agente ativo o executa quando o expert pede, sem troca de agente (`rules/puxar-e-entregar.md`).
|
|
15
10
|
|
|
16
|
-
|
|
11
|
+
## Quem faz o que
|
|
17
12
|
|
|
18
|
-
|
|
|
19
|
-
|
|
20
|
-
| Situacao diaria (
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
| Roteamento para agente adequado | SIM |
|
|
25
|
-
| Criacao de projetos | SIM |
|
|
13
|
+
| Agente | Escopo proprio |
|
|
14
|
+
|--------|----------------|
|
|
15
|
+
| **Companion** | Situacao diaria, memoria (contexto, decisoes, padroes), projetos e trackers, weekly review, roteamento, criacao de projetos |
|
|
16
|
+
| **Organizer** | Diagnostico de organizacao, mover/renomear pra organizar, limpeza de duplicados e temporarios, backup espelhado, nomenclatura (mudanca em disco sempre com aprovacao do expert) |
|
|
17
|
+
| **Workers** | Executar tasks operacionais e atualizar documentos de trabalho |
|
|
18
|
+
| **Squads** | Rodar pipeline completo com quality gates, produzir outputs, atualizar KBs e skills |
|
|
26
19
|
|
|
27
|
-
|
|
20
|
+
Workers e squads nao criam agentes (isso e dos Meta Squads) nem tomam decisao
|
|
21
|
+
estrategica (isso e do expert).
|
|
28
22
|
|
|
29
|
-
|
|
30
|
-
|----------|-----------|
|
|
31
|
-
| Diagnostico de organizacao | SIM |
|
|
32
|
-
| Mover/renomear arquivos pra organizar | SIM (com aprovacao do expert) |
|
|
33
|
-
| Limpeza de temporarios e duplicados | SIM (com aprovacao do expert) |
|
|
34
|
-
| Backup espelhado pro Google Drive | SIM |
|
|
35
|
-
| Consultoria de nomenclatura e estrutura | SIM |
|
|
23
|
+
## Meta Squads — criacao de agentes
|
|
36
24
|
|
|
37
|
-
|
|
25
|
+
`/squad-forge` squads multi-agente · `/mind-forge` mentes sinteticas e consultores ·
|
|
26
|
+
`/worker-forge` workers · `/clone-forge` clones de mentes reais · `/etlmaker` KBs.
|
|
38
27
|
|
|
39
|
-
|
|
40
|
-
|-------|--------------------|
|
|
41
|
-
| Squad Forge (`/squad-forge`) | Criar squads multi-agente a partir de processos |
|
|
42
|
-
| Mind Forge (`/mind-forge`) | Criar mentes sinteticas e consultores |
|
|
43
|
-
| Worker Forge (`/worker-forge`) | Criar workers especializados |
|
|
44
|
-
| Clone Forge (`/clone-forge`) | Clonar mentes reais em agentes digitais |
|
|
45
|
-
| ETLmaker (`/etlmaker`) | Extrair e estruturar conhecimento em KBs |
|
|
28
|
+
Fluxo: expert pede → Meta Squad adequado cria → expert valida.
|
|
46
29
|
|
|
47
|
-
|
|
30
|
+
## Escalation
|
|
48
31
|
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
| Execucao de tasks operacionais | Criar novos agentes (delegar pro Meta Squad adequado) |
|
|
54
|
-
| Atualizacao de documentos de trabalho | Decisoes estrategicas (delegar pro Expert) |
|
|
55
|
-
|
|
56
|
-
### Squads — Processos Complexos
|
|
57
|
-
|
|
58
|
-
| Permitido | Bloqueado |
|
|
59
|
-
|---------|---------|
|
|
60
|
-
| Executar pipeline completo com quality gates | `git push --force` / PR (so Ops) |
|
|
61
|
-
| Criar documentos de output | Criar novos agentes (delegar pro Meta Squad adequado) |
|
|
62
|
-
| Atualizar KBs e skills | Decisoes fora do escopo do squad |
|
|
63
|
-
|
|
64
|
-
## Cross-Agent Delegation
|
|
65
|
-
|
|
66
|
-
### Salvar / Entregar / Puxar Flow
|
|
67
|
-
```
|
|
68
|
-
Expert pede ("salva", "entrega", "puxa") → o agente ATIVO executa o ritual do Ops (rules/puxar-e-entregar.md)
|
|
69
|
-
Abertura de sessao → hook auroq-sync puxa sozinho se for seguro (nunca entrega sozinho)
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Novo Agente Flow
|
|
73
|
-
```
|
|
74
|
-
Expert pede → Meta Squad adequado cria → Expert valida
|
|
75
|
-
Squads → /squad-forge
|
|
76
|
-
Minds → /mind-forge
|
|
77
|
-
Workers → /worker-forge
|
|
78
|
-
Clones → /clone-forge
|
|
79
|
-
KBs → /etlmaker
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
### Projeto Novo Flow
|
|
83
|
-
```
|
|
84
|
-
Expert pede → Companion cria (*novo-projeto) → Expert valida
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
### Memoria Flow
|
|
88
|
-
```
|
|
89
|
-
QUALQUER agente detecta trigger → salva (ou pergunta) conforme rule memoria-inteligente
|
|
90
|
-
Companion consolida no weekly review
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
## Escalation Rules
|
|
94
|
-
|
|
95
|
-
1. Agente nao consegue completar task → Informar expert com contexto
|
|
96
|
-
2. Quality gate falha → Retornar pro executor com feedback especifico
|
|
97
|
-
3. Violacao constitucional detectada → BLOCK, corrigir antes de prosseguir
|
|
98
|
-
4. Conflito de boundary → Constitution Art. II resolve (cada um faz o seu)
|
|
32
|
+
1. Agente nao consegue completar a task → informar o expert com contexto
|
|
33
|
+
2. Quality gate falha → volta pro executor com feedback especifico
|
|
34
|
+
3. Violacao constitucional → BLOCK, corrigir antes de prosseguir
|
|
35
|
+
4. Conflito de fronteira → Constitution Art. II resolve (cada um faz o seu)
|
|
@@ -28,12 +28,10 @@ SEMPRE que for executar:
|
|
|
28
28
|
|
|
29
29
|
## Handoff entre Agentes
|
|
30
30
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
3. Armazenar em `.auroq/handoffs/`
|
|
36
|
-
4. Novo agente le documento + handoff antes de comecar
|
|
31
|
+
Ao trocar de agente, o que entra e o novo agente carrega e **so o resumo**, nunca a
|
|
32
|
+
persona inteira do anterior: documento de trabalho atualizado + de quem pra quem, o que
|
|
33
|
+
foi decidido, arquivos mexidos, blockers e proxima acao. O agente que sai nao leva junto
|
|
34
|
+
comandos, dependencias nem greeting do anterior.
|
|
37
35
|
|
|
38
36
|
## Anti-Entropia
|
|
39
37
|
|
|
@@ -47,7 +45,10 @@ SEMPRE:
|
|
|
47
45
|
|
|
48
46
|
## Session Management
|
|
49
47
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
48
|
+
O contexto de uma conversa longa e compactado sem aviso — o que nao estiver em arquivo
|
|
49
|
+
se perde. Por isso:
|
|
50
|
+
|
|
51
|
+
1. Sessao longa ou operacao demorada pela frente: salvar estado no documento de trabalho ANTES, nao depois
|
|
52
|
+
2. Apos compactacao: reativar agente (rele arquivos + resumo da sessao)
|
|
53
|
+
3. Antes de trocar de sessao: salvar (commit = botao salvar, ver `puxar-e-entregar.md`)
|
|
53
54
|
4. Em novo chat: ativar agente → apontar pro documento de trabalho → continuar
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
> Todo agente no Auroq OS segue este protocolo de memoria. Nao e opcional.
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## 5 Triggers — Quando Salvar
|
|
6
6
|
|
|
7
7
|
### 1. Decisao Tomada
|
|
8
8
|
SE o expert decidiu algo significativo (estrategia, preco, foco, prioridade, cancelamento):
|
|
@@ -35,10 +35,8 @@ SE expert indica que vai fechar ou pede commit final:
|
|
|
35
35
|
→ Ops verifica no ritual de commit: contexto e trackers atualizados?
|
|
36
36
|
→ Atualizar `agents/companion/data/contexto-dinamico.md` com onde paramos
|
|
37
37
|
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
→ SALVAR ESTADO IMEDIATAMENTE no documento de trabalho
|
|
41
|
-
→ Atualizar contexto-dinamico se nao fez ainda
|
|
38
|
+
> Salvar estado antes de compactacao de contexto e responsabilidade do
|
|
39
|
+
> `dna-operacional.md` (Session Management) — nao repetir aqui.
|
|
42
40
|
|
|
43
41
|
## Onde Cada Coisa Vai
|
|
44
42
|
|
|
@@ -4,73 +4,31 @@
|
|
|
4
4
|
|
|
5
5
|
Todo agente no Auroq OS opera por linguagem natural. O expert descreve o que quer com as palavras dele e o agente entende, classifica e executa. O expert NUNCA precisa saber nomes de comandos, sintaxe ou atalhos.
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
Ele fala ("guarda esse documento", "instala esses squads que recebi", "ta uma bagunca aqui"), o agente mapeia pro modo certo internamente e executa — sem pedir pra reformular.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
2. **Agente detecta intent** — mapeia a frase pro modo/acao correto internamente
|
|
11
|
-
3. **Agente executa** — sem pedir pro expert reformular ou usar comando especifico
|
|
9
|
+
## Greetings
|
|
12
10
|
|
|
13
|
-
|
|
11
|
+
O greeting diz quem o agente e e o que ele PODE FAZER, nunca como o expert deve DIGITAR.
|
|
12
|
+
Estrutura obrigatoria:
|
|
14
13
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
2. `Agente Auroq | Criado por Euriler Jube`
|
|
22
|
-
3. `Usado por ele e pela Mentoria Arcane`
|
|
23
|
-
4. Descricao criativa do que faz (2-3 linhas com personalidade)
|
|
24
|
-
5. "O que posso fazer:" + opcoes numeradas em linguagem natural
|
|
25
|
-
6. Convite aberto pra comecar
|
|
14
|
+
1. Banner com nome do agente
|
|
15
|
+
2. `Agente Auroq | Criado por Euriler Jube`
|
|
16
|
+
3. `Usado por ele e pela Mentoria Arcane`
|
|
17
|
+
4. Descricao criativa do que faz (2-3 linhas com personalidade)
|
|
18
|
+
5. "O que posso fazer:" + opcoes numeradas em linguagem natural ("Diagnosticar — analisar sistema e bagunca existente"), nunca sintaxe (`*diagnose — Diagnosticar sistema`)
|
|
19
|
+
6. Convite aberto pra comecar
|
|
26
20
|
|
|
27
|
-
|
|
28
|
-
- Todo agente mantem internamente um mapa de intent (frase natural → modo/acao).
|
|
29
|
-
- SE a frase do expert nao encaixa em nenhum intent: perguntar pra clarificar, nao pedir pra usar comando.
|
|
30
|
-
- SE ambiguo entre 2 intents: perguntar "Voce quer X ou Y?" com linguagem natural, nao com nomes de comandos.
|
|
31
|
-
|
|
32
|
-
### Comandos (`*comando`)
|
|
33
|
-
- Existem como atalho pra power users que ja conhecem o sistema.
|
|
34
|
-
- NUNCA sao mencionados proativamente (exceto no `*help`).
|
|
35
|
-
- NUNCA sao exigidos. Tudo que um comando faz, a linguagem natural tambem faz.
|
|
36
|
-
- Documentados no `*help` de cada agente pra quem quiser.
|
|
37
|
-
|
|
38
|
-
### Exemplos
|
|
39
|
-
|
|
40
|
-
**ERRADO (greeting):**
|
|
41
|
-
```
|
|
42
|
-
1. *diagnose — Diagnosticar sistema
|
|
43
|
-
2. *store — Guardar documento
|
|
44
|
-
3. *clean — Limpar lixo
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
**CERTO (greeting):**
|
|
48
|
-
```
|
|
49
|
-
=== NOME DO AGENTE ===
|
|
50
|
-
Agente Auroq | Criado por Euriler Jube
|
|
51
|
-
Usado por ele e pela Mentoria Arcane
|
|
21
|
+
## Deteccao de Intent
|
|
52
22
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
O que posso fazer:
|
|
57
|
-
|
|
58
|
-
1. Diagnosticar — analisar sistema e bagunca existente
|
|
59
|
-
2. Guardar — salvar documento no lugar certo
|
|
60
|
-
3. Limpar — remover lixo e duplicados
|
|
61
|
-
|
|
62
|
-
O que ta precisando?
|
|
63
|
-
```
|
|
23
|
+
- Todo agente mantem internamente um mapa de intent (frase natural → modo/acao).
|
|
24
|
+
- Frase que nao encaixa em nenhum intent: perguntar pra clarificar, nao pedir comando.
|
|
25
|
+
- Ambiguo entre dois intents: perguntar "Voce quer X ou Y?" em linguagem natural — nunca "use `*store` ou `*diagnose`".
|
|
64
26
|
|
|
65
|
-
|
|
66
|
-
```
|
|
67
|
-
"Use *store pra guardar documentos ou *diagnose pra avaliar seu sistema."
|
|
68
|
-
```
|
|
27
|
+
## Comandos (`*comando`)
|
|
69
28
|
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
```
|
|
29
|
+
- Existem como atalho pra quem ja conhece o sistema.
|
|
30
|
+
- NUNCA sao mencionados proativamente (excecao: `*help`, quando o expert pede).
|
|
31
|
+
- NUNCA sao exigidos. Tudo que um comando faz, a linguagem natural tambem faz.
|
|
74
32
|
|
|
75
33
|
## Applies To
|
|
76
34
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Salvar, Entregar e Puxar — Qualquer Agente Executa o Ritual do Ops
|
|
2
2
|
|
|
3
3
|
> O expert NUNCA precisa trocar de agente pra salvar, entregar ou puxar trabalho.
|
|
4
4
|
> Quem estiver ativo (Companion, Organizer, squad, worker ou Claude sem agente) executa o ritual do Ops por baixo.
|
|
@@ -8,16 +8,32 @@
|
|
|
8
8
|
|
|
9
9
|
| O expert diz (exemplos) | Acao |
|
|
10
10
|
|-------------------------|------|
|
|
11
|
-
| "salva", "guarda isso", "faz checkpoint", "commita" | SALVAR (commit
|
|
11
|
+
| "salva", "guarda isso", "faz checkpoint", "commita" | SALVAR (commit) |
|
|
12
12
|
| "entrega", "manda pro GitHub", "sobe", "faz push" | ENTREGAR (push com pre-push) |
|
|
13
13
|
| "salva e entrega", "fecha o dia", "acabei por hoje" | SALVAR + ENTREGAR |
|
|
14
14
|
| "puxa", "atualiza do GitHub", "traz o que mudou", "sync" | PUXAR (sync) |
|
|
15
15
|
|
|
16
|
+
## O que o commit e aqui
|
|
17
|
+
|
|
18
|
+
Commit nao e deploy de codigo: e o **botao salvar do negocio**. Cada commit e um ponto
|
|
19
|
+
de restauracao — se a maquina quebrar, se o contexto for compactado, se trocar de
|
|
20
|
+
computador, o ultimo commit e de onde se retoma. Por isso a mensagem conta o que
|
|
21
|
+
aconteceu no negocio, nao o que mudou nos arquivos:
|
|
22
|
+
|
|
23
|
+
`progresso:` avancou · `decisao:` decidiu · `processo:` documentou · `agente:` criou ou
|
|
24
|
+
melhorou agente · `conhecimento:` tratou a biblioteca · `campanha:` acao de campanha ·
|
|
25
|
+
`fix:` corrigiu · `setup:` configuracao.
|
|
26
|
+
|
|
27
|
+
Exemplo: `progresso: NDF Workshop fase 1 concluida — LP, flows e criativos prontos`
|
|
28
|
+
|
|
29
|
+
Momentos naturais de salvar: fim de sessao, troca de assunto, etapa de projeto
|
|
30
|
+
concluida, decisao importante tomada, antes de fechar o computador.
|
|
31
|
+
|
|
16
32
|
## O ritual — fonte da verdade: `.claude/commands/AuroqOS/agents/ops.md`
|
|
17
33
|
|
|
18
34
|
Leia as secoes `*commit`, `*pre-push` e `*sync` do ops.md e execute os passos como estao. O minimo inegociavel:
|
|
19
35
|
|
|
20
|
-
- **SALVAR:** revisar o que mudou → conferir tracker/contexto → mensagem em linguagem de negocio
|
|
36
|
+
- **SALVAR:** revisar o que mudou → conferir tracker/contexto → mensagem em linguagem de negocio → `git add` dos arquivos relevantes (NUNCA `business/vault/`, `.env`, chaves) → commit → confirmar ao expert em 1 linha.
|
|
21
37
|
- **ENTREGAR:** pre-push OBRIGATORIO (vault/.env fora do staging, `.gitignore` protege, nenhum arquivo gigante, branch certa) → `git push` → confirmar.
|
|
22
38
|
- **PUXAR:** se ha trabalho local, SALVAR primeiro (commit antes de pull, sempre) → `git fetch` → `git pull` (merge — nunca rebase com o expert) → relatar em portugues o que chegou (autor + o que fez) → conflito: conduzir com o expert, mostrando as duas versoes; em `agents/companion/data/` a resposta quase sempre e juntar as duas.
|
|
23
39
|
|
package/bin/auroq-os.js
CHANGED
|
@@ -571,8 +571,6 @@ async function init({ pasta = null } = {}) {
|
|
|
571
571
|
|
|
572
572
|
// Rules
|
|
573
573
|
'.claude/rules/agent-authority.md',
|
|
574
|
-
'.claude/rules/agent-handoff.md',
|
|
575
|
-
'.claude/rules/commit-inteligente.md',
|
|
576
574
|
'.claude/rules/dna-operacional.md',
|
|
577
575
|
'.claude/rules/evolucao-incremental.md',
|
|
578
576
|
'.claude/rules/mcp-usage.md',
|
|
@@ -754,6 +752,23 @@ async function init({ pasta = null } = {}) {
|
|
|
754
752
|
'.claude/commands/instalacaoBia.md',
|
|
755
753
|
];
|
|
756
754
|
|
|
755
|
+
// Arquivos de framework aposentados. O init sobrescreve o que esta na lista acima,
|
|
756
|
+
// mas nunca apaga o que saiu dela — sem isso a maquina de quem ja instalou fica com
|
|
757
|
+
// a regra velha convivendo com a nova. So arquivos NOSSOS entram aqui, nunca do aluno.
|
|
758
|
+
const arquivosAposentados = [
|
|
759
|
+
'.claude/rules/agent-handoff.md', // 2.4.8 — absorvido por dna-operacional.md
|
|
760
|
+
'.claude/rules/commit-inteligente.md', // 2.4.8 — absorvido por puxar-e-entregar.md
|
|
761
|
+
];
|
|
762
|
+
|
|
763
|
+
let removidos = 0;
|
|
764
|
+
for (const file of arquivosAposentados) {
|
|
765
|
+
const alvo = path.join(targetDir, file);
|
|
766
|
+
if (await fs.pathExists(alvo)) {
|
|
767
|
+
await fs.remove(alvo);
|
|
768
|
+
removidos++;
|
|
769
|
+
}
|
|
770
|
+
}
|
|
771
|
+
|
|
757
772
|
let copied = 0;
|
|
758
773
|
for (const file of frameworkFiles) {
|
|
759
774
|
// Pular companion.md generico se ja tem personalizado
|
|
@@ -776,6 +791,9 @@ async function init({ pasta = null } = {}) {
|
|
|
776
791
|
}
|
|
777
792
|
}
|
|
778
793
|
success(`${copied} arquivos instalados`);
|
|
794
|
+
if (removidos > 0) {
|
|
795
|
+
success(`${removidos} regra(s) antiga(s) aposentada(s)`);
|
|
796
|
+
}
|
|
779
797
|
|
|
780
798
|
let shimsCriados = 0;
|
|
781
799
|
for (const file of packShimFiles) {
|
package/lib/auth.js
CHANGED
|
@@ -98,8 +98,8 @@ async function interactiveLogin({ forceFresh = false } = {}) {
|
|
|
98
98
|
log(`${BOLD}Login — Mentoria Arcane${RESET}`);
|
|
99
99
|
log(`${DIM}Use o mesmo email e senha da plataforma web.${RESET}`);
|
|
100
100
|
log(`${DIM}${PLATFORM_URL}${RESET}`);
|
|
101
|
-
log(`${DIM}
|
|
102
|
-
log(`${DIM}
|
|
101
|
+
log(`${DIM}Na senha, aparecem asteriscos (ou nada) no lugar das letras — e normal,${RESET}`);
|
|
102
|
+
log(`${DIM}o computador esta recebendo. Digite e aperte Enter.${RESET}`);
|
|
103
103
|
log('');
|
|
104
104
|
|
|
105
105
|
let lastError = null;
|
package/package.json
CHANGED
|
@@ -1,97 +0,0 @@
|
|
|
1
|
-
# Agent Handoff Protocol — Context Compaction
|
|
2
|
-
|
|
3
|
-
## Purpose
|
|
4
|
-
|
|
5
|
-
Prevent context window accumulation when switching between Auroq OS agents (`@agent` commands). Each agent switch compacts the previous agent's full persona into a structured handoff artifact (~379 tokens) instead of retaining the full definition (~3-5K tokens).
|
|
6
|
-
|
|
7
|
-
## When This Applies
|
|
8
|
-
|
|
9
|
-
This protocol activates whenever:
|
|
10
|
-
1. A user invokes a new agent via `@agent-name` or `/AuroqOS:agents:agent-name`
|
|
11
|
-
2. The current session already has a different agent active
|
|
12
|
-
|
|
13
|
-
## Handoff Protocol
|
|
14
|
-
|
|
15
|
-
### On Agent Switch (outgoing agent)
|
|
16
|
-
|
|
17
|
-
Before loading the new agent, mentally generate a handoff artifact with:
|
|
18
|
-
|
|
19
|
-
```yaml
|
|
20
|
-
handoff:
|
|
21
|
-
from_agent: "{current_agent_id}"
|
|
22
|
-
to_agent: "{new_agent_id}"
|
|
23
|
-
story_context:
|
|
24
|
-
story_id: "{active story ID}"
|
|
25
|
-
story_path: "{active story path}"
|
|
26
|
-
story_status: "{current status}"
|
|
27
|
-
current_task: "{last task being worked on}"
|
|
28
|
-
branch: "{current git branch}"
|
|
29
|
-
decisions:
|
|
30
|
-
- "{key decision 1}"
|
|
31
|
-
- "{key decision 2}"
|
|
32
|
-
files_modified:
|
|
33
|
-
- "{file 1}"
|
|
34
|
-
- "{file 2}"
|
|
35
|
-
blockers:
|
|
36
|
-
- "{any active blockers}"
|
|
37
|
-
next_action: "{what the incoming agent should do}"
|
|
38
|
-
```
|
|
39
|
-
|
|
40
|
-
### On Agent Switch (incoming agent)
|
|
41
|
-
|
|
42
|
-
The incoming agent receives:
|
|
43
|
-
1. Its own **full agent profile** (persona, commands, dependencies)
|
|
44
|
-
2. The **handoff artifact** from the previous agent (compact summary)
|
|
45
|
-
3. **NOT** the previous agent's full persona/instructions/tool definitions
|
|
46
|
-
|
|
47
|
-
### Compaction Limits
|
|
48
|
-
|
|
49
|
-
| Limit | Value |
|
|
50
|
-
|-------|-------|
|
|
51
|
-
| Max handoff artifact size | 500 tokens |
|
|
52
|
-
| Max retained agent summaries | 3 (oldest discarded on 4th switch) |
|
|
53
|
-
| Max decisions in artifact | 5 |
|
|
54
|
-
| Max files_modified entries | 10 |
|
|
55
|
-
| Max blockers | 3 |
|
|
56
|
-
|
|
57
|
-
### What to Preserve (ALWAYS include)
|
|
58
|
-
|
|
59
|
-
- Active story ID and path
|
|
60
|
-
- Current task being worked on
|
|
61
|
-
- Git branch name
|
|
62
|
-
- Key architectural decisions made
|
|
63
|
-
- Files created or modified
|
|
64
|
-
- Active blockers
|
|
65
|
-
|
|
66
|
-
### What to Discard (NEVER carry forward)
|
|
67
|
-
|
|
68
|
-
- Previous agent's full persona definition
|
|
69
|
-
- Previous agent's command list
|
|
70
|
-
- Previous agent's dependency list
|
|
71
|
-
- Previous agent's tool configurations
|
|
72
|
-
- Previous agent's CodeRabbit integration details
|
|
73
|
-
- Previous agent's greeting templates
|
|
74
|
-
|
|
75
|
-
## Storage
|
|
76
|
-
|
|
77
|
-
Handoff artifacts are stored at `.auroq/handoffs/` (runtime, gitignored). Format: `handoff-{from}-to-{to}-{timestamp}.yaml`.
|
|
78
|
-
|
|
79
|
-
## Template Reference
|
|
80
|
-
|
|
81
|
-
Full template: `.auroq-core/development/templates/agent-handoff-tmpl.yaml`
|
|
82
|
-
|
|
83
|
-
## Example
|
|
84
|
-
|
|
85
|
-
Session flow: `@sm` creates story → `@dev` implements → `@qa` reviews
|
|
86
|
-
|
|
87
|
-
After `@sm` → `@dev` switch:
|
|
88
|
-
- `@sm` full persona (~3K tokens) is **discarded**
|
|
89
|
-
- Handoff artifact (~379 tokens) is **retained**: story ID, decisions, files, next action
|
|
90
|
-
- `@dev` full persona (~5K tokens) is **loaded**
|
|
91
|
-
- **Total context: ~5.4K** instead of ~8K (33% reduction per switch)
|
|
92
|
-
|
|
93
|
-
After `@dev` → `@qa` switch:
|
|
94
|
-
- `@dev` full persona is **discarded**
|
|
95
|
-
- `@dev` handoff artifact is **retained** alongside `@sm` handoff
|
|
96
|
-
- `@qa` full persona is **loaded**
|
|
97
|
-
- **Total context: ~5.2K** instead of ~12K (57% reduction after 2 switches)
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
# Commit Inteligente — Ritual de Incrementacao
|
|
2
|
-
|
|
3
|
-
> No Auroq OS, commit nao e sobre deployar codigo. E sobre **salvar o checkpoint do negocio**.
|
|
4
|
-
> Cada commit e um ponto de evolucao incremental do sistema.
|
|
5
|
-
|
|
6
|
-
## Quando Commitar
|
|
7
|
-
|
|
8
|
-
- Final de sessao de trabalho significativa
|
|
9
|
-
- Antes de trocar de assunto/projeto
|
|
10
|
-
- Antes de fechar o computador
|
|
11
|
-
- Quando completou uma etapa de projeto
|
|
12
|
-
- Quando tomou decisoes importantes
|
|
13
|
-
|
|
14
|
-
## Ritual do Commit (Ops executa)
|
|
15
|
-
|
|
16
|
-
### 1. Revisar o que mudou
|
|
17
|
-
```
|
|
18
|
-
git status + git diff
|
|
19
|
-
```
|
|
20
|
-
Entender: o que progrediu desde o ultimo commit?
|
|
21
|
-
|
|
22
|
-
### 2. Verificar projetos ativos
|
|
23
|
-
- SE trabalhou num projeto do cockpit → tracker esta atualizado?
|
|
24
|
-
- SE tracker nao foi atualizado → atualizar ANTES do commit (log, status, blockers)
|
|
25
|
-
|
|
26
|
-
### 3. Verificar contexto
|
|
27
|
-
- SE houve decisoes importantes → estao no `agents/companion/data/log-decisoes.md`?
|
|
28
|
-
- SE o estado do negocio mudou → `agents/companion/data/contexto-dinamico.md` reflete?
|
|
29
|
-
- SE algo foi aprendido → esta documentado em algum lugar?
|
|
30
|
-
|
|
31
|
-
### 4. Commitar com mensagem significativa
|
|
32
|
-
A mensagem conta O QUE ACONTECEU no negocio, nao o que mudou nos arquivos:
|
|
33
|
-
|
|
34
|
-
**Formato:**
|
|
35
|
-
```
|
|
36
|
-
{tipo}: {o que aconteceu}
|
|
37
|
-
|
|
38
|
-
{detalhes se necessario}
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
**Tipos:**
|
|
42
|
-
- `progresso:` — avancou em projeto/tarefa
|
|
43
|
-
- `decisao:` — tomou decisao estrategica
|
|
44
|
-
- `processo:` — documentou/criou/melhorou processo
|
|
45
|
-
- `agente:` — criou/melhorou agente/squad/worker
|
|
46
|
-
- `conhecimento:` — adicionou/tratou conhecimento na biblioteca
|
|
47
|
-
- `campanha:` — acao de campanha (criativo, disparo, ajuste)
|
|
48
|
-
- `fix:` — corrigiu problema
|
|
49
|
-
- `setup:` — configuracao/infra
|
|
50
|
-
|
|
51
|
-
**Exemplos:**
|
|
52
|
-
```
|
|
53
|
-
progresso: NDF Workshop fase 1 concluida — LP, flows e criativos prontos
|
|
54
|
-
decisao: definiu preco do ingresso em R$47 (teste contra R$97 no proximo ciclo)
|
|
55
|
-
processo: documentou SOP de shift entre ciclos de lancamento
|
|
56
|
-
agente: criou worker TechOps com vault e SOPs operacionais
|
|
57
|
-
conhecimento: ETL completo de criativos de anuncio (9 vols, 6450 linhas)
|
|
58
|
-
campanha: lancou lote 2 de criativos — 9 pecas, 3 hooks novos
|
|
59
|
-
```
|
|
60
|
-
|
|
61
|
-
### 5. Push
|
|
62
|
-
- Backup na nuvem (GitHub)
|
|
63
|
-
- Historico incremental do negocio
|
|
64
|
-
- Qualquer maquina, qualquer momento: `git clone` e o negocio ta la
|
|
65
|
-
|
|
66
|
-
## O que o Commit NAO e
|
|
67
|
-
|
|
68
|
-
- NAO e sobre codigo limpo ou testes passando
|
|
69
|
-
- NAO precisa de conventional commits estilo dev (feat/fix/chore)
|
|
70
|
-
- NAO e obrigatorio ter tudo perfeito — e checkpoint, nao release
|
|
71
|
-
- NAO e so pra deploy — e pra PERSISTIR evolucao
|
|
72
|
-
|
|
73
|
-
## Commit como Seguro
|
|
74
|
-
|
|
75
|
-
> "Commit e o botao salvar do sistema."
|
|
76
|
-
|
|
77
|
-
Se o computador quebrar, se o autocompact apagar tudo, se trocar de maquina — o ultimo commit e o ponto de restauracao. Quanto mais frequente, menos se perde.
|
|
78
|
-
|
|
79
|
-
## Protocolo do Ops
|
|
80
|
-
|
|
81
|
-
Quando o expert pede `*commit` ou `*push`, o Ops executa o ritual completo:
|
|
82
|
-
1. Revisa mudancas
|
|
83
|
-
2. Pergunta se trackers e contexto estao atualizados
|
|
84
|
-
3. Sugere mensagem de commit baseada no que aconteceu
|
|
85
|
-
4. Expert aprova
|
|
86
|
-
5. Commit + push
|