ianvs_agent_chat library

Classes

AgentChatView
Embeddable conversation with no application shell or backend dependency.
ChatCodePreview
Literal text, never Markdown or a terminal emulator. Copy is opt-in and uses the unchanged source; newline normalization only affects the display.
ChatComposerController
Host-owned draft and focus. Dispose it only after its composer is unmounted. Reuse one controller for a logical conversation; binding a different identity resets its draft. Separate controllers can retain separate text drafts.
ChatDecisionCard
A shared approval surface. It never interprets or authorizes an action. Host-provided widgets retain their keys, focus nodes and lifecycle guards.
ChatMessageBody
ChatMessageFrame
Presentation only: the host owns identity, ordering, scrolling and lifecycle.
ChatNativeTextFieldScope
Opt in only in a host that registered the ACP AppKit text-field factory. Other hosts use ordinary Flutter semantics, including on macOS.
ChatPermissionCard
Presentation only. Hosts validate the request lifecycle before accepting a choice.
ChatPlanCard
ChatPlatformScope
ChatPlatformServices
Override platform access at the embedding boundary. Defaults use standard desktop pickers/files; no host-specific MethodChannel or workspace exists.
ChatRenderingScope
ChatResourcePolicy
No automatic network or local-file access. A host loader is explicit authority.
ChatSessionBinding
ChatStrings
Override the primary composer labels without replacing a backend.
ChatTheme
ChatThemeData
Conversation-specific overrides layered on the shared Ianvs design theme.
ChatTimeline
ChatToolCard
A tool call's protocol status is not the exit status of a host operation. Supply details and disable showDetails for live execution records.
PromptAttachmentController
PromptAttachmentDropRegion
PromptInput
ToolActivityPresentation
Pure data consumed by the timeline's common tool-row renderer.
ToolPresentationRegistry
Resolves tool updates through ordered rules and a generic fallback.
ToolPresentationRule
One ordered extension point for recognizing and presenting a tool family.
ToolPresentationScope
Supplies a presentation registry to all tool rows under a timeline.
ToolPresentationSource
The normalized, renderer-independent projection of one ACP tool update.

Enums

PromptAttachmentKind
ToolActivityKind
Stable semantic categories used by compact tool rows and activity summaries.

Functions

emptyClipboardImage() → Future<PromptAttachment?>
No app-specific native channel is required to embed the composer.
readDroppedImageAttachment(PromptAttachment attachment) → Future<PromptAttachment?>

Typedefs

ChatDiagramBuilder = Widget Function(BuildContext context, String source)
ChatPartBuilder = Widget Function(BuildContext context, ChatSessionState state, Widget child)
ChatPathResolver = Future<String> Function(String path, {required bool isDirectory})
ChatResourceImageBuilder = Widget Function(BuildContext context, Uri uri, String? title, String? alt)
PromptAttachmentKindPicker = Future<List<PromptAttachment>> Function(PromptAttachmentKind kind)
PromptAttachmentPicker = Future<List<PromptAttachment>> Function()
PromptDroppedImageReader = Future<PromptAttachment?> Function(PromptAttachment attachment)
PromptImageClipboardReader = Future<PromptAttachment?> Function()
PromptSendCallback = void Function(String text, List<PromptAttachment> attachments)
SessionConfigSelectionCallback = void Function(String configId, Object value)
ToolPresentationResolver = ToolActivityPresentation? Function(ToolPresentationSource source)