agentui


Nameagentui JSON
Version 0.1.1 PyPI version JSON
download
home_pageNone
SummaryVisual workflow builder for computer vision
upload_time2025-10-14 20:44:01
maintainerNone
docs_urlNone
authorNone
requires_python>=3.9
licenseMIT
keywords computer-vision workflow visual-programming no-code object-detection image-processing yolo detectron2 segmentation depth-estimation annotation tracking
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # AgentUI

Visual workflow builder for computer vision and AI. Create image processing pipelines by connecting tools in a drag-and-drop interface, then export and run them programmatically.

**Part of the [Datamarkin](https://datamarkin.com) ecosystem** - Built on [PixelFlow](https://pixelflow.datamarkin.com) and [Mozo](https://mozo.datamarkin.com) for production-ready computer vision.

## What It Is

AgentUI is a web-first tool builder that lets you:
- **Build visually**: Drag and drop tools on a canvas to create workflows
- **Connect tools**: Wire outputs to inputs with type-safe connections
- **Execute**: Run workflows in the browser and see results instantly
- **Export**: Save workflows as JSON for version control and programmatic execution
- **Integrate**: Use as a Python library in your own applications

Think of it as a visual programming environment for computer vision tasks.

## Quick Start

```bash
# Install
pip install agentui

# Start the server
python -m agentui.api.server

# Open http://localhost:8000 in your browser
```

That's it. The UI is already bundled - no separate build step needed.

## What You Can Build

### ML-Powered Tools
- **Object Detection**: Detect objects using YOLOv8 or Detectron2 (80 COCO classes)
- **Instance Segmentation**: Get pixel-level masks for detected objects
- **Depth Estimation**: Generate depth maps from single images (Depth Anything)

### Image Processing
- **Transforms**: Resize, rotate, flip, crop images
- **Adjustments**: Brightness, contrast, sharpening
- **Effects**: Blur, edge detection, color analysis
- **Blending**: Combine multiple images

### Annotation & Privacy
- **Draw Detections**: Bounding boxes, labels, masks, polygons
- **Privacy Protection**: Blur or pixelate regions automatically
- **Object Tracking**: Track objects across video frames
- **Zone Analysis**: Monitor object presence in defined areas

### Input/Output
- **Load**: Images from files or base64 data
- **Save**: Export processed images to disk
- **Web Display**: Convert images to base64 for browser display

## Usage

### Web Interface

1. **Add tools**: Drag tools from the left palette onto the canvas
2. **Connect**: Click and drag from output ports to input ports
3. **Configure**: Select a tool to edit its parameters in the right panel
4. **Execute**: Click "Run Workflow" to process
5. **View Results**: See outputs in the results panel
6. **Export**: Save your workflow as JSON

### Programmatic Usage

```python
from agentui.core.workflow import Workflow
from agentui.core.registry import registry

# Load a workflow created in the UI
with open('my_workflow.json') as f:
    workflow_json = f.read()

# Execute it
workflow = Workflow.from_json(workflow_json, registry.get_all_types())
results = workflow.execute()

# Access results from terminal tools (tools with no outgoing connections)
for tool_id, result in results.items():
    if result['is_terminal']:
        print(f"Tool {tool_id} outputs:")
        for output_name, output_data in result['outputs'].items():
            print(f"  {output_name}: {type(output_data)}")
```

### Creating Workflows in Code

```python
from agentui.core.workflow import Workflow
from agentui.core.node import Connection
from agentui.nodes.base_nodes import MediaInputNode, ResizeNode, SaveImageNode

# Create tools
input_tool = MediaInputNode(path='input.jpg')
resize_tool = ResizeNode(width=800, height=600)
save_tool = SaveImageNode(path='output.jpg')

# Build workflow
workflow = Workflow()
workflow.add_node(input_tool)
workflow.add_node(resize_tool)
workflow.add_node(save_tool)

# Connect tools
workflow.add_connection(Connection(input_tool.id, "image", resize_tool.id, "image"))
workflow.add_connection(Connection(resize_tool.id, "image", save_tool.id, "image"))

# Execute
results = workflow.execute()
```

## The Datamarkin Ecosystem

AgentUI integrates two powerful libraries:

- **[PixelFlow](https://pixelflow.datamarkin.com)**: Computer vision primitives (annotation, tracking, spatial analysis)
- **[Mozo](https://mozo.datamarkin.com)**: Universal model serving (object detection, segmentation, depth estimation)

These libraries are maintained by the same team and designed to work together seamlessly.

## Development

### UI Development

Only needed if you're modifying the UI:

```bash
cd ui
npm install
npm run dev  # Development server with hot reload at http://localhost:5173

# When done
npm run build  # Builds to ../agentui/static/
```

### Adding Custom Tools

Tools are Python classes that inherit from `Node`:

```python
from agentui.core.node import Node, NodeOutput, Port, PortType

class MyCustomTool(Node):
    @property
    def node_type(self) -> str:
        return "MyCustomTool"

    @property
    def input_ports(self) -> Dict[str, Port]:
        return {"image": Port("image", PortType.IMAGE, "Input image")}

    @property
    def output_ports(self) -> Dict[str, Port]:
        return {"image": Port("image", PortType.IMAGE, "Output image")}

    def process(self) -> bool:
        image = self.inputs["image"].data
        # Do something with the image
        self.outputs["image"] = NodeOutput(processed_image, PortType.IMAGE)
        return True
```

Tools are automatically discovered by the registry. See `CLAUDE.md` for detailed development guidance.

## Installation for Development

```bash
git clone <repository-url>
cd agentui

# Python setup
python -m venv venv
source venv/bin/activate  # Windows: venv\Scripts\activate
pip install -e .

# Start server
python -m agentui.api.server

# Optional: UI development (only if modifying Svelte code)
cd ui
npm install
npm run build
```

## Roadmap

Future additions will focus on:
- Additional ML models (OCR, classification, keypoint detection)
- Vision-language models (GPT-4V, Claude, Gemini, Qwen-VL)
- Cloud storage integrations (S3, GCS, Azure)
- Advanced tracking and analytics
- Real-time streaming workflows


## Documentation

- **[CLAUDE.md](CLAUDE.md)**: Complete developer guide and architecture documentation
- **[INSTALLATION.md](INSTALLATION.md)**: Detailed installation and troubleshooting
- **[ARCHITECTURE.md](ARCHITECTURE.md)**: System design and component details

## Requirements

- Python 3.9+
- Optional: Node.js 18+ (only for UI development)

## License

MIT License - see LICENSE file for details

## Contributing

Contributions welcome! Please check `CLAUDE.md` for development guidelines and architecture overview.

---

**Built by [Datamarkin](https://datamarkin.com)** - Making computer vision accessible through visual workflows.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "agentui",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": null,
    "keywords": "computer-vision, workflow, visual-programming, no-code, object-detection, image-processing, yolo, detectron2, segmentation, depth-estimation, annotation, tracking",
    "author": null,
    "author_email": "Emrah NAZIF <emrah@datamarkin.com>, Datamarkin <support@datamarkin.com>",
    "download_url": "https://files.pythonhosted.org/packages/00/a9/53cd99d377de5f6e85c70e0e5d8cf1a9b96a95b72c6fb199cf18ad051640/agentui-0.1.1.tar.gz",
    "platform": null,
    "description": "# AgentUI\n\nVisual workflow builder for computer vision and AI. Create image processing pipelines by connecting tools in a drag-and-drop interface, then export and run them programmatically.\n\n**Part of the [Datamarkin](https://datamarkin.com) ecosystem** - Built on [PixelFlow](https://pixelflow.datamarkin.com) and [Mozo](https://mozo.datamarkin.com) for production-ready computer vision.\n\n## What It Is\n\nAgentUI is a web-first tool builder that lets you:\n- **Build visually**: Drag and drop tools on a canvas to create workflows\n- **Connect tools**: Wire outputs to inputs with type-safe connections\n- **Execute**: Run workflows in the browser and see results instantly\n- **Export**: Save workflows as JSON for version control and programmatic execution\n- **Integrate**: Use as a Python library in your own applications\n\nThink of it as a visual programming environment for computer vision tasks.\n\n## Quick Start\n\n```bash\n# Install\npip install agentui\n\n# Start the server\npython -m agentui.api.server\n\n# Open http://localhost:8000 in your browser\n```\n\nThat's it. The UI is already bundled - no separate build step needed.\n\n## What You Can Build\n\n### ML-Powered Tools\n- **Object Detection**: Detect objects using YOLOv8 or Detectron2 (80 COCO classes)\n- **Instance Segmentation**: Get pixel-level masks for detected objects\n- **Depth Estimation**: Generate depth maps from single images (Depth Anything)\n\n### Image Processing\n- **Transforms**: Resize, rotate, flip, crop images\n- **Adjustments**: Brightness, contrast, sharpening\n- **Effects**: Blur, edge detection, color analysis\n- **Blending**: Combine multiple images\n\n### Annotation & Privacy\n- **Draw Detections**: Bounding boxes, labels, masks, polygons\n- **Privacy Protection**: Blur or pixelate regions automatically\n- **Object Tracking**: Track objects across video frames\n- **Zone Analysis**: Monitor object presence in defined areas\n\n### Input/Output\n- **Load**: Images from files or base64 data\n- **Save**: Export processed images to disk\n- **Web Display**: Convert images to base64 for browser display\n\n## Usage\n\n### Web Interface\n\n1. **Add tools**: Drag tools from the left palette onto the canvas\n2. **Connect**: Click and drag from output ports to input ports\n3. **Configure**: Select a tool to edit its parameters in the right panel\n4. **Execute**: Click \"Run Workflow\" to process\n5. **View Results**: See outputs in the results panel\n6. **Export**: Save your workflow as JSON\n\n### Programmatic Usage\n\n```python\nfrom agentui.core.workflow import Workflow\nfrom agentui.core.registry import registry\n\n# Load a workflow created in the UI\nwith open('my_workflow.json') as f:\n    workflow_json = f.read()\n\n# Execute it\nworkflow = Workflow.from_json(workflow_json, registry.get_all_types())\nresults = workflow.execute()\n\n# Access results from terminal tools (tools with no outgoing connections)\nfor tool_id, result in results.items():\n    if result['is_terminal']:\n        print(f\"Tool {tool_id} outputs:\")\n        for output_name, output_data in result['outputs'].items():\n            print(f\"  {output_name}: {type(output_data)}\")\n```\n\n### Creating Workflows in Code\n\n```python\nfrom agentui.core.workflow import Workflow\nfrom agentui.core.node import Connection\nfrom agentui.nodes.base_nodes import MediaInputNode, ResizeNode, SaveImageNode\n\n# Create tools\ninput_tool = MediaInputNode(path='input.jpg')\nresize_tool = ResizeNode(width=800, height=600)\nsave_tool = SaveImageNode(path='output.jpg')\n\n# Build workflow\nworkflow = Workflow()\nworkflow.add_node(input_tool)\nworkflow.add_node(resize_tool)\nworkflow.add_node(save_tool)\n\n# Connect tools\nworkflow.add_connection(Connection(input_tool.id, \"image\", resize_tool.id, \"image\"))\nworkflow.add_connection(Connection(resize_tool.id, \"image\", save_tool.id, \"image\"))\n\n# Execute\nresults = workflow.execute()\n```\n\n## The Datamarkin Ecosystem\n\nAgentUI integrates two powerful libraries:\n\n- **[PixelFlow](https://pixelflow.datamarkin.com)**: Computer vision primitives (annotation, tracking, spatial analysis)\n- **[Mozo](https://mozo.datamarkin.com)**: Universal model serving (object detection, segmentation, depth estimation)\n\nThese libraries are maintained by the same team and designed to work together seamlessly.\n\n## Development\n\n### UI Development\n\nOnly needed if you're modifying the UI:\n\n```bash\ncd ui\nnpm install\nnpm run dev  # Development server with hot reload at http://localhost:5173\n\n# When done\nnpm run build  # Builds to ../agentui/static/\n```\n\n### Adding Custom Tools\n\nTools are Python classes that inherit from `Node`:\n\n```python\nfrom agentui.core.node import Node, NodeOutput, Port, PortType\n\nclass MyCustomTool(Node):\n    @property\n    def node_type(self) -> str:\n        return \"MyCustomTool\"\n\n    @property\n    def input_ports(self) -> Dict[str, Port]:\n        return {\"image\": Port(\"image\", PortType.IMAGE, \"Input image\")}\n\n    @property\n    def output_ports(self) -> Dict[str, Port]:\n        return {\"image\": Port(\"image\", PortType.IMAGE, \"Output image\")}\n\n    def process(self) -> bool:\n        image = self.inputs[\"image\"].data\n        # Do something with the image\n        self.outputs[\"image\"] = NodeOutput(processed_image, PortType.IMAGE)\n        return True\n```\n\nTools are automatically discovered by the registry. See `CLAUDE.md` for detailed development guidance.\n\n## Installation for Development\n\n```bash\ngit clone <repository-url>\ncd agentui\n\n# Python setup\npython -m venv venv\nsource venv/bin/activate  # Windows: venv\\Scripts\\activate\npip install -e .\n\n# Start server\npython -m agentui.api.server\n\n# Optional: UI development (only if modifying Svelte code)\ncd ui\nnpm install\nnpm run build\n```\n\n## Roadmap\n\nFuture additions will focus on:\n- Additional ML models (OCR, classification, keypoint detection)\n- Vision-language models (GPT-4V, Claude, Gemini, Qwen-VL)\n- Cloud storage integrations (S3, GCS, Azure)\n- Advanced tracking and analytics\n- Real-time streaming workflows\n\n\n## Documentation\n\n- **[CLAUDE.md](CLAUDE.md)**: Complete developer guide and architecture documentation\n- **[INSTALLATION.md](INSTALLATION.md)**: Detailed installation and troubleshooting\n- **[ARCHITECTURE.md](ARCHITECTURE.md)**: System design and component details\n\n## Requirements\n\n- Python 3.9+\n- Optional: Node.js 18+ (only for UI development)\n\n## License\n\nMIT License - see LICENSE file for details\n\n## Contributing\n\nContributions welcome! Please check `CLAUDE.md` for development guidelines and architecture overview.\n\n---\n\n**Built by [Datamarkin](https://datamarkin.com)** - Making computer vision accessible through visual workflows.\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Visual workflow builder for computer vision",
    "version": "0.1.1",
    "project_urls": {
        "Documentation": "https://github.com/datamarkin/agentui#readme",
        "Homepage": "https://datamarkin.com",
        "Issues": "https://github.com/datamarkin/agentui/issues",
        "Repository": "https://github.com/datamarkin/agentui"
    },
    "split_keywords": [
        "computer-vision",
        " workflow",
        " visual-programming",
        " no-code",
        " object-detection",
        " image-processing",
        " yolo",
        " detectron2",
        " segmentation",
        " depth-estimation",
        " annotation",
        " tracking"
    ],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "1b7281ffa79b052c28bfc39ce2337c1d4d73acd4b931e26da1e6bd40050d0933",
                "md5": "b7f8064454de46fc332f0240a36953af",
                "sha256": "6d36302ee56b4223ca9cff5501363364f45c21ab9089d682c4940edd4ffca094"
            },
            "downloads": -1,
            "filename": "agentui-0.1.1-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "b7f8064454de46fc332f0240a36953af",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 186165,
            "upload_time": "2025-10-14T20:44:00",
            "upload_time_iso_8601": "2025-10-14T20:44:00.235197Z",
            "url": "https://files.pythonhosted.org/packages/1b/72/81ffa79b052c28bfc39ce2337c1d4d73acd4b931e26da1e6bd40050d0933/agentui-0.1.1-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "00a953cd99d377de5f6e85c70e0e5d8cf1a9b96a95b72c6fb199cf18ad051640",
                "md5": "178089c7c78b0e99eaced9090add7cfa",
                "sha256": "4fde0739f32bc721b41116ca8cc7a1051997dc7075fd5aa287bcdca43f771900"
            },
            "downloads": -1,
            "filename": "agentui-0.1.1.tar.gz",
            "has_sig": false,
            "md5_digest": "178089c7c78b0e99eaced9090add7cfa",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 185103,
            "upload_time": "2025-10-14T20:44:01",
            "upload_time_iso_8601": "2025-10-14T20:44:01.768965Z",
            "url": "https://files.pythonhosted.org/packages/00/a9/53cd99d377de5f6e85c70e0e5d8cf1a9b96a95b72c6fb199cf18ad051640/agentui-0.1.1.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-10-14 20:44:01",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "datamarkin",
    "github_project": "agentui#readme",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "agentui"
}
        
Elapsed time: 3.32190s