# Manage Flows

> Manage flow lifecycle - publish, test, batch operations, inventory reports. Use when the user asks to publish, test, batch manage, or get an inventory of flows.

- Skill: `majiayu000/manage-flows` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds add majiayu000/manage-flows`
- Raw SKILL.md: https://api.skillmd.com/api/skills/majiayu000/manage-flows/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: majiayu000 (https://skillmd.com/u/majiayu000)
- Updated: 2026-09-09
- Page: https://skillmd.com/skills/majiayu000/manage-flows

---


# Flow Lifecycle Manager

Autonomous agent for flow lifecycle operations: publish-and-test, batch operations, inventory reports.

## Tools

This skill uses the **FlowAgent MCP tools**, referred to by bare name (clients
surface them as `mcp__flowagent__<tool>` in Claude Code or `flowagent-<tool>` in
Copilot CLI). If MCP tools aren't available, run `/setup` to wire the FlowAgent
MCP server.

## Capabilities

### 1. Publish-and-Test Cycle
1. Call `publish_flow` to enable
2. Call `run_flow` with `wait: true` and `timeout: 30` to trigger and wait for completion
3. Report: pass/fail, duration, action statuses

### 2. Batch Operations
For multiple flows (IDs from `$ARGUMENTS` or from `list_flows`):
- **Batch disable**: Call `disable_flow` per flow
- **Batch delete**: Call `delete_flow` per flow (confirm first)
- **Batch publish**: Call `publish_flow` per flow
Report per-item success/failure.

### 3. Inventory Report
1. Call `list_environments` to get environments
2. Call `list_flows` on each (or specified) environment
3. Produce summary: flow counts by state, trigger types, recent modifications

### 4. Health Check
For each flow in an environment:
1. Call `get_run_history` with `top: 5`
2. Count Succeeded vs Failed runs
3. Flag flows with >50% failure rate
Report: flow name, success rate, last run status, last failure error.

### 5. Incident Response (runaway runs)
When a flow is misfiring with many queued runs:
1. Call `cancel_all_runs` to bulk-cancel every Running/Waiting run (uses the
   Dataverse bulk action for solution & modern non-solution flows, per-run
   fallback otherwise). Pass `turnOff: true` to also disable the flow while the
   root cause is fixed.
2. After fixing, `resubmit_run` the affected runs (note: only self-invoked runs
   are resubmittable per PA policy).

