Commit Graph

32 Commits

Author SHA1 Message Date
xintaofei
3e30ab7d60 fix(parser): harden Agent subagent state machine, file matching, query performance and streaming child grouping
- Codex: decouple active_agent_count decrement from close_agent target
  parsing and reset counter on turn_context to prevent main assistant
  messages from being swallowed when close_agent events are malformed
- Codex: use exact filename match with separator-aware fallback and
  sorted candidates for deterministic subagent session file resolution
- Codex/OpenCode: truncate subagent tool call previews to 500 chars
- OpenCode: batch-load all subagent tool calls in a single SQL query
  instead of per-task N+1 queries to avoid slow detail page loads
- Streaming: restrict positional child grouping fallback to in-progress
  agents only, preventing top-level tool calls from being incorrectly
  folded into completed Agent cards
- Tests: update Claude context window assertions to match 1M default
2026-04-17 09:38:52 +08:00
xintaofei
488b0c2e53 feat(parser): render OpenCode task as Agent cards with nested tool calls
Transform OpenCode "task" tool calls with subagent_type into unified
Agent card display: rewrite as "Agent" tool with subagent_type, prompt,
description, and model; compute duration from time fields; query
sub-agent session parts from SQLite for nested tool call lists; extract
<task_result> content to strip preamble noise from agent output; guard
Streamdown code plugin against unsupported Shiki language identifiers
(e.g. "##", "function") in fenced code blocks from tool output.
2026-04-17 00:06:57 +08:00
xintaofei
68142651b3 feat(parser): render Codex CLI spawn_agent as Agent cards with nested tool calls
Transform Codex spawn_agent/wait_agent/close_agent into unified Agent
card display: rewrite spawn_agent as "Agent" tool with subagent_type,
prompt, and description; correlate final results from wait_agent and
close_agent outputs; parse sub-agent session JSONL files for nested
tool call lists; suppress intermediate status messages during agent
execution; clean exec_command output to show only the command and its
result.
2026-04-16 22:52:09 +08:00
xintaofei
9f82fdf350 feat(ui): add dedicated Agent subagent rendering with nested tool call display
Render Agent/Explore/Plan tool calls in a visually distinct collapsible
container with colored left border, replacing the generic tool card. Parse
subagent JSONL transcripts from {sessionId}/subagents/ to extract and
display the actual tool calls (Bash, Read, Grep, etc.) the subagent
executed, reusing the existing ToolCallPart for consistent appearance.

- Add AgentToolCallPart component with collapsible body, prompt section,
  execution stats, and nested tool call list via render prop injection
- Add AgentExecutionStats and AgentToolCall types (Rust + TypeScript)
- Parse toolUseResult.agentId to locate and read subagent JSONL files
- Validate agentId against path traversal before filesystem access
- Pass agentStats through adapter for both ID-matched and positional
  tool result pairing
- Strip agentStats in nested render to prevent recursive Agent expansion
- Add i18n keys for agent UI labels across all 10 languages
2026-04-16 21:32:25 +08:00
xintaofei
5f1ba86ac2 代码优化调整 2026-03-29 21:43:48 +08:00
xintaofei
d75f94acf3 Merge branch 'main' into cline 2026-03-28 20:15:21 +08:00
xintaofei
be3f4986d7 支持Cline Agent 2026-03-28 20:14:48 +08:00
xintaofei
622d8c90bd 优化消息里编辑工具代码行号diff计算 2026-03-28 17:41:19 +08:00
xintaofei
4ea8954535 支持实时响应时解析读取工具的代码行号 2026-03-28 17:22:21 +08:00
xintaofei
0ab9d46b63 支持实时响应时解析编辑工具的代码行号 2026-03-28 17:13:29 +08:00
xintaofei
4e5f4a382c 优化编辑工具调用里多hunk场景的行号解析 2026-03-28 16:08:08 +08:00
xintaofei
d2ef046e59 文件编辑工具行号解析优化 2026-03-28 16:03:27 +08:00
xintaofei
c0b3e9aff9 优化编辑工具调用的行号解析 2026-03-28 15:46:52 +08:00
xintaofei
d5471d2ceb 优化消息里的读/写工具代码样式 2026-03-28 14:30:12 +08:00
xintaofei
8bd19738d0 优化消息里读/写内容显示样式 2026-03-28 14:04:19 +08:00
xintaofei
0d16d82eb9 优化claude code系统消息显示 2026-03-24 21:13:25 +08:00
xintaofei
af6d8dd9a8 修复并行命令的执行结果没有对应到命令块 2026-03-24 19:29:45 +08:00
xintaofei
284e45fbdf 重构会话页面的消息渲染,支持块级虚拟化,提升长会话性能,减少卡断 2026-03-24 18:52:25 +08:00
xintaofei
a4805621f9 修改claude code模型的上下文窗口的上限为1M 2026-03-23 23:35:12 +08:00
xintaofei
28c90920ef 过滤掉opencode的空会话 2026-03-19 22:07:59 +08:00
xintaofei
f517f4fcbb 优化OpenClaw会话解析 2026-03-17 15:35:34 +08:00
xintaofei
2240f3054d 支持OpenClaw会话解析 2026-03-17 14:28:35 +08:00
xintaofei
0c843ec14e 优化上下文事件更新的处理逻辑 2026-03-13 22:07:29 +08:00
helwd
596ac1eb58 feat: 扫描 Gemini history/ 目录并支持按模型名搜索会话
- gemini.rs: list_chat_files() 同时扫描 tmp/(进行中)和 history/
  (已归档)目录,修复已完成的 Gemini 会话不可见的问题
- conversations.rs: 搜索过滤新增 model 字段匹配,
  支持按模型名搜索会话(如 'gemini-2.5-pro'、'claude-sonnet')
2026-03-12 23:13:34 +08:00
xintaofei
46b276443b 代码警告消除和优化 2026-03-09 10:05:22 +08:00
xintaofei
593e03e2b9 支持opencode 的 Agent 解析用户消息里的图片 2026-03-08 17:52:40 +08:00
xintaofei
c5537f63b0 支持gemini cli 的 Agent 解析用户消息里的图片 2026-03-08 17:46:01 +08:00
xintaofei
533064829f 支持claude code 的 Agent 解析用户消息里的图片 2026-03-08 17:39:53 +08:00
xintaofei
7a4cbcb73e 支持在会话输入框直接进行文件/图片的拖拽和粘贴 2026-03-08 10:54:06 +08:00
xintaofei
dacec69481 处理#[allow(dead_code)]代码 2026-03-07 18:04:36 +08:00
xintaofei
349845c137 folders.rs多语言处理 2026-03-07 15:59:14 +08:00
xggz
54d1097b41 Initial commit 2026-03-06 22:56:13 +08:00