Skip to content

Update chezmoi externals - #69

Merged
mono0x merged 1 commit into
mainfrom
renovate/chezmoi-externals
Aug 9, 2026
Merged

Update chezmoi externals#69
mono0x merged 1 commit into
mainfrom
renovate/chezmoi-externals

Conversation

@renovate

@renovate renovate Bot commented Aug 9, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Update Change Pending
anthropics/claude-code patch v2.1.220v2.1.224 v2.1.226 (+1)
mattpocock/skills minor v1.1.0v1.2.3

Release Notes

anthropics/claude-code (anthropics/claude-code)

v2.1.224

Compare Source

What's changed

  • Added self-hosted environments: claude self-hosted-runner turns your own machines or containers into a place Claude Code web, mobile, and desktop sessions can run, on Team and Enterprise plans
  • Added archive plugin source: install plugins from a zip over HTTPS without git or npm, with optional SHA-256 pinning
  • Added a cancel-and-confirm step when removing an unavailable paste changes a command's text
  • Added ANTHROPIC_BEDROCK_REGION_PREFIX env var for Bedrock to prefer a specific cross-region inference profile over the AWS_REGION-derived one
  • Added crossSessionInbound and dialogExpiry settings: cross-session messages sent to a session running with bypassed permissions are held for your approval, and messages to other sessions auto-deliver
  • Added sandbox credential-masking options: extract and onExtractNoMatch for structured env values, decode: "jwt" with maskClaims for JWT-aware masking, and awsPairs/sigv4 for AWS SigV4 re-signing; these need network.tlsTerminate and are honored only from user, managed, or --settings settings
  • Added cross-session SendMessage: Claude Code sessions can now message each other, on any of your machines, with ListAgents to discover them (macOS and Linux)
  • Fixed long (>200 char) project paths resolving to another project's session directory under a shared sanitized prefix; session list, rename, fork, delete and /resume no longer cross projects
  • Fixed SendMessage reporting "Message sent" when the write to a teammate's inbox had actually failed; failed deliveries are now reported as errors
  • Fixed sandbox filesystem deny entries written with a trailing slash (e.g. denyRead: "~/.aws/") being silently bypassable on Linux and macOS
  • Fixed sandbox violation details never appearing in Bash tool results; Claude now sees which file or network access was denied and why
  • Fixed MCP tools that connect mid-turn being deferred for tool search without their names announced to the model
  • Fixed plugin install records being silently corrupted when the same plugin is installed in multiple projects
  • Fixed recalled or restored paste content occasionally attaching wrong data or silently losing text when the paste had aged out or placeholder numbers collided
  • Fixed copy-on-select on Wayland sometimes not reaching the clipboard; the two selection writes no longer race
  • Fixed the feedback survey's transcript share silently failing on long sessions; a failed share now shows an error instead of a success message
  • Fixed Remote Control auto-start intermittently failing with "Remote credentials fetch failed" on a cold start with a stale login token
  • Fixed Remote Control and SDK clients showing a blank "(no content)" message after /clear and other output-less commands
  • Fixed a Remote Control session recreated after its server session expired uploading prior local conversation history into the new session
  • Improved fullscreen mode to keep the full pre-compaction history in scrollback across repeated compactions, instead of only the most recent interval
  • Improved Remote Control: attached web and mobile clients now see compaction progress and the post-compaction boundary instead of a silent pause; /clear resets now propagate to attached clients
  • Improved Remote Control: connection failures now show a persistent failure indicator with details and a reconnect shortcut, instead of only an 8-second toast
  • Removed the 200-subagent-per-session spawn cap; long-running sessions no longer refuse new agents (concurrency and depth limits still apply)
  • Changed managed settings: the approval prompt no longer re-appears after re-login or org switching when the organization's settings are unchanged
  • Changed the feedback-survey transcript share: with your consent it now also uploads the last request's model settings — the system prompt (which includes your CLAUDE.md instructions), tool definitions, and model parameters. Secrets are redacted as before, and these fields are dropped first if the share is too large
  • Changed the Bash tool description to always note that command output is displayed to the model, not reliably to the user
  • Changed recalled paste placeholder numbers to renumber when accepted into the input
  • Changed Remote Control to archive the stale server session instead of leaving a dead one listed when a fresh session is minted after compaction or /resume
  • [VSCode] Fixed the extension showing Remote Control as connected after the connection failed
  • Fixed a session resume silently reconnecting Remote Control after the user turned it off (--resume, SDK hosts, and the VS Code extension)
  • [VSCode] Fixed sessions not honoring remoteControlAtStartup when explicitly enabled

