Skip to content

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

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

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions