Workflow

Introduction

Currently, the Workflow mainly targets AI image generation. To reduce the learning curve for users, we chose to support ComfyUI's interaction style and be compatible with a large number of ComfyUI custom nodes. In addition, we are also working hard to implement other LLM-related (such as GPT) and tools (such as code block) Widgets.

The usage of Workflow is very similar to ComfyUI. We are compatible with a large number of ComfyUI custom nodes, but we currently do not support users directly downloading and running ComfyUI custom nodes.

We currently do not support users directly downloading and running ComfyUI custom nodes. If you really need some certain custom nodes, please contact us, with your reasons, we will evaluate your request and support at our best effort. If the custom nodes you need are not related to AI models but are plugins that optimize the interaction experience or modify the UI, support may not be very timely.

ComfyUI-like Interaction

Compared to the standard ComfyUI, we mainly added the start node and end node. These two nodes are mainly to facilitate packaging the entire workflow into a single node for use by the App Builder. For documentation conciseness, we will not detail the ComfyUI tutorial here, please find ComfyUI tutorials by yourself, there are plenty!

If you do not intend to package the workflow into a widget for the App Builder, you can ignore the start and end nodes and edit the image flow in the ComfyUI way.

Importing ComfyUI Workflow (beta)

Currently, we only support ComfyUI workflows exported in JSON format.

After importing, some ComfyUI nodes may not be supported.

Since these unsupported nodes cannot run when the ShellAgent is deployed to the MyShell main site, we currently do not support one-click download of missing nodes, but will be supported soon.

We suggest:

  1. Replace the node with another node that has the same function (if available).

  2. Contact us to let ShellAgent and MyShell support the node simultaneously. It may take some time, so only do it when such node is very necessary.

For missing Models, you can download them in the Manager. See Model and Widget Management

Start Node

The start node includes:

  • Input: When you want to run the workflow as a single widget, you can specify which variables need to be input when calling the workflow widget through Input. Each input needs to specify its name and type, and you can add descriptions and validation items in more settings.

  • Context: If there are some primitive variables that are used repeatedly within the workflow, you can choose to collect them all into the context. Each context variable needs to specify its name (including type) and its value.

Using Input/Context Variables

For example, if you want to support users uploading images in Load Image, you can do this:

  • Change the image of the Load Image widget to the widget's input.

  • Connect the image in the start node's Input.

Each variable has a type, and currently our variables support six types:

  • text

  • image

  • audio

  • video

  • text_file

  • file

These types affect what the form item is when users input. For example, text is a text input box, and the other five are file uploads (different types support different file extensions and sizes).

These variables are essentially treated as strings when associated. text is a text string, and the other five are paths to images/videos/files. Therefore, when using them, you need to use Load Image or Text Encode to input them into the image generation model.

End Node

The Output of the end node is similar to the Input of the start node, indicating what the final output result of the workflow widget should be.

The default type of Output is unknown. Because its type depends on the associated input variables, and many input variables are arrays, objects, or other composite types, we cannot represent them well at the moment. When the App Builder calls the output of this Workflow, you need to pay attention to the output of composite types.

Run

Run the workflow; after filling in the specified parameters, you can execute it.

Version Management

We also support version management of the workflow. Click publish to enter a name to specify the corresponding version. You can return to edit this version later.

Model and Widget Management

Through Manager, you can manage local Models and Widgets.

For models not listed in the list, you can customize the installation through Install from Link in the upper right corner.

If you already have many downloaded models locally, you can adjust the model location by setting the settings.

Last updated