v0.0.5 Active Development GPL-3.0

Medical Image
Computing Suite

A cross-platform, modular platform for medical image visualization & analysis

Python 3.11+ Required
Cross-platform Win · macOS · Linux
7+ LLM Providers AI-Powered
Scroll to explore
🏥

Medical Image I/O

DICOM, TIFF stacks, HDF5/MED, MAT, PNG/JPEG — all formats supported natively.

🐍

Embedded Python

In-process Jupyter kernel with a full-featured code editor and autocomplete.

🤖

AI Agent Panel

Multi-provider LLM chat with RAG, function-calling skills, and long memory.

🧩

Extension System

Dynamic loading of third-party extensions via pip packages or local directories.

Everything you need for
medical imaging research

MedICS embeds scientific Python, a flexible extension system, and an event-driven component architecture into one cohesive platform.

🔧

Built-in Toolboxes

PyEditor (full Python IDE) and ImportData (Multi-format importer) ship out of the box.

Intelligent assistance,
built right in

The AI Agent panel gives you a VS Code-style chat interface backed by any major LLM provider — with RAG, function-calling skills, and long memory.

OpenAI
Gemini
Anthropic
Grok
GitHub Copilot
Ollama
Custom Endpoints

A growing ecosystem
of extensions

Official extensions from the MedICS team and community-built plugins — installed with a single pip command, auto-discovered on launch.

Loading extensions…

Up and running
in one command

bash
pip install git+https://github.com/Yukun-Guo/MedICS.git

Requires Python 3.11+ · Windows · macOS · Linux

Ready to start?

Install MedICS, build an extension, or contribute to the project.

Everything you need for
medical imaging research

MedICS combines a powerful Qt UI, embedded scientific Python, AI assistance, and a flexible extension system into one cohesive platform.

🔧

Built-in Toolboxes

PyEditor (Python IDE with Jedi autocompletion, syntax highlighting, AST browser) and ImportData (drag-and-drop for DICOM/HDF5/MAT/image sequences).

  • Full Python IDE with Jedi autocomplete
  • AST-based function browser
  • Drag-and-drop data importer
  • Background loading with progress
🎨

Theme Engine

Dark and light themes via QSS stylesheets. Draggable toolbar, flexible dock system — fully customisable workspace layout.

📁

Workspace Persistence

Variables saved and loaded in the MED (HDF5-based) format. Auto-save, variable inspector, and DataDict dot-notation store.

Event-Driven Architecture

Pub/sub EventBus for decoupled cross-component communication and Qt signals for direct UI-thread-safe notifications.

🏗️

Component Architecture

Four-phase component initialization ensures a consistent, predictable startup lifecycle:

1 Core config_manager · logger
2 Business theme · workspace
3 Plugins toolboxes · extensions
4 UI window · docks · menus

Powerful built-in tools

Two production-ready toolboxes ship with MedICS out of the box.

📝

PyEditor

Full Python IDE inside MedICS

  • Jedi autocompletion & signature help
  • Syntax highlighting & error markers
  • AST function browser sidebar
  • Direct Jupyter console integration
  • Script management & run history
📂

ImportData

Universal medical image importer

  • Drag-and-drop image files & folders
  • DICOM series auto-detection
  • MAT, HDF5, PNG/JPEG support
  • Background loading with live progress
  • Automatic workspace variable binding

Intelligent assistance,
built right in

The AI Agent panel gives you a VS Code-style chat interface backed by any major LLM provider.

Supported LLM Providers

OpenAI
Gemini
Anthropic
Grok
GitHub Copilot
Ollama
Custom Endpoints
Streaming responses — token-by-token rendering at 60 fps
RAG — BM25 retrieval over curated docs & extension metadata
Conversation history — sessions saved & restored across restarts
Long memory — persistent user facts in MEMORY.md

Built-in Skills

run_in_console Execute code in the visible Jupyter console
get_workspace_info List workspace variable names and types
get_current_state App state: folder, file, theme, extensions
workspace Read/write workspace variables by name
long_memory Persist user facts to MEMORY.md
create_skill Scaffold and install a new agent skill
agent_memory In-session temporary key-value store

A growing ecosystem
of extensions

Official extensions from the MedICS team and community-built plugins — installed with a single pip command, auto-discovered on launch.

Loading extensions…

Up and running
in minutes

bash
pip install git+https://github.com/Yukun-Guo/MedICS.git
bash
git clone https://github.com/Yukun-Guo/MedICS.git
cd MedICS
python -m venv .venv
source .venv/bin/activate   # Windows: .venv\Scripts\activate
pip install -e .
bash
git clone https://github.com/Yukun-Guo/MedICS.git
cd MedICS
uv venv && uv pip install -e .
🐍

Python ≥ 3.11

Required runtime environment

🖼️

PySide6 6.8.2.1

Qt 6 bindings for the UI

🔬

Scientific Stack

NumPy, SciPy, scikit-image, pydicom, h5py — auto-installed

💻

Cross-platform

Windows · macOS · Linux

Verify installation

python -c "import medics; print(medics.__version__)"
medics --help

Start in seconds

From launching the GUI to building your first extension.

01

Launch the GUI

# Via command line
medics

# As a Python module
python -m medics
02

Basic Workflow

  1. Open a folderFile → Open Folder or click the folder button in the file explorer dock.
  2. Import data — Open the ImportData toolbox; drag-and-drop image files/folders or browse for a DICOM series.
  3. Analyze — Write and run Python scripts in PyEditor or use the embedded Jupyter console.
  4. AI assistance — Open the Chat dock; ask questions, run code via skills, or retrieve docs via RAG.
  5. Save workspaceFile → Save Workspace persists all variables to a .med (HDF5) file.
03

Scaffold an Extension

# Interactive scaffold wizard
medics --create-ext

# With a name
medics --create-ext medics-ext-my-tool
04

Build the App Wheel

# Protected Cython build (default)
python build_medics.py

# Upload to PyPI
python build_medics.py --upload

# Upload to TestPyPI
python build_medics.py --upload --test-pypi
05

Python Snippet — Load DICOM and Analyze

Run this in PyEditor or the embedded Jupyter console inside MedICS:

import medics
from medics.utils.fileIO import FileIO
import numpy as np

# Load a DICOM series from the current workspace folder
dicom_data = FileIO.load_dicom_series("/path/to/dicom/folder")

# Store in workspace for AI agent access
app.workspace["dicom"] = dicom_data

# Run a simple histogram analysis
pixel_array = dicom_data["pixel_array"]
hist, bins = np.histogram(pixel_array.flatten(), bins=256)
print(f"Image shape: {pixel_array.shape}")
print(f"HU range: [{pixel_array.min()}, {pixel_array.max()}]")

Version history

v0.0.5 Latest 2026
  • Protected Cython wheel builder (build_medics.py)
  • AutoGen multi-agent framework integration (autogen-agentchat ≥ 0.7.5)
  • Napari 0.6.6 & scikit-learn 1.7.2 upgrades
  • Numba JIT support with auto-detection in builder
  • Improved extension scaffold templates
v0.0.2 2025
  • Initial public release
  • PySide6 Qt 6 UI with dark/light themes
  • PyEditor & ImportData toolboxes
  • AI Agent panel with OpenAI & Ollama support
  • Extension system with pip entry-point discovery

Ready to start?

Install MedICS, build an extension, or contribute to the project.