Skip to content

Commit 2ddb1d1

Browse files
committed
refactor(cli): migrate streaming state to stream-store
Migrate chat.tsx to use stream-store for streaming-related state: - streamingAgents, activeSubagents, isChainInProgress - Removes these from local state management - Second step in reducing prop drilling All tests pass (231/231) and typecheck is clean.
1 parent 2a84b43 commit 2ddb1d1

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

cli/src/chat.tsx

Lines changed: 10 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ import { useQueueControls } from './hooks/use-queue-controls'
4141
import { logger } from './utils/logger'
4242
import { AnalyticsEvent } from '@codebuff/common/constants/analytics-events'
4343
import { useChatStore } from './state/chat-store'
44+
import { useStreamStore } from './state/stream-store'
4445
import { createChatScrollAcceleration } from './utils/chat-scroll-accel'
4546
import { loadLocalAgents } from './utils/local-agent-registry'
4647
import { buildMessageTree } from './utils/message-tree-utils'
@@ -104,16 +105,10 @@ export const Chat = ({
104105
setSlashSelectedIndex,
105106
agentSelectedIndex,
106107
setAgentSelectedIndex,
107-
streamingAgents,
108-
setStreamingAgents,
109108
focusedAgentId,
110109
setFocusedAgentId,
111110
messages,
112111
setMessages,
113-
activeSubagents,
114-
setActiveSubagents,
115-
isChainInProgress,
116-
setIsChainInProgress,
117112
agentMode,
118113
setAgentMode,
119114
toggleAgentMode,
@@ -136,16 +131,10 @@ export const Chat = ({
136131
setSlashSelectedIndex: store.setSlashSelectedIndex,
137132
agentSelectedIndex: store.agentSelectedIndex,
138133
setAgentSelectedIndex: store.setAgentSelectedIndex,
139-
streamingAgents: store.streamingAgents,
140-
setStreamingAgents: store.setStreamingAgents,
141134
focusedAgentId: store.focusedAgentId,
142135
setFocusedAgentId: store.setFocusedAgentId,
143136
messages: store.messages,
144137
setMessages: store.setMessages,
145-
activeSubagents: store.activeSubagents,
146-
setActiveSubagents: store.setActiveSubagents,
147-
isChainInProgress: store.isChainInProgress,
148-
setIsChainInProgress: store.setIsChainInProgress,
149138
agentMode: store.agentMode,
150139
setAgentMode: store.setAgentMode,
151140
toggleAgentMode: store.toggleAgentMode,
@@ -160,6 +149,15 @@ export const Chat = ({
160149
})),
161150
)
162151

152+
const {
153+
streamingAgents,
154+
setStreamingAgents,
155+
activeSubagents,
156+
setActiveSubagents,
157+
isChainInProgress,
158+
setIsChainInProgress,
159+
} = useStreamStore()
160+
163161
// Memoize toggle IDs extraction - only recompute when messages change
164162
const allToggleIds = useMemo(() => {
165163
const ids = new Set<string>()

0 commit comments

Comments
 (0)