sflow-inbox
Show what is waiting for your approval.
SKILL.mdplugin/skills/sflow-inbox/SKILL.md
GitHubOpen the pending approval inbox
<!-- 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: Collect every required choice explicitly; never infer or preselect; preserve errors, 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: no Story required; cwd=opened Git root or verified repositoryPath from singularity-flow workspace current --json; refuse if neither resolves; never search $HOME/parents. 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 inbox --json. This fetches the configured Git remote and reads committed work-item state without checking out every branch. - If
itemsis empty, report that the remote approval inbox of the returnedrepositoryPathis clear, not the whole workspace: it reads one repository. In a multi-repository workspace offersingularity-flow inbox --workspace <WORKSPACE-ID> --repository <ID> --jsonfor each other repository (singularity-flow workspace status --jsonlists them). Do not infer that uncommitted or unpublished work is ready for review. - Show every pending item with its work/Jira ID, title, phase, generation, approval count, waiting time, human authority groups, artifact path, remote commit, and self-approval warning.
- Use Copilot's
ask_userfacility to let the contributor select one exact work/Jira ID. Never infer or preselect an item. - Run
singularity-flow session attach <WORK-ID> --jsononce for that selection, then use its exactrepositoryPath. It may create a tracking branch and fast-forward; never merge, rebase, reset, stash, or discard work. The phase agent does not change human authority. Do not attach again through/sf-session. - Run
singularity-flow phase show <PHASE> --for-agent --json; retain currentreviewBindinganddisplayBinding. Summarize the packet and list each artifact/brief's identity, generation/hash and verified Markdown-preview link; binary uses path/metadata. Never reproduce bodies/code/diffs. Tool output or summaries are not review; the human must review complete linked documents before approval. - Show current
reviewBinding, identity/authority, checks and warnings. Document reuse never reuses approval consent. Mention/sf-documentsfor supporting evidence. - Stop. Offer
/sf-approve <PHASE-ID> --work-id <WORK-ID>with actual IDs and/sf-reject; never decide or approve automatically.