Skip to content

feat: Image paste, upload, and inline display in chat messages #17

@rdwj

Description

@rdwj

Summary

Support sending images to the agent and displaying images in conversation — both user-uploaded images and any images returned by the agent in responses.

UX Requirements

  • Paste images directly into chat input (Ctrl+V / Cmd+V)
  • Image thumbnail preview in the input area before sending
  • Inline image display in both assistant and user messages
  • Click-to-expand lightbox for full-size image viewing
  • Support for base64-encoded images and URL-referenced images
  • Graceful fallback for unsupported image formats (show placeholder with format name)
  • Responsive image sizing — fit message width, don't overflow
  • Alt text support for accessibility

Implementation Notes

Images are sent as content blocks with type: image_url following the OpenAI multi-modal message format. Base64 encoding is handled client-side for paste and upload flows. URL-referenced images in assistant responses render directly via <img> tags. The lightbox component should be shared across the app (reusable for any future media display). Lazy-load images outside the viewport for long conversations.

Companion Issues

Companion issues filed on fips-agents/agent-template, fips-agents/gateway-template, fips-agents/fips-agents-cli, and fips-agents/examples.

Size

S-M

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions