Files
agent-radar 2ed3415fb7
Publish Claude Code Binaries / Stage and publish binaries (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-arm64 (push) Canceled after 0s
Publish Tutti App Runtime / Build darwin-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build linux-amd64 (push) Canceled after 0s
Publish Tutti App Runtime / Build windows-amd64 (push) Canceled after 0s
Sync Tutti Agent Skills / sync (push) Canceled after 0s
Windows Agent Adapters / Test Windows agent adapters (push) Canceled after 0s
Windows Daemon Adapters / Test Windows daemon adapters (push) Canceled after 0s
Publish Tutti App Runtime / Publish runtime catalog (push) Canceled after 0s
源码快照 @ 2026-09-01 (source-only, 剔除非源码素材)
2026-09-01 20:17:27 +08:00

54 lines
3.0 KiB
TypeScript

// Standalone conversation-flow rendering, decoupled from the full AgentGUI node.
//
// Render a single agent session's transcript outside the workbench by:
// 1. building a session-detail view model from the session's timeline items
// (buildWorkspaceAgentSessionDetailViewModel), then
// 2. projecting it into a conversation view model (projectAgentConversationVM
// or the useProjectedAgentConversation hook), then
// 3. feeding it to <AgentConversationFlow />.
//
// This is the same rendering path the AgentGUI node uses.
export { AgentConversationFlow } from "../shared/agentConversation/components/AgentConversationFlow";
export { AgentTranscriptView } from "../shared/agentConversation/components/AgentTranscriptView";
export { AgentTranscriptSkeleton } from "../shared/agentConversation/components/AgentTranscriptSkeleton";
// Higher-level convenience wrapper: takes a session-detail view model, projects
// the conversation view model internally, and defaults the transcript labels from
// the package i18n (only `toolCallsLabel` is required). This is the easiest entry
// point for rendering a single session's conversation flow outside the node.
export { WorkspaceAgentSessionDetail } from "../shared/WorkspaceAgentSessionDetail";
export {
projectAgentConversationVM,
reconcileProjectedAgentConversationVM
} from "../shared/agentConversation/projection/agentConversationProjection";
export { useProjectedAgentConversation } from "../shared/agentConversation/projection/useProjectedAgentConversation";
export { buildWorkspaceAgentSessionDetailViewModel } from "../shared/workspaceAgentSessionDetailViewModel";
export type {
BuildWorkspaceAgentSessionDetailInput,
WorkspaceAgentSessionDetailViewModel
} from "../shared/workspaceAgentSessionDetailViewModel";
export type { AgentConversationVM } from "../shared/agentConversation/contracts/agentConversationVM";
export type { AgentMessageMarkdownAgentTarget as AgentConversationAgentTargetPresentation } from "../shared/AgentTargetPresentationContext";
export type {
AgentConversationParticipantIdentity,
AgentConversationParticipantPresentation
} from "../shared/agentConversation/contracts/agentConversationParticipantPresentation";
export type { AgentConversationFlowProps } from "../shared/agentConversation/components/AgentConversationFlow";
export type { AgentTranscriptViewProps } from "../shared/agentConversation/components/AgentTranscriptView";
export type { WorkspaceAgentSessionDetailProps } from "../shared/WorkspaceAgentSessionDetail";
export type { WorkspaceAgentActivityTimelineItem } from "../shared/workspaceAgentTimelineTypes";
export type { WorkspaceAgentActivityCard } from "../shared/workspaceAgentActivityListViewModel";
export {
serializeAgentConversationForClipboard,
type AgentGUIConversationAttachment,
type AgentGUIConversationCopyAction,
type AgentGUIConversationCopyLabels,
type AgentGUIConversationLocalImageReader,
type AgentGUIConversationSerializedTranscript
} from "../agent-gui/agentGuiNode/model/agentConversationCopy";