@cccarv82/freya 1.0.40 → 1.0.42
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/.agent/rules/freya/agents/master.mdc +28 -19
- package/.agent/rules/freya/freya.mdc +7 -1
- package/cli/web-ui.css +9 -12
- package/cli/web.js +2 -2
- package/package.json +1 -1
|
@@ -70,24 +70,33 @@ You must fully embody this agent's persona and follow all activation instruction
|
|
|
70
70
|
</persona>
|
|
71
71
|
|
|
72
72
|
<routing-logic>
|
|
73
|
-
- **Ingest Log**:
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
- **
|
|
73
|
+
- **Ingest Log (AUTO)**: Sempre que o usuário trouxer notas de status, decisões, blockers, metas de carreira ou qualquer evidência de trabalho (inclusive prints, e-mails, mensagens copiadas), assuma por padrão que **deve ser registrado**.
|
|
74
|
+
- Não pergunte “se deve” criar log ou tarefa; apenas registre seguindo o schema de dados.
|
|
75
|
+
- Chame o sub-agente **Ingestor** imediatamente, passando o texto bruto + qualquer interpretação útil (cliente, projeto, datas, Jiras, marcos).
|
|
76
|
+
|
|
77
|
+
- **Oracle Query**: Se o usuário perguntar “Status do projeto X?”, “O que aconteceu em Y?”, “quais são minhas tarefas?” -> acione o sub-agente **Oracle**.
|
|
78
|
+
|
|
79
|
+
- **Career Coach**: Se o usuário pedir promoção, feedback, brag sheet, metas -> acione o sub-agente **Coach**.
|
|
80
|
+
|
|
81
|
+
- **System Health**: Se o usuário pedir “health check”, “status do sistema”, ou mencionar erros de validação/corrupção -> execute `npm run health` e reporte resultados.
|
|
82
|
+
|
|
83
|
+
- **Data Migration**: Se o usuário pedir “migrar dados”, mencionar `schemaVersion`, ou “atualizei e deu erro” -> execute `npm run migrate` e sumarize mudanças.
|
|
84
|
+
|
|
78
85
|
- **Reporting**:
|
|
79
|
-
-
|
|
80
|
-
-
|
|
81
|
-
-
|
|
82
|
-
-
|
|
83
|
-
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
86
|
+
- “Weekly/semana” -> `npm run status -- --period weekly`
|
|
87
|
+
- “Daily/dia/standup” -> `npm run status -- --period daily`
|
|
88
|
+
- “SM weekly / Scrum Master” -> `npm run sm-weekly`
|
|
89
|
+
- “Blockers / riscos” -> `npm run blockers`
|
|
90
|
+
- Sempre informe onde o arquivo foi salvo.
|
|
91
|
+
|
|
92
|
+
- **Git Operations**: Se o usuário pedir commit:
|
|
93
|
+
1. `git status --porcelain`
|
|
94
|
+
2. Se vazio: “Sem mudanças para commitar”
|
|
95
|
+
3. Se houver mudanças: `git diff`
|
|
96
|
+
4. Gerar mensagem concisa (formato `type: summary`)
|
|
97
|
+
5. `git add .`
|
|
98
|
+
6. `git commit -m "..."`
|
|
99
|
+
7. Confirmar o commit.
|
|
100
|
+
|
|
101
|
+
- **General**: Demais pedidos simples, responda diretamente seguindo a persona.
|
|
93
102
|
</routing-logic>
|
|
@@ -11,7 +11,13 @@ To invoke the assistant, simply type: `@freya`
|
|
|
11
11
|
<agent-entry>
|
|
12
12
|
1. **Trigger:** User types `@freya` or mentions `@freya`.
|
|
13
13
|
2. **Action:** Load `@.agent/rules/freya/agents/master.mdc`.
|
|
14
|
-
3. **Behavior
|
|
14
|
+
3. **Behavior (AUTO-INGEST OBRIGATÓRIO):**
|
|
15
|
+
- Sempre que o usuário compartilhar contexto relevante (mensagens de chat, decisões, status, prints, trechos de e-mail, etc.), o Master Agent **NÃO DEVE perguntar se deve registrar**.
|
|
16
|
+
- O comportamento padrão é: interpretar o pedido e **disparar automaticamente o sub-módulo Ingestor** para registrar o contexto em:
|
|
17
|
+
- `logs/daily/{YYYY-MM-DD}.md` (raw input + notas estruturadas),
|
|
18
|
+
- `data/Clients/.../status.json` (quando houver cliente/projeto),
|
|
19
|
+
- `data/tasks/task-log.json` (quando houver tarefas, marcos, datas ou follow-ups).
|
|
20
|
+
- Primeiro registra, depois confirma ao usuário o que foi gravado (não pedir permissão prévia para criar logs ou tasks).
|
|
15
21
|
</agent-entry>
|
|
16
22
|
|
|
17
23
|
<menu-display>
|
package/cli/web-ui.css
CHANGED
|
@@ -212,10 +212,8 @@ body {
|
|
|
212
212
|
|
|
213
213
|
.centerBody {
|
|
214
214
|
padding: 16px;
|
|
215
|
-
|
|
216
|
-
flex-direction: column;
|
|
215
|
+
overflow: auto;
|
|
217
216
|
min-height: 0;
|
|
218
|
-
overflow: hidden;
|
|
219
217
|
}
|
|
220
218
|
.centerHead { display: flex; justify-content: space-between; align-items: flex-end; gap: 18px; margin-bottom: 14px; }
|
|
221
219
|
.statusLine { display:flex; align-items:center; justify-content:flex-end; gap: 12px; }
|
|
@@ -223,15 +221,7 @@ body {
|
|
|
223
221
|
h1 { margin: 0; font-size: 22px; letter-spacing: -.02em; }
|
|
224
222
|
.subtitle { margin-top: 6px; color: var(--muted); font-size: 13px; line-height: 1.4; max-width: 860px; }
|
|
225
223
|
|
|
226
|
-
.midGrid {
|
|
227
|
-
display: grid;
|
|
228
|
-
grid-template-columns: 1fr 1fr;
|
|
229
|
-
gap: 14px;
|
|
230
|
-
flex: 1;
|
|
231
|
-
min-height: 0;
|
|
232
|
-
overflow: auto;
|
|
233
|
-
padding-right: 2px; /* avoid scrollbar overlay clipping */
|
|
234
|
-
}
|
|
224
|
+
.midGrid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
|
|
235
225
|
.midSpan { grid-column: 1 / -1; }
|
|
236
226
|
@media (max-width: 980px) {
|
|
237
227
|
.midGrid { grid-template-columns: 1fr; }
|
|
@@ -243,6 +233,13 @@ h1 { margin: 0; font-size: 22px; letter-spacing: -.02em; }
|
|
|
243
233
|
.panelHead b { font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--muted); }
|
|
244
234
|
.panelBody { padding: 12px; }
|
|
245
235
|
|
|
236
|
+
/* Fixed-height panel bodies (Today/Reports) to keep layout stable + show vertical scroll */
|
|
237
|
+
.panelBody.panelScroll {
|
|
238
|
+
max-height: clamp(280px, 42vh, 520px);
|
|
239
|
+
overflow: auto;
|
|
240
|
+
overscroll-behavior: contain;
|
|
241
|
+
}
|
|
242
|
+
|
|
246
243
|
/* DEV DRAWER */
|
|
247
244
|
.devDrawer { margin-top: 14px; border: 1px dashed var(--line2); border-radius: var(--radius); background: rgba(255,250,242,.42); }
|
|
248
245
|
[data-theme="dark"] .devDrawer { background: rgba(0,0,0,.18); }
|
package/cli/web.js
CHANGED
|
@@ -750,7 +750,7 @@ function buildHtml(safeDefault) {
|
|
|
750
750
|
<button class="btn small" onclick="refreshToday()">Atualizar</button>
|
|
751
751
|
</div>
|
|
752
752
|
</div>
|
|
753
|
-
<div class="panelBody">
|
|
753
|
+
<div class="panelBody panelScroll">
|
|
754
754
|
<div class="small" style="margin-bottom:8px; opacity:.8">Fazer agora</div>
|
|
755
755
|
<div id="tasksList" style="display:grid; gap:8px"></div>
|
|
756
756
|
<div style="height:12px"></div>
|
|
@@ -766,7 +766,7 @@ function buildHtml(safeDefault) {
|
|
|
766
766
|
<button class="btn small" onclick="refreshReports()">Atualizar</button>
|
|
767
767
|
</div>
|
|
768
768
|
</div>
|
|
769
|
-
<div class="panelBody">
|
|
769
|
+
<div class="panelBody panelScroll">
|
|
770
770
|
<input id="reportsFilter" placeholder="filter (ex: daily, executive, 2026-01-29)" style="width:100%; margin-bottom:10px" oninput="renderReportsList()" />
|
|
771
771
|
<div id="reportsList" style="display:grid; gap:8px"></div>
|
|
772
772
|
<div class="help">Últimos relatórios em <code>docs/reports</code>. Clique para abrir o preview.</div>
|