@pennyfarthing/cyclist 9.2.0 → 9.4.0
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/dist/api/hotspots.d.ts +3 -0
- package/dist/api/hotspots.d.ts.map +1 -0
- package/dist/api/hotspots.js +54 -0
- package/dist/api/hotspots.js.map +1 -0
- package/dist/api/index.d.ts +1 -0
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +1 -0
- package/dist/api/index.js.map +1 -1
- package/dist/api/settings.d.ts +1 -1
- package/dist/api/settings.d.ts.map +1 -1
- package/dist/api/settings.js +44 -17
- package/dist/api/settings.js.map +1 -1
- package/dist/main.d.ts +4 -0
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +7 -0
- package/dist/main.js.map +1 -1
- package/dist/public/css/react.css +1 -1
- package/dist/public/js/react/react.js +43 -39
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +3 -1
- package/dist/server.js.map +1 -1
- package/dist/story-parser.d.ts +17 -0
- package/dist/story-parser.d.ts.map +1 -1
- package/dist/story-parser.js +183 -13
- package/dist/story-parser.js.map +1 -1
- package/dist/websocket.d.ts.map +1 -1
- package/dist/websocket.js +5 -4
- package/dist/websocket.js.map +1 -1
- package/package.json +1 -1
- package/src/public/App.tsx +2 -0
- package/src/public/components/ControlBar.tsx +1 -1
- package/src/public/components/DockviewWorkspace.tsx +4 -0
- package/src/public/components/FontPicker/index.tsx +118 -33
- package/src/public/components/FullFileTree.tsx +223 -0
- package/src/public/components/Message.tsx +32 -10
- package/src/public/components/MessageView.tsx +176 -93
- package/src/public/components/PersonaHeader.tsx +45 -15
- package/src/public/components/SubagentSpan.tsx +15 -8
- package/src/public/components/ThemePalette/ThemePalette.css +2 -0
- package/src/public/components/ToolStack.tsx +23 -13
- package/src/public/components/panels/AuditLogPanel.tsx +140 -66
- package/src/public/components/panels/ChangedPanel.tsx +30 -44
- package/src/public/components/panels/HotspotsPanel.tsx +365 -0
- package/src/public/components/panels/MessagePanel.tsx +14 -2
- package/src/public/components/panels/SettingsPanel.tsx +10 -10
- package/src/public/components/panels/WorkflowPanel.tsx +85 -12
- package/src/public/components/panels/index.ts +1 -0
- package/src/public/components/ui/switch.tsx +2 -2
- package/src/public/css/theme-system.css +71 -43
- package/src/public/hooks/useFileBrowser.ts +71 -0
- package/src/public/hooks/useHotspots.ts +113 -0
- package/src/public/hooks/useStory.ts +12 -3
- package/src/public/images/cyclist-dark.png +0 -0
- package/src/public/images/cyclist-light.png +0 -0
- package/src/public/styles/tailwind.css +428 -69
- package/src/public/types/message.ts +4 -0
- package/src/public/utils/slash-commands.ts +1 -1
- package/src/public/utils/toolStackGrouper.ts +4 -5
|
@@ -38,8 +38,8 @@ interface Message {
|
|
|
38
38
|
* Rules:
|
|
39
39
|
* - tool_result messages do NOT break the stack (they're paired with tool_use elsewhere)
|
|
40
40
|
* - assistant/user messages DO break the stack
|
|
41
|
-
* - Single tool_use messages
|
|
42
|
-
* - Returns array of ToolStackData, each representing
|
|
41
|
+
* - Single tool_use messages ARE grouped (consistent rendering with multi-tool stacks)
|
|
42
|
+
* - Returns array of ToolStackData, each representing 1+ consecutive tools
|
|
43
43
|
*
|
|
44
44
|
* @param messages - Array of messages to process
|
|
45
45
|
* @returns Array of tool stacks (only stacks with 2+ tools)
|
|
@@ -75,8 +75,8 @@ export function groupToolsIntoStacks(messages: Message[]): ToolStackData[] {
|
|
|
75
75
|
continue;
|
|
76
76
|
} else {
|
|
77
77
|
// assistant, user, or other message types break the stack
|
|
78
|
-
//
|
|
79
|
-
if (currentTools.length >=
|
|
78
|
+
// Create stack for any tools (single tools also get stacked for consistent rendering)
|
|
79
|
+
if (currentTools.length >= 1) {
|
|
80
80
|
const lastTool = currentTools[currentTools.length - 1];
|
|
81
81
|
stacks.push({
|
|
82
82
|
stackId: generateStableStackId(currentTools),
|
|
@@ -91,7 +91,6 @@ export function groupToolsIntoStacks(messages: Message[]): ToolStackData[] {
|
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
// Handle remaining tools at end of messages
|
|
94
|
-
// At end of array: create stack even for single tool (supports streaming/active state)
|
|
95
94
|
if (currentTools.length >= 1) {
|
|
96
95
|
const lastTool = currentTools[currentTools.length - 1];
|
|
97
96
|
stacks.push({
|