Agent skill

dotnet-workflow-foundation

Maintain or assess Workflow Foundation-based solutions on .NET Framework, especially where long-lived process logic or legacy designer artifacts still matter.

Stars 302
Forks 22

Install this agent skill to your Project

npx add-skill https://github.com/managedcode/dotnet-skills/tree/main/catalog/Frameworks/Workflow-Foundation/skills/dotnet-workflow-foundation

SKILL.md

Windows Workflow Foundation

Trigger On

  • working on WF activities, workflows, or designer-backed process logic
  • reviewing long-lived workflow state and persistence behavior
  • assessing whether to keep, isolate, or replace Workflow Foundation

Workflow

  1. Treat WF as legacy infrastructure and start by understanding what workflow behavior is still business-critical before proposing replacement.
  2. Separate workflow host concerns, activity logic, persistence, and integration points so risk is visible.
  3. Avoid half-migrations that leave workflow state and business rules split across two orchestration systems without ownership.
  4. If replacement is needed, define explicit equivalence for triggers, compensation, persistence, and audit expectations.
  5. Stabilize current behavior with targeted tests or scenario captures before changing designer-driven artifacts.
  6. Validate with representative long-running and failure scenarios, not just a single successful execution path.

Deliver

  • practical maintenance or migration guidance for WF
  • clear boundaries around host, workflow, and persistence responsibilities
  • risk-aware change plans for legacy process logic

Validate

  • business-critical workflow behavior is identified before change
  • migration work preserves state and audit expectations
  • designer artifacts are treated carefully

References

  • Migration Guidance - decision framework for keeping, replacing, or isolating WF; migration targets and steps; common pitfalls
  • Maintenance Patterns - host management, persistence, activity design, testing, and operational patterns for WF systems

Expand your agent's capabilities with these related and highly-rated skills.

managedcode/dotnet-skills

dotnet-project-setup

Create or reorganize .NET solutions with clean project boundaries, repeatable SDK settings, and a maintainable baseline for libraries, apps, tests, CI, and local development.

302 22
Explore
managedcode/dotnet-skills

csharp-scripts

Run single-file C# programs as scripts (file-based apps) for quick experimentation, prototyping, and concept testing. Use when the user wants to write and execute a small C# program without creating a full project.

302 22
Explore
managedcode/dotnet-skills

dotnet-pinvoke

Correctly call native (C/C++) libraries from .NET using P/Invoke and LibraryImport. Covers function signatures, string marshalling, memory lifetime, SafeHandle, and cross-platform patterns. USE FOR: writing new P/Invoke or LibraryImport declarations, reviewing or debugging existing native interop code, wrapping a C or C++ library for use in .NET, diagnosing crashes, memory leaks, or corruption at the managed/native boundary. DO NOT USE FOR: COM interop, C++/CLI mixed-mode assemblies, or pure managed code with no native dependencies.

302 22
Explore
managedcode/dotnet-skills

nuget-trusted-publishing

Set up NuGet trusted publishing (OIDC) on a GitHub Actions repo — replaces long-lived API keys with short-lived tokens. USE FOR: trusted publishing, NuGet OIDC, keyless NuGet publish, migrate from NuGet API key, NuGet/login, secure NuGet publishing. DO NOT USE FOR: publishing to private feeds or Azure Artifacts (OIDC is nuget.org only). INVOKES: shell (powershell or bash), edit, create, ask_user for guided repo setup.

302 22
Explore
managedcode/dotnet-skills

dotnet-legacy-aspnet

Maintain classic ASP.NET applications on .NET Framework, including Web Forms, older MVC, and legacy hosting patterns, while planning realistic modernization boundaries.

302 22
Explore
managedcode/dotnet-skills

dotnet-code-review

Review .NET changes for bugs, regressions, architectural drift, missing tests, incorrect async or disposal behavior, and platform-specific pitfalls before you approve or merge them.

302 22
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results