Commit a154c945ecf9e830baeb2acd016ab880e0096f98
1 parent
a128a2ff
style: update Template agents list style to match AgentChat list
Showing
5 changed files
with
62 additions
and
30 deletions
data/system/agents/master/memory/memory.md
| ... | ... | @@ -24,3 +24,4 @@ |
| 24 | 24 | - [2026-03-27] hi → 你好,我是 Master Agent,LemonBoss 组织的管理者。告诉我你想做什么,我会把任务分配给合适的 Agent 来执行。 |
| 25 | 25 | - [2026-03-27] hi → 不是。我目前使用的是 **MiniMax-M2.1** 模型(见系统环境信息)。 |
| 26 | 26 | - [2026-03-27] hi → 抱歉,我无法清空对话日志 — 这属于 Claude Code 客户端层面的操作,超出了我的能力范围。 |
| 27 | +- [2026-03-27] 你帮我创建一个叫做 ABC 的公司 → ✅ **ABC Inc. 公司已创建完成!** | ... | ... |
data/system/agents/master/memory/reflections/reflect-1774633135565.json
0 → 100644
| 1 | +{ | |
| 2 | + "timestamp": "2026-03-27T17:38:55.565Z", | |
| 3 | + "convId": "conv-mn96pu73", | |
| 4 | + "task": "你帮我创建一个叫做 ABC 的公司", | |
| 5 | + "status": "completed", | |
| 6 | + "toolCount": 7, | |
| 7 | + "durationSec": 53, | |
| 8 | + "patterns": [ | |
| 9 | + "完成了 7 步工具调用的复杂任务 (53秒)" | |
| 10 | + ], | |
| 11 | + "lessons": [], | |
| 12 | + "plan": null | |
| 13 | +} | |
| 0 | 14 | \ No newline at end of file | ... | ... |
data/system/agents/master/memory/short-term/session-1774633135564.md
0 → 100644
| 1 | +# Session 摘要 | |
| 2 | + | |
| 3 | +- **时间**: 2026-03-27 17:38:55 | |
| 4 | +- **对话ID**: conv-mn96pu73 | |
| 5 | +- **状态**: completed | |
| 6 | +- **工具调用**: 7 次 | |
| 7 | +- **耗时**: 53秒 | |
| 8 | + | |
| 9 | +## 任务 | |
| 10 | +你帮我创建一个叫做 ABC 的公司 | |
| 11 | + | |
| 12 | +## 结果 | |
| 13 | +✅ **ABC Inc. 公司已创建完成!** | |
| 14 | + | |
| 15 | +| 操作 | 状态 | | |
| 16 | +|------|------| | |
| 17 | +| 公司创建 | ✅ ABC Inc. 已创建 (ID: abc) | | |
| 18 | +| CEO 招聘 | ✅ 首席执行官已入职 | | |
| 19 | +| CTO 招聘 | ✅ 首席技术官已入职 | | |
| 20 | +| COO 招聘 | ✅ 首席运营官已入职 | | |
| 21 | +| HR 招聘 | ✅ 人力资源总监已入职 | | |
| 22 | +| 战略启动 | ✅ 已向 CEO 发送启动令 (taskId: T-mn96qkam) | | |
| 23 | + | |
| 24 | +CEO 已收到战略启动令,正在分析公司定位并制定 SOP。 | |
| 25 | + | |
| 26 | +另外,我已创建了两个定时任务: | |
| 27 | +- 🔄 **系统巡检**: 每 5 分钟自动检查所有 Agent 状态 | |
| 28 | +- 📊 **系统日报**: 每 30 分钟自动生成日报 | ... | ... |
data/system/templates/_registry.json
web/src/views/TemplateAgents.vue
| ... | ... | @@ -36,14 +36,14 @@ |
| 36 | 36 | <div class="template-list-scroll"> |
| 37 | 37 | <div |
| 38 | 38 | v-for="tpl in filteredTemplates" :key="tpl.id" |
| 39 | - class="template-item" | |
| 39 | + class="agent-card" | |
| 40 | 40 | :class="{ active: selectedTemplateId === tpl.id }" |
| 41 | 41 | @click="selectTemplate(tpl.id)" |
| 42 | 42 | > |
| 43 | - <div class="tpl-icon">{{ agentEmoji(tpl.type) }}</div> | |
| 44 | - <div class="tpl-info"> | |
| 45 | - <div class="tpl-name">{{ tpl.name }}</div> | |
| 46 | - <div class="tpl-type">{{ tpl.type }}</div> | |
| 43 | + <div class="agent-card-emoji">{{ agentEmoji(tpl.type) }}</div> | |
| 44 | + <div class="agent-card-info"> | |
| 45 | + <div class="agent-card-name">{{ tpl.name }}</div> | |
| 46 | + <div class="agent-card-type">{{ tpl.type }}</div> | |
| 47 | 47 | </div> |
| 48 | 48 | <div v-if="tpl.benchmarkScore" class="tpl-score">⭐ {{ tpl.benchmarkScore }}</div> |
| 49 | 49 | </div> |
| ... | ... | @@ -455,30 +455,20 @@ onMounted(() => { |
| 455 | 455 | outline: none; border-color: var(--accent); background: var(--bg-input-focus); |
| 456 | 456 | } |
| 457 | 457 | .template-list-scroll { |
| 458 | - flex: 1; overflow-y: auto; padding: 12px; | |
| 459 | - display: flex; flex-direction: column; gap: 8px; | |
| 460 | -} | |
| 461 | -.template-item { | |
| 462 | - display: flex; align-items: center; gap: 12px; | |
| 463 | - padding: 12px; border-radius: 10px; cursor: pointer; | |
| 464 | - border: 1px solid transparent; transition: all 0.2s; | |
| 465 | -} | |
| 466 | -.template-item:hover { | |
| 467 | - background: var(--bg-surface-hover); | |
| 468 | -} | |
| 469 | -.template-item.active { | |
| 470 | - background: var(--bg-surface); | |
| 471 | - border-color: var(--border-active); | |
| 472 | - box-shadow: 0 4px 12px rgba(0,0,0,0.05); | |
| 473 | -} | |
| 474 | -.tpl-icon { font-size: 24px; } | |
| 475 | -.tpl-info { flex: 1; min-width: 0; } | |
| 476 | -.tpl-name { | |
| 477 | - font-size: 14px; font-weight: 700; color: var(--text-primary); | |
| 478 | - white-space: nowrap; overflow: hidden; text-overflow: ellipsis; | |
| 479 | -} | |
| 480 | -.tpl-type { font-size: 11px; color: var(--text-muted); text-transform: uppercase; margin-top: 2px; } | |
| 481 | -.tpl-score { font-size: 11px; color: var(--yellow-text); font-weight: 700; } | |
| 458 | + flex: 1; overflow-y: auto; padding: 6px; | |
| 459 | +} | |
| 460 | +.agent-card { | |
| 461 | + display: flex; align-items: center; gap: 8px; | |
| 462 | + padding: 7px 10px; border-radius: 8px; cursor: pointer; | |
| 463 | + transition: all 0.15s; margin-bottom: 2px; border: 1px solid transparent; | |
| 464 | +} | |
| 465 | +.agent-card:hover { background: var(--accent-bg); } | |
| 466 | +.agent-card.active { background: var(--bg-surface-active); border-color: var(--border-active); } | |
| 467 | +.agent-card-emoji { font-size: 18px; flex-shrink: 0; } | |
| 468 | +.agent-card-info { min-width: 0; flex: 1; } | |
| 469 | +.agent-card-name { font-size: 11px; font-weight: 600; color: var(--text-secondary); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } | |
| 470 | +.agent-card-type { font-size: 9px; color: var(--text-faint); text-transform: uppercase; } | |
| 471 | +.tpl-score { font-size: 10px; font-weight: 700; color: var(--yellow-text, #f59e0b); background: rgba(245,158,11,0.1); padding: 2px 6px; border-radius: 6px; } | |
| 482 | 472 | |
| 483 | 473 | .empty-mini { padding: 24px; text-align: center; color: var(--text-muted); font-size: 13px; } |
| 484 | 474 | ... | ... |