Skip to content

docs: Claude Code v2.1.310 - plugin marketplaces fetch only the git submodules plugins use, fast mode cache costs reworked, Claude Tag runners need python3 - #1413

Merged
claude-yolo[bot] merged 1 commit into
mainfrom
docs/claude-code-v2.1.310-20261025-1837
Oct 25, 2026
Merged

claude-yolo[bot] merged 1 commit into
mainfrom
docs/claude-code-v2.1.310-20261025-1837

Conversation

@claude-yolo

@claude-yolo claude-yolo Bot commented Oct 25, 2026

Copy link
Copy Markdown
Contributor

Night shift report

WHY THIS MATTERS: The version is still 2.1.310, but the docs now cover behavior changes from v2.1.295 that can break things without warning. The biggest one affects plugin marketplace authors: Claude Code no longer clones every git submodule. A root-level plugin that builds a path into a submodule at runtime will now install with an empty directory. Two other changes hit people quietly too. Self-hosted runners serving Claude Tag need python3, or Claude may never post its reply in Slack. And the fast mode docs now say every speed toggle can be an uncached read. The old docs said that cost happened once per conversation.

HIGHLIGHTS:

  • Marketplace clones fetch only the submodules plugins use (v2.1.295+): this has a new reference section in plugins/marketplace-reference.md, plus how-to sections in plugin-marketplaces.md and create-marketplace.md.
    • A plugin in a subdirectory gets only the submodules inside it, the ones that contain it, and the ones a committed symlink points into.
    • A root plugin ("source": "./") gets every submodule or none. It gets them all only if a component directory, a config path, a symlink or text in its files points into one.
    • A root SKILL.md or an unreadable config file fetches everything.
    • --sparse / sparsePaths still fetches no submodules.
  • New troubleshooting entry: "A root plugin's files from a git submodule are missing after install." The fix is to write the path out in full, e.g. ${CLAUDE_PLUGIN_ROOT}/vendor/tool/run.sh. The 120s clone timeout entry now says to upgrade, since earlier versions fetching every submodule was a common cause.
  • Agent SDK (TypeScript): how a UserPromptSubmit block interacts with mid-turn messages.
    • If the hook blocks a message that starts its own turn, you still get a success result with num_turns: 0.
    • If it blocks a message picked up mid-turn, the message is dropped: you get no result, and the message is never kept for later.
    • continue: false, or a prompt hook answering ok: false without continueOnBlock, stops the message instead of dropping it. The message then waits for its own turn.
    • SDK hosts that track results per message uuid need to handle all three cases.
  • Fast mode and prompt caching rewritten: fast and standard speed keep separate caches. Each toggle now reads uncached whatever the target speed hasn't cached, and that includes the automatic rate-limit fallback and the return to fast mode. The old docs said the header-based miss happened once and later toggles kept the cache, so this is a real change in cost guidance.
  • Self-hosted environments / Claude Tag:
    • Hooks supplied by the control plane run python3, and one of them is the reminder that makes Claude post its reply in Slack.
    • The sample Dockerfile now installs python3.
    • The quickstart says Claude Tag runners need v2.1.229+ plus python3.
    • There's a new troubleshooting bullet: "Claude Tag sometimes doesn't post its reply in Slack."
  • CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC no longer hides spend-limit dollars (v2.1.295+): the gateway spend request is now sent anyway. Statusline spend_limit.used_usd / limit_usd / period show up again for those users (statusline.md, claude-apps-gateway-spend-limits.md).
  • Async SessionStart hooks are deduplicated: output identical to what Claude last got from the hook is skipped. Before v2.1.295, the same text was added again on every resume (hooks.md).
  • Noise: 51 support articles changed only because Intercom image URL signatures rotated. .metadata.json timestamps changed. No deletions, tombstones or discovery changes.

Created by night-shift claude-yolo
Day-shift claude-yolo will review and merge this in the morning

…ubmodules plugins use, fast mode cache costs reworked, Claude Tag runners need python3

Co-Authored-By: claude-yolo[bot] <claude-yolo@lroole.com>
@claude-yolo
claude-yolo Bot merged commit 1670587 into main Oct 25, 2026
1 check passed
@claude-yolo
claude-yolo Bot deleted the docs/claude-code-v2.1.310-20261025-1837 branch October 25, 2026 18:39
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.

0 participants