agentgui 1.0.108 → 1.0.110

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.
Files changed (2) hide show
  1. package/.prd +0 -66
  2. package/package.json +1 -1
package/.prd CHANGED
@@ -1,66 +0,0 @@
1
- # Response Block Rendering Analysis & Fix
2
-
3
- ## Problem Statement
4
- Response blocks in GUI are not being beautified/rendered correctly. Issues:
5
- - Blocks may be separated incorrectly
6
- - Detection logic may be failing
7
- - Rendering may not match intended HTML structure
8
- - Need perfect rendering with no edge cases or surprises
9
-
10
- ## Investigation Phase (Completed)
11
- - [x] Search for response block rendering code in app.js
12
- - [x] Search for block type definitions and separators
13
- - [x] Review message bubble structure and flex/layout CSS
14
- - [x] Examine response block detection logic in app.js
15
- - [x] Check HTML/CSS rendering for response blocks
16
- - [x] Review message rendering pipeline
17
-
18
- ## Root Cause Analysis (Findings)
19
- - [x] Traced message flow: Claude outputs (stream-json) → claude-runner.js parses JSON → processMessage collects blocks
20
- - [x] server.js line 738: extracts output.message.content blocks from assistant responses
21
- - [x] app.js lines 194-209: renderMessageBlock handles each block based on type field
22
- - [x] Block types: 'text', 'tool_use', 'tool_result', 'file_operation'
23
- - [x] Text blocks parsed for markdown code blocks with regex
24
- - [x] Found potential issue: blocks may not be properly formatted/beautified
25
- - [x] HTML structure looks correct but need to verify actual output
26
-
27
- ## Edge Cases & Issues
28
- - [ ] Multiple consecutive blocks of same type
29
- - [ ] Empty blocks or whitespace handling
30
- - [ ] Mixed block types in same message
31
- - [ ] Long content overflow in blocks
32
- - [ ] Special characters in block content
33
- - [ ] Code/pre tag interaction with beautification
34
-
35
- ## Root Cause Identified
36
- ROOT CAUSE: Text blocks from Claude contain MARKDOWN but are being rendered as plain escaped text
37
- - Claude outputs blocks with type:'text' containing markdown (headings, lists, bold, code, links)
38
- - Current code only extracts code blocks with regex, escapes everything else
39
- - Markdown structure (headings, lists, etc.) is lost
40
-
41
- ## Solution: Implement Markdown Parser (Completed)
42
- - [x] Create markdown to HTML converter (markdownToHtml method)
43
- - [x] Handle markdown syntax: # headings, - lists, **bold**, `code`, ```code blocks```, links
44
- - [x] Integrate parser into renderMessageBlock for text type
45
- - [x] Ensure HTML is properly escaped to prevent XSS
46
- - [x] Tested all markdown features: h1-h6, ul/ol lists, bold/italic, inline code, code blocks, links
47
- - [x] Verify blocks render with proper semantic HTML
48
-
49
- ## CSS Updates (Completed)
50
- - [x] Added styling for markdown elements (h1-h3, ul/ol, lists, inline code, links)
51
- - [x] Remove duplicate .code-block definition (removed old version at lines 1454-1470)
52
- - [x] Keep modern version at line 842 with CSS variables
53
-
54
- ## Execution & Verification (Ready)
55
- - [ ] Commit changes to git
56
- - [ ] Test with real Claude Code execution output via browser
57
- - [ ] Verify blocks render with perfect formatting
58
- - [ ] Verify no edge cases or surprises
59
- - [ ] Verify layout doesn't break on wide screens
60
-
61
- ## Completion Criteria
62
- - Response blocks detect correctly
63
- - Blocks render with proper styling
64
- - All block types display correctly
65
- - No edge cases or surprises
66
- - Verified through real execution
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agentgui",
3
- "version": "1.0.108",
3
+ "version": "1.0.110",
4
4
  "description": "Multi-agent ACP client with real-time communication",
5
5
  "type": "module",
6
6
  "main": "server.js",