/**
 * Agent 对话核心 Hook（已迁移至 store/chat.ts）
 *
 * 原 SSE 流式通信逻辑已迁移为 WebSocket 实现，API 路径已更新为 /open/netaclaw/*。
 * 本文件保留为向后兼容的薄包装层，直接委托给 useAgentChatStore。
 *
 * 路径映射（已废弃 → 新路径）：
 *   /open/agent/chat/chat          → WS /open/netaclaw/ws（store 内部处理）
 *   /open/agent/chat/messages      → /open/netaclaw/session/messages
 *   /open/agent/chat/sessions      → /open/netaclaw/session/list
 *   /open/agent/chat/deleteSession → /open/netaclaw/session/delete
 *   /open/agent/chat/deleteAllSessions → /open/netaclaw/session/deleteAll
 *   /open/agent/chat/contextTokens → /open/netaclaw/session/contextTokens
 *   /open/agent/info/list          → /open/netaclaw/agent/list
 *   /open/agent/chat/status        → 已移除（WS 自动管理连接状态）
 *   /open/agent/chat/reconnect     → 已移除（WS 自动重连）
 */
import { useAgentChatStore } from '../store/chat';

/**
 * Agent 对话 Hook（委托给全局 Store）
 * 新代码请直接使用 useAgentChatStore()。
 */
export function useAgentChat() {
	const store = useAgentChatStore();

	return {
		messages: store.messages,
		sessionId: store.sessionId,
		loading: store.loading,
		activeSkill: store.activeSkill,
		skillProgress: store.skillProgress,
		sessions: store.sessions,
		sendMessage: store.sendMessage,
		stopGeneration: store.stopGeneration,
		loadMessages: store.loadMessages,
		loadSessions: store.loadSessions,
		newSession: store.newSession,
		switchSession: store.switchSession,
		deleteSession: store.deleteSession,
		onToken: store.onToken,
		dispose: () => {
			// store 级别的 WS 连接不随组件卸载断开（全局单例）
			// 如需强制断开，请调用 store.stopGeneration()
		}
	};
}
