Skip to content

Add Iris component for image processing#297

Merged
XargonWan merged 40 commits intodevelopfrom
feat/iris
Apr 21, 2026
Merged

Add Iris component for image processing#297
XargonWan merged 40 commits intodevelopfrom
feat/iris

Conversation

@XargonWan
Copy link
Copy Markdown
Owner

Adds the new Iris vision subsystem to Synthetic Heart, enabling image/video analysis through a dedicated, engine-agnostic media pipeline and exposing a selectable Iris engine in the WebUI.

What changed

  • Introduced a new iris_registry.py registry for Iris engines.
  • Added iris_base.py with IrisResult and IrisEngineBase.
  • Implemented iris_plugin.py to expose vision analysis and resolve the active Iris engine.
  • Added iris_bridge.py to wrap external provider adapters for image understanding.
  • Extended registry.py to register vision-capable adapters with the Iris registry.
  • Updated existing adapter implementations to support describe_image(...).
  • Integrated Iris into media_dispatcher.py so image/video inputs are routed through the Iris pipeline before live fallback.
  • Added WebUI support for Iris engine selection and configuration in webui.py, engines.html, and frontend JS.
  • Added DB/config initialization support for ACTIVE_IRIS_ENGINE in init-db.sql and provider metadata updates.
  • Included targeted Iris tests to cover registry behavior, plugin dispatch, and engine discovery.

Testing

  • Verified the Iris implementation with the new vision tests.
  • Resolved lockfile merge conflicts in uv.lock to keep the repo clean.

Notes

The implementation preserves the project’s engine-agnostic design: Iris-specific logic is isolated to the new registry/plugin/adapter layer, and core logic does not hardcode any concrete engine.Continuato con Autopilot

XargonWan and others added 26 commits April 6, 2026 23:35
…e handling with enqueue_and_wait functionality
feat(plugin_instance): enhance image attachment handling and extraction logic

feat(webui): include iris components in summary and error handling

test(iris): update tests for register_instance to validate capabilities

test(webui): add tests for extracting image data and multimodal attachments
@XargonWan XargonWan linked an issue Apr 10, 2026 that may be closed by this pull request
…on handling, and add Ollama server response validation
…nAICompatAdapter

feat(plugin_instance): improve Iris plugin attachment handling and logging

feat(webui): refine attachments directory management and logging

feat(init-db): enable vision support and increase response timeout for selenium-llm-engine

fix(debrief_action_intent): extend timeout for LLM generation

test(webui): add tests for attachments directory and message forwarding
- Updated the Iris plugin to use a model override for vision analysis, allowing for more flexible model selection.
- Introduced a new configuration variable `IRIS_DEFAULT_MODEL` to set a default model for Iris requests.
- Enhanced the web UI to include a model selection dropdown for the active Iris engine.
- Modified the handling of incoming messages to ensure the user's text is not passed as a prompt to Iris.
- Improved logging for better traceability of Iris processing steps.
- Added tests to verify the correct model is used during image description requests.
- Cleaned up code formatting and improved readability across multiple files.
@XargonWan XargonWan marked this pull request as ready for review April 21, 2026 08:22
@XargonWan XargonWan merged commit e58dfff into develop Apr 21, 2026
12 of 18 checks passed
@XargonWan XargonWan deleted the feat/iris branch April 21, 2026 08:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

We need a companion not another side project

2 participants