v2.1.223

Compare Source

What's changed

  • Added owner wildcard entries ("owner/*") to the strictKnownMarketplaces and blockedMarketplaces managed settings for allowing or blocking all marketplace repos under a GitHub org
  • Added a warning when workflow agents, forked skills, slash commands, or resumed background agents' requested subagent model is restricted and the parent model runs instead
  • Added a /teleport hint in cloud sessions showing how to continue locally with claude --teleport <session id>
  • Fixed a Bash permission bypass where a crafted command could hide parts of itself from permission checks
  • Fixed permission prompts so commands padded with tabs or invisible Unicode can no longer hide part of the command from the approval dialog
  • Fixed workflow scripts being able to use dynamic import() to run code outside the workflow sandbox
  • Fixed a permission gap where an agent definition's bypassPermissions mode ignored the org bypass-permissions disable policy
  • Fixed resuming a session after a mid-session /cd coming back empty
  • Fixed gateway model discovery hiding Claude models registered under provider-prefixed IDs such as vertex_ai/claude-* or bedrock/anthropic.claude-*
  • Fixed modelOverrides keys that aren't Anthropic model IDs being treated as the session's canonical model ID; unknown keys are now ignored as documented
  • Fixed managed settings: server-delivered settings no longer disable the env block of a machine-local managed-settings.json or MDM profile; admin env now merges per key
  • Fixed sandboxed commands failing to start on Linux when sandbox.filesystem.denyWrite covers the working directory
  • Fixed forked background agents getting stuck "already resuming" for the rest of the session when rebuilding the fork's parent prompt failed during resume
  • Fixed a resumed session failing every turn, or leaving the interactive app on an unresponsive error screen, when its history held a malformed diagnostics attachment
  • Fixed a rare hang when parsing unusual git push output
  • Changed CLAUDE_CODE_DISABLE_1M_CONTEXT to hold every Claude model with a native 1M window to 200K via auto-compaction, not just a fixed list; a startup warning now appears when auto-compaction isn't holding the session to 200K
  • Changed auto-compact to keep sessions on unrecognized model IDs within the assumed context window instead of letting them grow past it; set CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT=1 to restore the previous behavior
  • Changed /review to be an alias of /code-review, which reviews the current diff or a PR (/code-review <level> <pr#>); use /code-review ultra for a deep cloud review
  • Changed /code-review with no effort level to reuse the level you typed last; type a level like /code-review high to change it

v2.1.222

Compare Source

What's changed

  • Fixed worktree-isolated sessions and their subagents being able to run destructive git commands against the main checkout; isolation now applies to file edits and Bash in every session type
  • Fixed PreToolUse auto-allow hooks bypassing tool restrictions in background agent tasks (summaries, compaction, renames)
  • Fixed /usage-credits on Team and Enterprise showing "you've already sent a usage credit request" for members whose earlier request was dismissed, blocking them from sending a new one
  • Fixed the startup connectivity check hanging and then failing behind an HTTPS proxy; it now uses the same proxy-aware transport as API requests and times out with a clear message
  • Fixed "Connection closed mid-response" errors being reported on responses that had actually completed
  • Fixed /usage overattributing usage to MCP servers: a server's share now reflects only the requests that actually consumed its tool results, instead of every turn after any call to it
  • Fixed sessions not linking to pull requests created after the branch was pushed, including through the GitHub REST API
  • Fixed org-restricted model: opus-style subagent and teammate family aliases dropping to the parent model instead of stepping down to the newest org-allowed model in the family
  • Fixed stream idle timeout firing on custom ANTHROPIC_BASE_URL gateways despite server keep-alive pings arriving on the wire
  • Fixed claude.ai connectors being falsely marked as needing authorization when the session token is invalid — they now show a /login hint instead
  • Fixed tool errors not being displayed for tools no longer available locally, for example after an MCP server is removed
  • Fixed SendMessage rejecting a long summary — it now truncates instead, so sends no longer fail on a character limit
  • Fixed the spinner's effort label in a subagent's transcript view showing the session's effort level instead of the subagent's own effort: setting
  • Fixed rare crashes when a file watcher hit a filesystem error or during file-watcher teardown
  • Fixed screen readers re-reading the whole input line on every backspace in --ax-screen-reader mode — end-of-line deletions now echo just the deleted characters
  • Fixed host model-selection keys not taking precedence over a stale on-disk managed-settings.json when CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST is set
  • Improved auto mode safety: messages sent to other agent sessions via SendMessage are now evaluated by the permission classifier before dispatch
  • Improved the refusal when Claude tries to invoke a skill with disable-model-invocation: Claude is now told to ask you to run the skill instead of replicating its workflow
  • Improved the /diff view, the Remote Control workspace diff, and file-edit diffs in Claude Code on the web sessions to use raw git blob content, ignoring workspace-configured diff drivers and textconv
  • Changed Remote Control auto-start so repo-local settings (.claude/settings.json or .claude/settings.local.json) can no longer turn it on (they can still turn it off); enable it at user scope via /config
  • Removed ultraplan feature

v2.1.221

Compare Source

What's changed

  • [VSCode] Added Focus view: a chat-menu toggle that hides tool activity behind an expandable per-turn summary with a live running-tool indicator, toggled with Ctrl+Alt+F or the "Claude Code: Toggle Focus view" command
  • Added mode: "mask" for sandbox credential files on Linux and WSL — sandboxed commands read a sentinel copy (the whole file, or just the spans captured by an extract regex) while the sandbox proxy substitutes the real value on egress; on macOS file masking falls back to deny
  • Added warnings to claude plugin validate when a marketplace or plugin name would be rejected by Claude Desktop's managed marketplace sync
  • Added a prompt-audit subcommand to the claude-api skill for auditing prompts and tool descriptions for patterns written for older models
  • Fixed a Bash tool permission-check bypass where zsh could execute hidden commands in [[ ]] regex conditionals; affected commands now prompt for permission
  • Fixed PowerShell permission checks mishandling paths containing quote characters on Windows; such paths now prompt for approval
  • Fixed the thinking toggle having no effect for the rest of a session that started with thinking off; disabling an MCP server mid-connect no longer silently reverts
  • Fixed MCP servers from --mcp-config not being connected before the first turn in print mode (-p), which made the model emit tool calls as literal text
  • Fixed @​-mentioned files being silently dropped when pressing Esc to retract a prompt and resubmitting it
  • Fixed a crash when preparing API requests for SDK MCP tools named after built-in object properties such as constructor
  • Fixed WebSearch failing with a 400 error at effort xhigh/max when thinking is disabled
  • Fixed sandboxed large uploads failing with TLS errors through the sandbox proxy
  • Fixed Team and Enterprise spend-limit message incorrectly blaming the org's monthly limit instead of your individual spend limit
  • Fixed Bedrock authentication with AWS SSO named profiles failing in desktop-managed sessions on Windows machines that set a stray HOME environment variable
  • Fixed CLAUDE_CODE_RESUME_INTERRUPTED_TURN=0 not disabling interrupted-turn auto-resume; falsy values are now honored
  • Fixed a rare wake-from-sleep race where two Claude Code processes could both refresh the same MCP connector or WIF OAuth token at once, forcing re-authentication
  • Fixed renaming a session from Claude Code Desktop or claude.ai not updating the CLI's session name; session names from every rename surface are now sanitized
  • Fixed plugin- and org-delivered skills named after terminal-only built-ins (e.g. /help, /feedback) being un-invocable in non-interactive sessions
  • Fixed the "Plugins changed" notification lingering after plugins were reloaded instead of clearing
  • Fixed Vim mode: the yank register now survives dialogs, history search, and the transcript view instead of being silently emptied
  • Fixed Vim mode: undoing back to an empty prompt now arms the "press ← again" confirm before returning to the agent view
  • Improved tool search on Google Vertex AI: re-enabled for Claude 4.5-generation and newer models
  • Improved auto mode: permission checks for parallel tool calls are now cache-efficient, and switching modes while a check is pending reliably prompts instead of applying the stale result
  • Reduced prompt-cache costs for auto-mode permission checks by reusing the cached conversation prefix across decisions
  • Improved Stats panel to count cache tokens in its token totals, with a breakdown by input, output, cache read, and cache write
  • Improved /ultrareview error messages when a repo shares no history with its base: a checkout with no branches is now refused up front with advice to create one, and refusal hints no longer suggest git fetch --unshallow on clones that are already complete
  • Improved Windows startup: process creation times are now read via a native kernel32 call instead of spawning PowerShell, so endpoint security tools that gate powershell.exe no longer prompt
  • Changed background sessions to commit and push to preserve work, open a draft PR only when the task calls for one, follow your CLAUDE.md git instructions, and always end by reporting where the work lives
  • Changed /plugin install to refresh a stale marketplace catalog and retry before reporting a plugin not found
  • Changed plugins installed from /plugin to activate immediately when safe, instead of always requiring /reload-plugins
  • Changed plugins to accept "." as a skills path, and the root-level SKILL.md validation error now suggests using the plugin root
  • Changed /status to show the session kind: interactive, or a background job that is attached or unattended
  • Changed emoji autocomplete to accept common alternate shortcodes like :thumbsup:, :thumbsdown:, and :love:
  • Changed sessions forked with /fork to create a new worktree of their own instead of working in the original session's checkout
  • Changed Claude in Chrome to close the browser tabs it opens once it no longer needs them
  • Changed fast mode to report on the stream when usage credits run out mid-session, instead of failing silently
  • Changed Monitor: a watch that exits without producing any output now says so instead of reporting "stream ended"
  • Changed the Gateway model field validation: non-string values are rejected with a 400 instead of being forwarded
  • Removed the repeated "Permission mode changed while the auto-mode classifier call was queued" notice from approval prompts
mattpocock/skills (mattpocock/skills)

v1.2.3

Compare Source

Patch Changes
  • #​779 efce423 Thanks @​mattpocock! - Make diagnosing-bugs redact secrets.

    • Add a Redact section to SKILL.md. The skill has the agent show commands, outputs and captured artifacts; the section makes redaction the first move on each — write <REDACTED>, build loops against env vars so the credential stays in the environment, and quote only the signal-carrying lines of a captured artifact.
    • The Phase 1 completion criterion said "paste the invocation and its output". It now says show it redacted, and Phase 1 asks the user for a redacted captured artifact.
    • Note in scripts/hitl-loop.template.sh that capture prints its value back to the terminal, so it takes observations while signing in stays a step.
  • #​781 14bfbbd Thanks @​mattpocock! - Drop Claude Code's tool and agent-type names from the subagent-dispatch instructions in code-review, codebase-design, and improve-codebase-architecture, so the step is followable on Codex and other harnesses.

  • #​783 c0fd1e9 Thanks @​mattpocock! - wizard: remove the time estimate. The template drops TOTAL_MINUTES and the time-remaining display, stage takes a name only, and progress is counted in stages.

v1.2.2

Compare Source

Patch Changes
  • #​766 4aaccb5 Thanks @​mattpocock! - Make writing-for-agents model-invokable in Codex again.

    • Drop policy.allow_implicit_invocation: false from agents/openai.yaml. Codex filtered the skill out of the model-visible skills list, so its description could not trigger it — only an explicit $writing-for-agents mention worked.
    • Update the stale interface.display_name and interface.short_description, which still named the old writing-great-skills skill.
    • Move the skill from the User-invoked list to the Model-invoked list in README.md and skills/productivity/README.md.

v1.2.0

Compare Source

Minor Changes
  • #​551 697d4ce Thanks @​mattpocock! - Add Codex metadata alongside each skill's Claude Code frontmatter so the set works in both harnesses without generated copies.

    • Add an agents/openai.yaml beside every SKILL.md with Codex UI metadata (interface.display_name, interface.short_description).
    • Mark every user-invoked skill with policy.allow_implicit_invocation: false, the Codex analog of disable-model-invocation: true, so Codex excludes it from implicit invocation while explicit $skill invocation still works.
    • Document the dual-harness invocation model in .agents/invocation.md, CLAUDE.md, and the promoted-bucket READMEs.
    • Add AGENTS.md as a symlink to CLAUDE.md so Codex reads the same repo instructions.
  • #​593 0f2bdbd Thanks @​mattpocock! - Graduate to-questionnaire out of in-progress/ into the Productivity bucket, so it ships in the plugin. It turns a decision you can't answer alone into a Markdown questionnaire for the one person who can — filled in async, or worked through together in a meeting.

    Its defining move is that it grills you about the send, not the subject: a normal grilling session interrogates the topic, which is exactly what you can't answer here, so the interview asks only who the questionnaire is going to and what you need back, then aims every question at the gap between the two.

    Now wired as a promoted skill — plugin entry, top-level + Productivity READMEs under User-invoked, a docs page at docs/productivity/to-questionnaire.md, and a Standalone route in ask-matt framing it as the inverse of /grill-me (mine someone else, not yourself).

  • #​680 b3376f8 Thanks @​mattpocock! - Graduate wizard out of in-progress/ into the Engineering bucket, so it ships in the plugin — and make it model-invoked. It generates an interactive bash script that walks a human through a manual procedure — third-party setup, a one-off migration, an A→B state transition — opening each URL, saying what to click, capturing the values, and writing them into .env files and GitHub Actions secrets.

    The delightful UX is pre-solved by the bundled template.sh (progress with time-remaining, confirmation gates, cross-platform URL opening including WSL, hidden secret entry, idempotent .env upserts, gh secret/gh variable writes with graceful degradation, closing skip summary). Everything above the STAGES marker is a fixed library that's never hand-edited — the skill's job is only to scope the procedure and author its stages.

    Engineering rather than Productivity: it reads .env*, docker-compose*, framework config and every secrets.*/vars.* reference in .github/workflows/ to scope itself, writes CI secrets, and verifies its output with bash -n and shellcheck.

    Because it is model-invoked, the agent can reach for it the moment it hits a step only a human can perform, instead of dumping numbered instructions into the chat and hoping you follow them. Typing /wizard works exactly as before — model-invocation only ever adds the agent's reach. The description is written as the pointer that decides when it fires: what it produces, four trigger branches (provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, a one-off migration or cutover), and an explicit non-trigger — don't invoke it for steps the agent can perform itself. Work an agent can do, an agent should do; the wizard is for the clicks, approvals and dashboard trips you would not hand to one. The stage-list confirmation before a line is written now doubles as the proposal when the agent fires it mid-build.

    Now wired as a promoted skill — plugin entry, top-level + Engineering READMEs under Model-invoked, a docs page at docs/engineering/wizard.md, and a Standalone route in ask-matt for the steps only a human can take. Model-invocation also puts it out of the reach of #​693, which drops user-invoked skills from the listing on Claude's desktop and web surfaces.

  • #​763 77d207e Thanks @​mattpocock! - Reshape the prototype skill around two ideas: the demo is a single shareable HTML file, and the prototype is a primary source.

    The logic branch now produces one self-contained file (plain HTML/CSS/JS, no build, no server) instead of a terminal app — a non-developer can open it by double-click and drive it in their own domain language: a labelled state panel, always-available free-play buttons, and a set of tabbed guided walkthroughs, each a scenario with the ordered buttons to press underneath it. The portable pure-logic module still lifts into the real code; the HTML shell is the throwaway.

    Throwaway no longer means deleted. Rather than being removed once it has answered its question, the prototype is captured as runnable evidence on a throwaway branch (prototype/<name>) out of main, with a context pointer to it left on the implementation issue — so the main branch keeps only the validated decision while the exploration stays findable. The answer (verdict + question) is still captured durably in an issue/ADR/commit.

  • #​536 42a5b70 Thanks @​mattpocock! - Ship the skill set as a native Claude Code plugin, listed in Claude Code's official marketplace. You can now subscribe to the promoted skills as a managed, read-only bundle instead of copying editable files:

    claude plugins install mattpocock-skills

    Or, from inside a session:

    /plugin install mattpocock-skills
    

    There is no marketplace to add first — the official marketplace is configured by default.

    .claude-plugin/plugin.json carries the full plugin metadata (version, description, author, license, keywords) and the explicit list of promoted skills. skills.sh remains the universal installer (and the path for Codex and other harnesses today); a native Codex plugin is deferred — see .agents/adr/0002-ship-as-a-claude-code-plugin.md for why.

  • #​751 355fa74 Thanks @​mattpocock! - Add wait-what — a one-word corrective for model verbosity. Type it the moment a message doesn't land, and the agent re-pitches it: a little context, ASD-STE100 Simplified Technical English, and the ubiquitous language from your CONTEXT.md. User-invoked, three lines long.

    The mechanism is the name. Concision skills fail by growing — a 400-line skill still leaves the model verbose — so this one is a single precise leading word and nothing else. Names that describe the output (/tldr, /no-fluff) make the model clip words and lose you further; naming the listener's state asks for both halves at once, fewer words and the context you were missing. It also reuses the leading words already in your global CLAUDE.md, so the skill, CLAUDE.md and every CONTEXT.md reach for the same tokens.

    It repairs one message; it doesn't prevent the next one. The cure for jargon is a shared language built upfront with /grill-with-docs; this is what you reach for when you don't have one yet.

  • #​763 77d207e Thanks @​mattpocock! - Name the /wayfinder unit a decision ticket, and burn research tickets down with subagents.

    People kept reading a wayfinder ticket as an ordinary implementation ticket — a slice of a build to execute — when wayfinder uses them as decision tickets: questions whose resolution is a decision. The skill description and its opening line now introduce the term (and say what makes it one), with the ask-matt / engineering README blurbs and the docs page matching — while "ticket" stays the everyday word once the term is established. CONTEXT.md records Decision ticket as a domain term, so the "avoid: ticket" guidance no longer contradicts wayfinder's deliberate use of the word.

    Research tickets are no longer parked for a separately-launched session. Research stays a real ticket type — it's a genuine shared blocker that downstream decisions hang on, and that dependency is exactly what the frontier's blocking edges exist to render. What changes is how it's resolved: because research is AFK, charting doesn't stop and read it. After creating the tickets, the charting session fires a /research subagent for each research ticket to burn it down in parallel, capturing the findings on a throwaway research/<name> branch with a context pointer. Research tickets are the one exception to one ticket per session.

  • #​763 77d207e Thanks @​mattpocock! - Breaking: rename writing-great-skillswriting-for-agents, restructure it, and add a new leading word.

    The reference now covers any document an agent consumes — skills, AGENTS.md / CLAUDE.md, docs reached by a pointer — not just skills. GLOSSARY.md is merged into SKILL.md (one authoritative treatment per term; the _Avoid_ synonym lists and the standalone Predictability definition are gone); the skill-only mechanics (frontmatter, model- vs user-invoked, router skills, the invocation cut of splitting) are disclosed to a new SKILL-MECHANICS.md. The skill is now model-invoked: it fires when creating or editing skills or modifying AGENTS.md/CLAUDE.md. ask-matt's pointer updated. Reinstall under the new name; the old name is gone (no alias).

    The pruning section gains cache. Single source of truth now reaches past the document into the environment — package.json scripts, config files, directory layout, --help output are themselves authoritative, so a doc that restates them is a cache of a lookup, earning its load only when the lookup is expensive. The positive target: cache what the agent cannot find by looking (unwritten conventions, the reason behind a choice, gotchas no config confesses), and leave one-file, one-command lookups to the environment, where they cannot go stale.

  • #​533 45afd80 Thanks @​mattpocock! - Add a YAGNI scoping filter to the improve-codebase-architecture skill's Explore step. Instead of scanning the whole repo evenly, it now scopes to where change is actually landing: if you name a direction it takes it, otherwise it reads the last ~20 commit messages to bias exploration toward actively-developed paths. A deepening opportunity in code nobody touches is a refactor you'll never cash in — the leverage only pays off where you keep editing — so the report stops tidying dormant corners of the repo.

Patch Changes
  • #​763 77d207e Thanks @​mattpocock! - Sharpen /ask-matt — the router now covers phase boundaries, the two wayfinder mistakes, and two skills it never mentioned.

    Phase boundaries. A phase is a chunk of work inside a session — the grilling, the implementation, the QA — and the boundary between two of them is where you decide what to do with the context you've built. The two-bullet Crossing sessions section is replaced by a decision tree carrying all five options in order (continue, /clear, /handoff, subagent, /compact), with the reasoning disclosed in a new PHASE-BOUNDARIES.md. Three fixes come with it:

    • /handoff was oversold. It read as the general bridge between context windows. It's narrow: you need it only when something has to travel — a new harness, a new directory, a colleague, or a side task forked mid-phase. What it buys is portability.
    • /compact is the default, not the first reach. It sits at the bottom of the tree, after the four cheaper or more precise questions above it. Starting there produces a session that's confidently wrong about whatever the summary flattened.
    • Two branches were missing entirely. Continue is the one to rule out first — it's the only move that keeps the conversation as a primary source rather than a summary of one — and a subagent handles anything scoped tightly enough to run AFK.

    Context hygiene's escape hatch now says /compact rather than /handoff (same harness, same directory, at a boundary — the handoff clause doesn't apply), and the smart zone figure is updated from ~120k to ~150k tokens.

    Wayfinder routing. The two mistakes people most often make with the heaviest, most cognitively demanding flow:

    • Over-reaching for it. It's slower and denser than a single grill, so it's flagged as the heaviest flow and reserved for the idea that genuinely won't fit one session — a well-scoped feature belongs on /grill-with-docs, not here.
    • Losing the way at the handoff. When the map clears, wayfinder hands off, it doesn't build: merge onto the main flow at /to-spec (which collapses the map's linked decisions into a buildable plan) rather than looping the map straight into /implement. Straight-to-/implement is only for efforts that turned out genuinely small.

    Missing routes. /grilling and /resolving-merge-conflicts were absent from the router altogether and are now in it, and grill-me splits from grill-with-docs on whether you are in a working directory.

  • #​502 44eed54 Thanks @​mattpocock! - Make /setup-matt-pocock-skills friendlier and align the local-markdown tracker with the current spec.

    • Triage labels are now asked about only when the triage skill is installed, and then as a single recommended-yes question ("keep the default triage labels?") instead of an override interrogation. When triage isn't installed, the section — and docs/agents/triage-labels.md — are skipped.
    • External PRs as a request surface is no longer a setup question. The GitHub/GitLab templates still carry the flag, defaulted off; a user can flip it in docs/agents/issue-tracker.md later.
    • Domain docs default to single-context without asking; multi-context is only offered when the repo shows monorepo signals.
    • Local-markdown tickets are now one file per ticket under .scratch/<feature>/issues/<NN>-<slug>.md — never a single combined tickets.md. /to-tickets and the local issue-tracker template now agree, and the spec file is spec.md (not PRD.md) to match /to-spec.

    Docs pages for setup-matt-pocock-skills and to-tickets re-synced.

  • #​532 170ad48 Thanks @​mattpocock! - Reword grilling for general use. Its description and body no longer scope the interview to a software plan: "this plan" → "this", "enact the plan" → "act on it", and "exploring the codebase" → "exploring the environment". The technique is unchanged; it now reads as a stress-test of any plan, decision, or idea.

  • #​593 a4b2009 Thanks @​mattpocock! - Rework grilling from one-question-at-a-time to round-by-round. It now maps the decision tree and asks the whole frontier — every question whose prerequisites are already settled — in a single numbered round, then recomputes the frontier from the user's answers and asks the next round. Same 13 questions land in ~3 rounds instead of 13. Facts the environment can answer are dispatched to background sub-agents so research never blocks the round: only questions downstream of a running exploration wait for it. The session ends when the frontier is empty.

    Every question in a round is emitted in one fixed shape — ❓ **Q1** - **<title>**, then the body (prose or multiple choices), then the recommendation on its own ➡️ line. A round reads as a scannable numbered list with each recommendation visually separated from the question, so you can answer by number instead of quoting questions back.

    grill-me, grill-with-docs and triage run the frontier a round at a time as well — triage's grill step and grilling's Codex short_description now say so instead of describing the old rhythm. The opt-out for one-question-at-a-time (a line in your global CLAUDE.md) is unchanged.

  • #​752 c66bdee Thanks @​mattpocock! - Remove six skills from the repo. None of them was in the Claude Code plugin, but all six were installable through skills.sh, which serves every skill in the repo — so this is what leaves that listing, and where each one went.

    Four retired skills, each already absorbed by a skill that does the job better:

    • ubiquitous-language/domain-modeling, which builds and maintains the whole domain model rather than dumping a glossary from one conversation.
    • design-an-interface/codebase-design. Nothing is lost: the "design it twice" technique — parallel sub-agents generating radically different designs, from Ousterhout — ships inside that skill as DESIGN-IT-TWICE.md.
    • qa/triage and /to-tickets.
    • request-refactor-plan/to-spec and /improve-codebase-architecture.

    And two that were only ever mine — tied to my own machine and never meant for anyone else. The personal/ bucket goes with them:

    • edit-article
    • obsidian-vault, which hardcoded a path to my own Obsidian vault.

    skills/deprecated/ stays as a bucket, now empty. skills/in-progress/ is unchanged and is now described for what it actually is: a beta channel, published on purpose, installable one skill at a time through skills.sh.

  • #​734 a2f9333 Thanks @​mattpocock! - Finish the to-prdto-spec rename: "spec" is now the only term in the shipped text.

    • to-spec no longer opens with "you may know this document as a PRD" — the parenthetical is dropped from the skill and its docs page. The local-markdown tracker template drops the same hedge.
    • code-review talks about the originating issue/spec rather than issue/PRD, in its frontmatter description, its two-axis summary, and the spec-source search order. Both READMEs re-synced.
    • The GitHub and GitLab tracker templates now say "Issues and specs for this repo live as GitHub/GitLab issues" — they had been left on "PRDs" when the local template was updated, so the stale term propagated into every repo they were written into.
    • docs/engineering/research.md pointed at https://aihero.dev/skills-to-prd, a dead slug for the renamed skill; it now links to-spec like the other nineteen docs pages do.

    The CHANGELOG and existing changesets still name PRDs where they document the rename itself, which is correct.


Configuration

📅 Schedule: (in timezone Asia/Tokyo)

  • Branch creation
    • "on monday"
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@mono0x
mono0x merged commit 3d11125 into main Aug 9, 2026
3 checks passed
@mono0x
mono0x deleted the renovate/chezmoi-externals branch August 9, 2026 18:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant