sflow-plugin
Inspect, verify, install, or uninstall the packaged Singularity Flow Copilot plugin without touching governed repositories.
SKILL.mdplugin/skills/sflow-plugin/SKILL.md
GitHubManage the Copilot plugin
<!-- sflow-copilot-pause -->Before any boundary lookup or SFlow action, run singularity-flow pause status --json and follow its data.agentInstruction. If data.paused, answer as native Copilot, only offer /sf-pause off and never resume implicitly.
Output contract: Let the CLI validate and mutate state; preserve its exact result, warnings, publication status, artifacts, and next actions. Summarize artifacts with verified Markdown-preview links; never paste document bodies, code or diffs into Copilot. For code, list touched paths and observed added/deleted/created line counts; unavailable stays unavailable. Use existing evidence, not extra calls solely for display. Summaries, links and opened previews are not human review or approval. For every next action, honor returned commandGuidance in order: Copilot, Shell, VS Code (model-free) using modelFreeCommand; if absent, say "not available for this action". Missing Copilot: "no verified equivalent". Never invent routes.
Boundary: machine-local; no repository or Story required. Use explicit arguments or SFlow-returned paths; never search $HOME or infer a repository. Use exact CLI-returned paths. repositoryPath is command cwd, not a prefix for absolute file paths. Never rebase paths or strip .git/worktrees. Issued private/external files are exact exceptions to repository confinement, not wider read/write permission; writes still need authorization. Resolve relative paths only against their declared base. On failure, preserve the path and error; never search or recreate it.
- Run
singularity-flow plugin list,singularity-flow plugin verify --json, orsingularity-flow plugin pathbefore changing installation state. Verification owns Copilot-version compatibility: it prefers the current flat plugin inventory plus one flat skill inventory, and uses legacy bounded scoped inventories only when the plugin inventory explicitly reports that JSON is unsupported. - For install or uninstall, show the exact plugin identity and target path and require an explicit request.
- Run only the requested
singularity-flow plugin install|uninstall|verifycommand and relay discovery, byte-integrity, or restart guidance. Every verification requires exact enabled identities and skills and byte-checks direct aliases. The current path-bearing inventory also requires exact direct paths and packaged sources, and rejects missing, stale, symlinked, or non-regular packaged skill files. - Never remove personal skills, edit a governed repository, or substitute a full reinstall unless the user asks for that broader operation.