veloxdev-create-workflow

Build node-graph workflow editors in .NET using VeloxDev packages and source generators.

37|12|Updated Jun 5, 2025
One-click install
npx skills add https://github.com/Axvser/VeloxDev --skill veloxdev-create-workflow-axvser
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: veloxdev-create-workflow
Source: https://github.com/Axvser/VeloxDev/tree/main/skills/veloxdev-create-workflow
Command: npx skills add https://github.com/Axvser/VeloxDev --skill veloxdev-create-workflow-axvser

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Building an interactive node-graph workflow editor in .NET requires correctly using VeloxDev's source-generated component model, undoable command stack, canvas coordinate math, and compiled execution engine — where small mistakes (a missing partial, a skipped InitializeWorkflow(), a mutated geometry getter) compile cleanly and then silently misbehave. ## Core Features & Use Cases - Model authoring: Create Tree, Node, Slot, and Link ViewModels with [WorkflowBuilder] attributes, declare slots with [VeloxProperty], and implement node behaviour in NodeHelper<T>.ReceiveAsync. - Graph execution: Compile a graph with CompilerViewModel and run it forward from a controller or backward as a reverse probe against a target node, with routers, joins, and sequential fan-out. - View scaffolding and customization: Generate the seven canvas view roles with dotnet new template packs for WPF, Avalonia, WinUI, MAUI, WinForms, Razor, or Jalium, and extend the library at its intended seams (custom link types, connection validation, variable port sets, new GUI adapters). - Use Case: Add VeloxDev.Core and VeloxDev.WPF to a WPF app, scaffold the views with dotnet new wpf-v-tree, write a node whose helper returns a computed payload, then compile and run the chain and verify dragging, connecting, and zooming at 40%. ## Quick Start Ask the AI to scaffold a VeloxDev workflow editor in your .NET project by adding the right NuGet packages, generating the canvas views with the dotnet new template pack, and writing a node ViewModel and helper that compute and return a value.

Frequently Asked Questions about veloxdev-create-workflow

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a workflow node in VeloxDev?

Annotate a partial class with [WorkflowBuilder.Node<THelper>], call InitializeWorkflow() from its constructor, and declare slots as [VeloxProperty] partial properties. Implement behaviour in a NodeHelper<T> subclass by overriding ReceiveAsync, which returns the node's output value.

How do I run a node graph with the VeloxDev execution engine?

Compile the graph with CompilerViewModel.CompileAsync using CompileRole.Root for forward runs or CompileRole.Terminal for reverse probes, then pass the compiled graph to RuntimeEngine.RunAsync with a RuntimeContext. Check TargetReached to confirm a reverse probe actually drove the target node.

Which GUI frameworks does VeloxDev support?

VeloxDev ships adapters for WPF, Avalonia, WinUI 3, .NET MAUI, Windows Forms, Blazor/Razor, and Jalium, each with a dotnet new item-template pack. The model and execution engine in VeloxDev.Core have zero UI dependencies, so headless use needs no adapter.

Why are my VeloxDev links invisible on the canvas?

Invisible links almost always mean the slots were never measured: a slot's Anchor stays (NaN, NaN, 0) until the GUI's slot layout behaviour writes it, and the render-ready gate suppresses unmeasured links. Check that the slot layout behaviour is wired before suspecting the link itself.

Why does my VeloxDev generator code do nothing after compiling?

The generators match on the partial modifier and emit no diagnostics, so a missing partial produces no generated file and no warning. Also verify InitializeWorkflow() is called from your constructor, since the generator does not emit one.

Is VeloxDev AOT-compatible or trim-safe?

No. VeloxDev.Core declares IsTrimmable=false and the animation path compiles expression trees at runtime, so it is not AOT- or trim-safe. The "Trimmed" folder names in the examples mean minimal demo, not trim configuration.