[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JK40NH43EEJ49DXNDEFEY3":3,"skill-same:01M6JK40NH43EEJ49DXNDEFEY3":90},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":60,"commitSha":61,"skillDirectory":62,"forksCount":63,"repositoryHtmlUrl":64,"repositoryHomepageUrl":6,"ownerHtmlUrl":65,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":66,"install":67,"resources":79},"01M6JK40NH43EEJ49DXNDEFEY3","close-shop",null,"EXPERIMENTAL. After-service retro: review how recent stages and skills executed, identify systemic friction patterns, draft targeted improvement PRs against the plugin. Bookends \u002Fsetup-shop.","steve-piece\u002Fbytheslice","steve-piece","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F190656564?v=4","01M6JK3M1VYSHFKN1PW540DV5H","Steven Light","01M6JK3MDHEWS5WHC4H0RNKTD9",0,"MIT","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fclose-shop\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"close shop","close","shop","patterns","prs","improvement","true","debrief","end","service","draft","review","friction","improve","how","retro","pipeline","plugin","setup","workflow","2026-11-10 10:12:30",false,"---\nname: close-shop\ndescription: \"EXPERIMENTAL. After-service retro: review how recent stages and skills executed, identify systemic friction patterns, draft targeted improvement PRs against the plugin. Bookends \u002Fsetup-shop.\"\nuser-invocable: true\nexperimental: true\ntriggers: [\"\u002Fbytheslice:close-shop\", \"\u002Fclose-shop\", \"close the shop\", \"shift retro\", \"end-of-day debrief\", \"\u002Fbytheslice:review-pipeline\", \"\u002Freview-pipeline\", \"review the workflow\", \"improve the plugin\"]\n---\n\n\u003C!-- skills\u002Fclose-shop\u002FSKILL.md -->\n\u003C!-- EXPERIMENTAL. Pizza-shop framing: bookends \u002Fsetup-shop: once the day's service is done, sit down and debrief the shift. Reviews how recent stages and skills executed, identifies systemic friction patterns, and drafts targeted improvement PRs against the plugin repository. -->\n\n# Close the Shop: After-Service Retro\n\n> **EXPERIMENTAL.** This skill is under active development. All PRs it generates open as drafts and require human review before merge. The skill never auto-merges and never modifies itself.\n\nByTheSlice skill that reviews how recent stages and skills executed, identifies systemic friction patterns, and drafts targeted improvement PRs against the plugin repository. Use this after completing a project or a significant batch of stages to close the feedback loop on the workflow itself.\n\n---\n\n## Mode detection\n\n`\u002Fclose-shop` is **always sequential**: it reviews recent execution history (commits, PRs, stage rows) and drafts plugin-improvement PRs. Requires either a recent ByTheSlice run (master checklist with Completed stages) or an explicit pointer to an existing project. Standalone invocation against a fresh repo is a no-op; there's nothing to debrief.\n\n## A. Purpose\n\n- Analyze execution logs, git history, PR records, and HITL escalation data to detect patterns where the plugin is causing repeated friction\n- Propose concrete changes (skill prompts, agent prompts, reference files, bug fixes, or new files)\n- Draft one or more PRs to the plugin repo for human review and merge\n\nThis skill does not modify production code in your project. It only targets the plugin repo at `~\u002Fbytheslice` (or `BYTHESLICE_PLUGIN_PATH` if set).\n\n---\n\n## B. Pre-requisites\n\nBefore invoking this skill, verify:\n\n1. **Plugin path**: The plugin must exist at one of:\n   - `~\u002Fbytheslice` (expands to `\u002FUsers\u002F\u003Cusername>\u002Fbytheslice` on macOS)\n   - Absolute path set in the `BYTHESLICE_PLUGIN_PATH` environment variable (checked first if set)\n   - The skill expands `~` on macOS using the shell; if `BYTHESLICE_PLUGIN_PATH` is set in the environment, that value takes precedence\n\n2. **`gh` CLI**: Must be installed and authenticated against the plugin repo (`steve-piece\u002Fbytheslice`). Run `gh auth status` to verify before proceeding.\n\n3. **Invocation**: User invokes via `\u002Fclose-shop`. Natural-language triggers: \"review the workflow\", \"improve the plugin\".\n\n---\n\n## C. Flow\n\n```mermaid\nflowchart LR\n  Invoke[\"\u002Fclose-shop\"] --> Scope[\"Ask: review last N stages,\u003Cbr\u002F>last project, or specific skill?\"]\n  Scope --> Read[\"Read stage execution logs\u003Cbr\u002F>(docs\u002Fplans\u002F, git log,\u003Cbr\u002F>recent PRs)\"]\n  Read --> Analyze[\"retrospective-reviewer (opus)\u003Cbr\u002F>identifies friction patterns\"]\n  Analyze --> Draft[\"Draft proposal:\u003Cbr\u002F>- skill change\u003Cbr\u002F>- agent prompt change\u003Cbr\u002F>- new reference file\u003Cbr\u002F>- bug fix\"]\n  Draft --> Confirm[\"Surface to user:\u003Cbr\u002F>'these are the proposed changes,\u003Cbr\u002F>open PR?'\"]\n  Confirm -->|yes| PR[\"cd ~\u002Fbytheslice\u003Cbr\u002F>+ gh PR creation\"]\n  Confirm -->|no| Done[\"log proposals locally\"]\n```\n\n### Step 1: Determine scope\n\nAsk the user (via `ask_user_input_v0`) which scope to review.\n\n**Always provide a recommended answer in available options.**\n\n\n> \"Which scope should I review for this retrospective?\"\n> single_select:\n> - \"Last N stages of the current project\", prompts for N\n> - \"Last completed project (all stages)\"\n> - \"Specific skill or agent\", prompts for skill name\n\n### Step 2: Read execution data\n\nCollect the following for the chosen scope:\n\n| Source | What to read |\n| --- | --- |\n| `docs\u002Fplans\u002F` in the project | Stage files, master checklist, completion criteria |\n| `git log` (project repo) | Commit history, timestamps, author attribution |\n| Recent PRs (project repo) | PR titles, descriptions, review comments via `gh pr list` |\n| HITL escalation log | Any `needs_human: true` returns captured in stage output |\n| Pass ledger (when the Pass mod ran) | `node \"${CLAUDE_PLUGIN_ROOT}\u002Fscripts\u002Fledger-summary.js\" --root \u003Cproject> --format json`: per slice fix loops, warnings by code, stalls, HITL wait and cost. It prints `{ \"pies\": [] }` without a ledger; then say the ledger metrics are absent |\n\nPass all collected data to `bytheslice:retrospective-reviewer`, with `project_path` so it can read the ledger itself (its \"Ledger metrics\" section).\n\n### Step 3: Analyze and draft proposals\n\nDispatch `bytheslice:retrospective-reviewer` ([definition](agents\u002Fretrospective-reviewer.md); opus, medium effort, enforced by registration). The agent reads the collected data, identifies friction patterns, and returns structured proposals including unified diffs for each proposed change.\n\n### Step 4: Surface proposals to user\n\nPresent the `patterns_observed` and `proposed_changes` returned by `retrospective-reviewer` in a readable summary. Ask the user (via `ask_user_input_v0`):\n\n> \"Here are the proposed plugin improvements. Would you like to open a draft PR?\"\n> single_select: [\"Yes, open a draft PR\", \"No, save proposals locally and exit\"]\n\nIf the user chooses **No**: write the proposals to `docs\u002Fclose-shop-\u003Cyyyy-mm-dd>.md` in the current project directory and exit.\n\n### Step 5: Create PR (if confirmed)\n\nResolve the plugin path:\n\n```bash\nPLUGIN_PATH=\"${BYTHESLICE_PLUGIN_PATH:-$HOME\u002Fbytheslice}\"\ncd \"$PLUGIN_PATH\"\n```\n\nCreate a branch and open a draft PR:\n\n```bash\nBRANCH=\"retrospective\u002F\u003Cyyyy-mm-dd>-\u003Ctopic>\"\ngit checkout -b \"$BRANCH\"\n# Apply each diff from proposed_changes\ngh pr create \\\n  --draft \\\n  --title \"[retrospective] \u003Ctopic>\" \\\n  --body \"\u003CPR body, see E below>\" \\\n  --label \"retrospective\" \\\n  --label \"experimental\"\n```\n\nReturn the PR URL to the user.\n\n---\n\n## D. retrospective-reviewer Agent\n\nThe analysis step is delegated entirely to `bytheslice:retrospective-reviewer` ([agents\u002Fretrospective-reviewer.md](agents\u002Fretrospective-reviewer.md)).\n\n- Model: `opus`, effort: medium; cross-stage pattern detection benefits from depth\n- Tools: `Read`, `Glob`, `Grep`, `Bash` (read-only invocations only)\n- The agent never writes files to disk; it returns structured YAML\n\nFriction signals the agent looks for:\n\n- Stages that required more than 2 implementer passes\n- Slices where `slice-tester` failed the rendered review more than 1 time\n- HITL escalations clustered in one category (suggests a systematic gap in the skill)\n- Token budget overruns\n- User corrections to agent output (commits authored by the user shortly after agent-authored commits, detected via `git log --author` comparison)\n\n---\n\n## E. PR Creation Rules\n\nEvery PR opened by this skill follows these conventions:\n\n| Field | Value |\n| --- | --- |\n| Branch name | `retrospective\u002F\u003Cyyyy-mm-dd>-\u003Ctopic>` |\n| PR title | `[retrospective] \u003Ctopic>` |\n| PR state | Draft, never ready-for-review on open |\n| Labels | `retrospective`, `experimental` |\n\n**PR body must include:**\n1. **Patterns observed**: bullet list from `retrospective-reviewer` output\n2. **Proposed changes summary**: one sentence per change with the target file\n3. **Project link**: name and\u002For repo URL of the project that triggered this retrospective\n4. **Diff(s)**: inline unified diffs for each proposed change, or a reference to the branch commits\n\n---\n\n## F. Limits\n\nThe following limits are hard constraints, not suggestions:\n\n1. **Max 1 retrospective PR per week per project.** Before opening a PR, check `gh pr list --repo steve-piece\u002Fbytheslice --label retrospective --state open` to verify no retrospective PR is already open for this project within the past 7 days. If one exists, append the new proposals to the existing PR instead of opening a duplicate.\n\n2. **Never auto-merge.** All PRs open as drafts. The skill does not call `gh pr merge` under any circumstances.\n\n3. **Never modifies the retrospective skill itself.** If `retrospective-reviewer` proposes a change to any file under `skills\u002Fclose-shop\u002F` or `commands\u002Fclose-shop.md`, the skill must skip that proposal, log a warning in the PR body (\"Skipped: self-modification guard\"), and continue with other proposals. This prevents infinite recursion.\n\n---\n\n## G. Return Contract\n\nAfter all work is complete (PR opened or proposals saved locally), return:\n\n```yaml\nstatus: complete | failed | needs_human\nsummary: \u003Cone paragraph: scope reviewed, patterns found, proposals made, PR URL if opened>\nartifacts:\n  - \u003CPR URL if opened, or path to local proposals file>\nneeds_human: false | true\nhitl_category: null | \"prd_ambiguity\" | \"external_credentials\" | \"destructive_operation\" | \"creative_direction\"\nhitl_question: null | \"\u003Cplain-language question if blocked>\"\nhitl_context: null | \"\u003Cwhat triggered this>\"\n```\n\n**HITL triggers for this skill:**\n- Plugin path does not exist and `BYTHESLICE_PLUGIN_PATH` is not set → `needs_human: true`, `hitl_category: prd_ambiguity`, `hitl_question: \"The plugin path ~\u002Fbytheslice does not exist and BYTHESLICE_PLUGIN_PATH is not set. What is the correct path to the plugin repo?\"`\n- `gh` CLI is not authenticated → `needs_human: true`, `hitl_category: external_credentials`, `hitl_question: \"gh CLI is not authenticated. Please run 'gh auth login' and then re-invoke the skill.\"`\n- PR creation fails (e.g., label does not exist, branch push rejected) → `needs_human: true`, `hitl_category: destructive_operation`\n\nThis skill does NOT call `ask_user_input_v0` for HITL resolution; it bubbles the structured contract up.\n\n---\n\n## Completion Checklist\n\n- [ ] Scope determined (last N stages, last project, or specific skill)\n- [ ] Plugin path resolved (`BYTHESLICE_PLUGIN_PATH` checked first, then `~\u002Fbytheslice`)\n- [ ] `gh` CLI authentication verified before attempting any PR creation\n- [ ] Execution data gathered: stage files, git log, recent PRs, HITL escalation records\n- [ ] `retrospective-reviewer` (opus) dispatched with all gathered data\n- [ ] `patterns_observed` and `proposed_changes` received from `retrospective-reviewer`\n- [ ] Self-modification guard applied: no proposals targeting `skills\u002Fclose-shop\u002F` or `commands\u002Fclose-shop.md`\n- [ ] Proposals surfaced to user with clear summary\n- [ ] User confirmed PR or elected to save locally\n- [ ] If PR: branch name follows `retrospective\u002F\u003Cyyyy-mm-dd>-\u003Ctopic>` format\n- [ ] If PR: opened as draft (never ready-for-review)\n- [ ] If PR: labeled `retrospective` and `experimental`\n- [ ] If PR: body includes patterns observed, proposed changes summary, and project link\n- [ ] Duplicate PR guard checked (max 1 open retrospective PR per project per week)\n- [ ] If save locally: proposals written to `docs\u002Fclose-shop-\u003Cyyyy-mm-dd>.md`\n- [ ] Return contract YAML emitted\n- [ ] Every checkbox in any output is a `- [ ]` task-list item (no bare `[ ]` lines)\n- [ ] No platform-specific bare references (\"cursor rules\", \"claude rules\") in any output\n","\u003C!-- skills\u002Fclose-shop\u002FSKILL.md -->\n\u003C!-- EXPERIMENTAL. Pizza-shop framing: bookends \u002Fsetup-shop: once the day's service is done, sit down and debrief the shift. Reviews how recent stages and skills executed, identifies systemic friction patterns, and drafts targeted improvement PRs against the plugin repository. -->\n\n# Close the Shop: After-Service Retro\n\n> **EXPERIMENTAL.** This skill is under active development. All PRs it generates open as drafts and require human review before merge. The skill never auto-merges and never modifies itself.\n\nByTheSlice skill that reviews how recent stages and skills executed, identifies systemic friction patterns, and drafts targeted improvement PRs against the plugin repository. Use this after completing a project or a significant batch of stages to close the feedback loop on the workflow itself.\n\n---\n\n## Mode detection\n\n`\u002Fclose-shop` is **always sequential**: it reviews recent execution history (commits, PRs, stage rows) and drafts plugin-improvement PRs. Requires either a recent ByTheSlice run (master checklist with Completed stages) or an explicit pointer to an existing project. Standalone invocation against a fresh repo is a no-op; there's nothing to debrief.\n\n## A. Purpose\n\n- Analyze execution logs, git history, PR records, and HITL escalation data to detect patterns where the plugin is causing repeated friction\n- Propose concrete changes (skill prompts, agent prompts, reference files, bug fixes, or new files)\n- Draft one or more PRs to the plugin repo for human review and merge\n\nThis skill does not modify production code in your project. It only targets the plugin repo at `~\u002Fbytheslice` (or `BYTHESLICE_PLUGIN_PATH` if set).\n\n---\n\n## B. Pre-requisites\n\nBefore invoking this skill, verify:\n\n1. **Plugin path**: The plugin must exist at one of:\n   - `~\u002Fbytheslice` (expands to `\u002FUsers\u002F\u003Cusername>\u002Fbytheslice` on macOS)\n   - Absolute path set in the `BYTHESLICE_PLUGIN_PATH` environment variable (checked first if set)\n   - The skill expands `~` on macOS using the shell; if `BYTHESLICE_PLUGIN_PATH` is set in the environment, that value takes precedence\n\n2. **`gh` CLI**: Must be installed and authenticated against the plugin repo (`steve-piece\u002Fbytheslice`). Run `gh auth status` to verify before proceeding.\n\n3. **Invocation**: User invokes via `\u002Fclose-shop`. Natural-language triggers: \"review the workflow\", \"improve the plugin\".\n\n---\n\n## C. Flow\n\n```mermaid\nflowchart LR\n  Invoke[\"\u002Fclose-shop\"] --> Scope[\"Ask: review last N stages,\u003Cbr\u002F>last project, or specific skill?\"]\n  Scope --> Read[\"Read stage execution logs\u003Cbr\u002F>(docs\u002Fplans\u002F, git log,\u003Cbr\u002F>recent PRs)\"]\n  Read --> Analyze[\"retrospective-reviewer (opus)\u003Cbr\u002F>identifies friction patterns\"]\n  Analyze --> Draft[\"Draft proposal:\u003Cbr\u002F>- skill change\u003Cbr\u002F>- agent prompt change\u003Cbr\u002F>- new reference file\u003Cbr\u002F>- bug fix\"]\n  Draft --> Confirm[\"Surface to user:\u003Cbr\u002F>'these are the proposed changes,\u003Cbr\u002F>open PR?'\"]\n  Confirm -->|yes| PR[\"cd ~\u002Fbytheslice\u003Cbr\u002F>+ gh PR creation\"]\n  Confirm -->|no| Done[\"log proposals locally\"]\n```\n\n### Step 1: Determine scope\n\nAsk the user (via `ask_user_input_v0`) which scope to review.\n\n**Always provide a recommended answer in available options.**\n\n\n> \"Which scope should I review for this retrospective?\"\n> single_select:\n> - \"Last N stages of the current project\", prompts for N\n> - \"Last completed project (all stages)\"\n> - \"Specific skill or agent\", prompts for skill name\n\n### Step 2: Read execution data\n\nCollect the following for the chosen scope:\n\n| Source | What to read |\n| --- | --- |\n| `docs\u002Fplans\u002F` in the project | Stage files, master checklist, completion criteria |\n| `git log` (project repo) | Commit history, timestamps, author attribution |\n| Recent PRs (project repo) | PR titles, descriptions, review comments via `gh pr list` |\n| HITL escalation log | Any `needs_human: true` returns captured in stage output |\n| Pass ledger (when the Pass mod ran) | `node \"${CLAUDE_PLUGIN_ROOT}\u002Fscripts\u002Fledger-summary.js\" --root \u003Cproject> --format json`: per slice fix loops, warnings by code, stalls, HITL wait and cost. It prints `{ \"pies\": [] }` without a ledger; then say the ledger metrics are absent |\n\nPass all collected data to `bytheslice:retrospective-reviewer`, with `project_path` so it can read the ledger itself (its \"Ledger metrics\" section).\n\n### Step 3: Analyze and draft proposals\n\nDispatch `bytheslice:retrospective-reviewer` ([definition](agents\u002Fretrospective-reviewer.md); opus, medium effort, enforced by registration). The agent reads the collected data, identifies friction patterns, and returns structured proposals including unified diffs for each proposed change.\n\n### Step 4: Surface proposals to user\n\nPresent the `patterns_observed` and `proposed_changes` returned by `retrospective-reviewer` in a readable summary. Ask the user (via `ask_user_input_v0`):\n\n> \"Here are the proposed plugin improvements. Would you like to open a draft PR?\"\n> single_select: [\"Yes, open a draft PR\", \"No, save proposals locally and exit\"]\n\nIf the user chooses **No**: write the proposals to `docs\u002Fclose-shop-\u003Cyyyy-mm-dd>.md` in the current project directory and exit.\n\n### Step 5: Create PR (if confirmed)\n\nResolve the plugin path:\n\n```bash\nPLUGIN_PATH=\"${BYTHESLICE_PLUGIN_PATH:-$HOME\u002Fbytheslice}\"\ncd \"$PLUGIN_PATH\"\n```\n\nCreate a branch and open a draft PR:\n\n```bash\nBRANCH=\"retrospective\u002F\u003Cyyyy-mm-dd>-\u003Ctopic>\"\ngit checkout -b \"$BRANCH\"\n# Apply each diff from proposed_changes\ngh pr create \\\n  --draft \\\n  --title \"[retrospective] \u003Ctopic>\" \\\n  --body \"\u003CPR body, see E below>\" \\\n  --label \"retrospective\" \\\n  --label \"experimental\"\n```\n\nReturn the PR URL to the user.\n\n---\n\n## D. retrospective-reviewer Agent\n\nThe analysis step is delegated entirely to `bytheslice:retrospective-reviewer` ([agents\u002Fretrospective-reviewer.md](agents\u002Fretrospective-reviewer.md)).\n\n- Model: `opus`, effort: medium; cross-stage pattern detection benefits from depth\n- Tools: `Read`, `Glob`, `Grep`, `Bash` (read-only invocations only)\n- The agent never writes files to disk; it returns structured YAML\n\nFriction signals the agent looks for:\n\n- Stages that required more than 2 implementer passes\n- Slices where `slice-tester` failed the rendered review more than 1 time\n- HITL escalations clustered in one category (suggests a systematic gap in the skill)\n- Token budget overruns\n- User corrections to agent output (commits authored by the user shortly after agent-authored commits, detected via `git log --author` comparison)\n\n---\n\n## E. PR Creation Rules\n\nEvery PR opened by this skill follows these conventions:\n\n| Field | Value |\n| --- | --- |\n| Branch name | `retrospective\u002F\u003Cyyyy-mm-dd>-\u003Ctopic>` |\n| PR title | `[retrospective] \u003Ctopic>` |\n| PR state | Draft, never ready-for-review on open |\n| Labels | `retrospective`, `experimental` |\n\n**PR body must include:**\n1. **Patterns observed**: bullet list from `retrospective-reviewer` output\n2. **Proposed changes summary**: one sentence per change with the target file\n3. **Project link**: name and\u002For repo URL of the project that triggered this retrospective\n4. **Diff(s)**: inline unified diffs for each proposed change, or a reference to the branch commits\n\n---\n\n## F. Limits\n\nThe following limits are hard constraints, not suggestions:\n\n1. **Max 1 retrospective PR per week per project.** Before opening a PR, check `gh pr list --repo steve-piece\u002Fbytheslice --label retrospective --state open` to verify no retrospective PR is already open for this project within the past 7 days. If one exists, append the new proposals to the existing PR instead of opening a duplicate.\n\n2. **Never auto-merge.** All PRs open as drafts. The skill does not call `gh pr merge` under any circumstances.\n\n3. **Never modifies the retrospective skill itself.** If `retrospective-reviewer` proposes a change to any file under `skills\u002Fclose-shop\u002F` or `commands\u002Fclose-shop.md`, the skill must skip that proposal, log a warning in the PR body (\"Skipped: self-modification guard\"), and continue with other proposals. This prevents infinite recursion.\n\n---\n\n## G. Return Contract\n\nAfter all work is complete (PR opened or proposals saved locally), return:\n\n```yaml\nstatus: complete | failed | needs_human\nsummary: \u003Cone paragraph: scope reviewed, patterns found, proposals made, PR URL if opened>\nartifacts:\n  - \u003CPR URL if opened, or path to local proposals file>\nneeds_human: false | true\nhitl_category: null | \"prd_ambiguity\" | \"external_credentials\" | \"destructive_operation\" | \"creative_direction\"\nhitl_question: null | \"\u003Cplain-language question if blocked>\"\nhitl_context: null | \"\u003Cwhat triggered this>\"\n```\n\n**HITL triggers for this skill:**\n- Plugin path does not exist and `BYTHESLICE_PLUGIN_PATH` is not set → `needs_human: true`, `hitl_category: prd_ambiguity`, `hitl_question: \"The plugin path ~\u002Fbytheslice does not exist and BYTHESLICE_PLUGIN_PATH is not set. What is the correct path to the plugin repo?\"`\n- `gh` CLI is not authenticated → `needs_human: true`, `hitl_category: external_credentials`, `hitl_question: \"gh CLI is not authenticated. Please run 'gh auth login' and then re-invoke the skill.\"`\n- PR creation fails (e.g., label does not exist, branch push rejected) → `needs_human: true`, `hitl_category: destructive_operation`\n\nThis skill does NOT call `ask_user_input_v0` for HITL resolution; it bubbles the structured contract up.\n\n---\n\n## Completion Checklist\n\n- [ ] Scope determined (last N stages, last project, or specific skill)\n- [ ] Plugin path resolved (`BYTHESLICE_PLUGIN_PATH` checked first, then `~\u002Fbytheslice`)\n- [ ] `gh` CLI authentication verified before attempting any PR creation\n- [ ] Execution data gathered: stage files, git log, recent PRs, HITL escalation records\n- [ ] `retrospective-reviewer` (opus) dispatched with all gathered data\n- [ ] `patterns_observed` and `proposed_changes` received from `retrospective-reviewer`\n- [ ] Self-modification guard applied: no proposals targeting `skills\u002Fclose-shop\u002F` or `commands\u002Fclose-shop.md`\n- [ ] Proposals surfaced to user with clear summary\n- [ ] User confirmed PR or elected to save locally\n- [ ] If PR: branch name follows `retrospective\u002F\u003Cyyyy-mm-dd>-\u003Ctopic>` format\n- [ ] If PR: opened as draft (never ready-for-review)\n- [ ] If PR: labeled `retrospective` and `experimental`\n- [ ] If PR: body includes patterns observed, proposed changes summary, and project link\n- [ ] Duplicate PR guard checked (max 1 open retrospective PR per project per week)\n- [ ] If save locally: proposals written to `docs\u002Fclose-shop-\u003Cyyyy-mm-dd>.md`\n- [ ] Return contract YAML emitted\n- [ ] Every checkbox in any output is a `- [ ]` task-list item (no bare `[ ]` lines)\n- [ ] No platform-specific bare references (\"cursor rules\", \"claude rules\") in any output\n",{"name":5,"triggers":49,"description":7,"experimental":59,"user-invocable":59},[50,51,52,53,54,55,56,57,58],"\u002Fbytheslice:close-shop","\u002Fclose-shop","close the shop","shift retro","end-of-day debrief","\u002Fbytheslice:review-pipeline","\u002Freview-pipeline","review the workflow","improve the plugin",true,"main","fed8bedadf83cf55669447e6c532d4e20a9aaf65","skills\u002Fclose-shop",1,"https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice","https:\u002F\u002Fgithub.com\u002Fsteve-piece","2026-11-11 19:22:40",{"source":8,"skillName":5,"commands":68,"prompt":78,"zipAvailable":59},[69,72,75],{"tool":70,"command":71},"npx","npx skills add steve-piece\u002Fbytheslice --skill close-shop",{"tool":73,"command":74},"bunx","bunx skills add steve-piece\u002Fbytheslice --skill close-shop",{"tool":76,"command":77},"pnpm","pnpm dlx skills add steve-piece\u002Fbytheslice --skill close-shop","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fclose-shop\u002FSKILL.md",[80,86],{"path":81,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":84,"sourceHtmlUrl":85},"agents\u002Fproposal-drafter.md","REFERENCE","参考文档",3265,"https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fclose-shop\u002Fagents\u002Fproposal-drafter.md",{"path":87,"resourceType":82,"resourceTypeDesc":83,"sizeBytes":88,"sourceHtmlUrl":89},"agents\u002Fretrospective-reviewer.md",11318,"https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fclose-shop\u002Fagents\u002Fretrospective-reviewer.md",[91,121,147,175,201,224],{"skillNo":92,"name":93,"nameZh":6,"description":94,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":95,"categories":96,"keywords":97,"publishedAt":44},"01M6JK6TG7HJ54TN5XYD8N3QE8","special-order","Cook a slice with the customer's specifications on the spot: add new features mid-flight to an existing project. Auto-detects project type and extends the master checklist with new stages.","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fspecial-order\u002FSKILL.md",[],[98,99,100,101,102,103,104,105,106,107,108,109,30,110,111,112,113,114,115,116,117,118,119,120],"special order","app","project","auto","bolt","customer","features","master","add","opus","feature","custom","Existing","type","with","high","spot","specifications","about","new","request","extend","slice",{"skillNo":122,"name":123,"nameZh":6,"description":124,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":125,"categories":126,"keywords":132,"publishedAt":44},"01M6JK6K6SH4N8Q597D3ABRRMR","setup-shop","Start the oven, check ingredients, prep the shop. Bootstrap a new project or configure ByTheSlice in an existing one. First-time install, system-wide config, or per-project setup.","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fsetup-shop\u002FSKILL.md",[127],{"categoryNo":128,"categoryName":129,"taxonomyType":130,"taxonomyTypeDesc":131},"01JBSEEDCAT000000000000031","产品经理","PROFESSION","适用职业",[26,133,42,134,99,135,100,136,137,138,139,140,141,142,143,107,144,145,146,30,117],"setup shop","SET","monorepo","time","up","open","configure","create","config","install","start","new project","for","system",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":159,"publishedAt":44},"01M6JK6CX6DNV9EE9VH6H3YRD0","set-display-case","Build the display case the pies will sit in, bootstrap your design system: tokens, Tailwind config, design rules, and the operator-only \u002Flibrary preview route. Run once before \u002Fsell-slice; also invocable standalone on any project.","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fset-display-case\u002FSKILL.md",[153,156],{"categoryNo":154,"categoryName":155,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":157,"categoryName":158,"taxonomyType":130,"taxonomyTypeDesc":131},"01JBSEEDCAT000000000000032","设计师",[134,160,161,162,163,100,164,137,165,166,167,168,169,170,141,142,171,172,173,174],"display","case","set display case","standalone","Tailwind","init","design","only","preview","route","run","operator","design-system","library","design system",{"skillNo":176,"name":177,"nameZh":6,"description":178,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":179,"categories":180,"keywords":183,"publishedAt":44},"01M6JK629AYG2B1NSSDYQAPWP2","sell-slice","Sell a customer their slice - the high-touch single-slice delivery loop. Execute one slice from your master checklist as an interactive spine (prep gate · recon · build-plan auth · \u002Fgoal · branch) + Workflow A (produce) + library gate + Workflow B (verify-once). Run me repeatedly, one fresh chat per slice. For autonomous whole-pie baking use \u002Fsell-pie.","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fsell-slice\u002FSKILL.md",[181,182],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":157,"categoryName":158,"taxonomyType":130,"taxonomyTypeDesc":131},[184,185,120,186,187,188,189,190,170,105,173,191,192,145,193,194,195,196,113,197,198,199,200],"sell slice","sell","branch","loop","fresh","plan","spine","ship","as","touch","use","interactive","chat","build","checklist","deliver","baking",{"skillNo":202,"name":203,"nameZh":6,"description":204,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":205,"categories":206,"keywords":208,"publishedAt":44},"01M6JK5RGMT1ZDVNG9CEHQF61Q","sell-pie","Bake a whole Pie autonomously - the v5 forefront delivery loop. A \u002Floop-driven baker that drives ONE Pie (a coherent chapter, usually 3 to 8 slices) to \"ready for review\" without per-slice prompting; each slice runs the context-separated build→test→verify→fix Workflow, commits + pushes (no PR), and advances; when every slice is [x] it stops at the pie boundary and opens one PR via \u002Fbox-it-up. Refuses flat v4 checklists (points you at \u002Fcook-pizzas --repie). For a continuous-review pie (review=continuous) it runs in high-touch \u002Fsell-slice mode. Opt-in merge-per-slice delivery (delivery.mode, or an explicit autonomous-delivery run instruction) instead gives each slice its own branch, PR and green-CI merge; opt-in ship-once delivery (delivery.mode, set by \u002Fpizza-party) merges each pie into one local ship branch on local gates only and ships one PR at the end. The four blocking HITL categories halt the loop instead of rescheduling (an unattended ship-once run defers the slice instead). Use when the user runs \u002Fsell-pie, says \"sell a pie\", \"bake the pie\", \"run the next pie\", \"loop the pie\", or wants one whole chapter delivered hands-off. For a single careful slice use \u002Fsell-slice; for the whole app end to end use \u002Fpizza-party.","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fsell-pie\u002FSKILL.md",[207],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[209,185,134,210,99,211,186,212,213,32,137,214,215,216,167,217,187,43,218,35,199,170,219,220,191,221,222,223],"sell pie","categories","ready","green","mode","fix","ci","local","autonomous","you","at","coherent","context","prompting","commits",{"skillNo":225,"name":226,"nameZh":6,"description":227,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":228,"categories":229,"keywords":234,"publishedAt":44},"01M6JK5GSHAXR9EAVBJBACPVGF","pizza-party","Cater a whole app, start to finish: from a short brief to a finished, deployed app with a URL. One interview up front (AskUserQuestion), then no human stops: \u002Fsetup-shop, \u002Fcreate-menu, \u002Fcook-pizzas, the Prep pie, every pie through \u002Fsell-pie in ship-once delivery (all gates local), one PR that ships the app, a deploy to whatever host the operator has authorized (or an artifact or localhost link), and a run record for comparing runs over time. Every decision a sub-skill would normally ask about is decided, recorded in the order ticket, and the run continues. Use when the user runs \u002Fpizza-party, sets a \u002Fgoal to build an app end to end, or says \"build me this app end to end\", \"from scratch to production\", \"pizza party\", \"bake the whole roadmap\" or \"run all pies\".","https:\u002F\u002Fgithub.com\u002Fsteve-piece\u002Fbytheslice\u002Fblob\u002Fmain\u002Fskills\u002Fpizza-party\u002FSKILL.md",[230,233],{"categoryNo":231,"categoryName":232,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":128,"categoryName":129,"taxonomyType":130,"taxonomyTypeDesc":131},[235,236,99,237,136,32,238,239,137,240,216,217,241,242,243,244,140,245,246,247,248],"pizza party","party","brief","short","ticket","decision","host","roadmap","URL","ask","me","artifact","human","when"]