sflow-goal
Create personal outcomes or operate repository-owned governed Goal Executions.
SKILL.mdplugin/skills/sflow-goal/SKILL.md
GitHubGoals — outcomes above governed work
<!-- 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: 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.
A Goal has two modes. GOL-* is personal advisory state. GEX-* is repository-owned governed
execution. Neither replaces a linked Story or Initiative lifecycle.
- Start with
singularity-flow goal list --json; durable state, not chat memory, is authoritative. With no action: when it reportsactiveGoalId, show that Goal and runsingularity-flow goal next [GOAL-ID] --json; otherwise relay its returnednext. - For create, collect an outcome and observable success. Never invent Work IDs or repositories. Preview, use
ask_user, then run:singularity-flow goal create "<OUTCOME>" --success "<CRITERION>" [--success "<CRITERION>"] [--work-id <ID> --kind story|initiative --repository <ID>] --json. - For use/link/unlink, show the Goal, require explicit Goal/Work selection, preview, and use
ask_user. Linking never modifies governed work. - For complete, show criteria and live links. Stop for active/unavailable links. Call completion acknowledgement—not proof—then require the exact ID.
- For abandon, require a reason and exact ID; say linked work is untouched before
ask_user. - Start governed work with read-only
singularity-flow goal propose "<OUTCOME>" --success "<CRITERION>" --json; it creates no branch or plan. - Promotion creates a new identity. Show
singularity-flow goal show <GOL-ID> --json, list copied fields, useask_user, thensingularity-flow goal govern <GOL-ID> --json. Preserve the personal Goal. - For
GEX-*, usesingularity-flow goal inspect <GEX-ID> --json. Usesingularity-flow goal impact <GEX-ID> --jsonfor read-only scope. Compile withsingularity-flow goal plan <GEX-ID> --json; show generation, steps, stops, write set, and fullplanSha256. Useask_userbefore exact-hash approval. - Run one step with
singularity-flow goal run-next <GEX-ID> --json. Follow its Story/Initiative skill and gates. Never turnsingularity-flow goal run-until-blockedinto a loop; bounded autonomy is closed. singularity-flow goal verify <GEX-ID> --jsonuses typed oracles. Preserveverified,mixed,acknowledged, andunassessed; terminal work does not prove human judgment.- Inspect before pause, resume, change, trace, or governed abandon. Change is read-only. Abandon needs exact
GEX-*ID and reason and leaves linked work untouched. - If publication retains a local Goal commit, show the exact recovery and use
singularity-flow goal sync <GEX-ID>only after remote access is restored. - Preserve refusals/actions and re-read after mutations.
Never claim that plan approval approved a Story, that navigation executed a Story transition, or that a human judgment was deterministic proof. Never invent a plan hash, Goal ID, oracle result, Work ID, repository, authority, or confirmation.