## dyad-sh/dyad — v1.17.0…v1.18.0-beta.1

_30 commits._

### Features
- **Add a safety-reviewed shell experiment for Pro Agent mode (#4625)** (cd52a36)
- **Support PDF attachments as chat context (#4671)** (b75849c)
- **feat: allow optional setup inputs for catalog plugins (#4690)** (3da45c8)
- **Preserve new Anthropic thinking after chat mode switches (#4695)** (7199952)
- **feat: add opt-in per-app localhost preview domains (#4639)** (4b7ff65)
- **feat(cloudflare): add a Refresh button for Wrangler config detection (#4685)** (eb22a36)

### Fixes
- **Fix flaky Windows shell timeout unit test (#4718)** (7d18805)
- **Fix Windows E2E PDF snapshots and chat scroll restoration (#4719)** (bdf7130)
- **Fix main CI boundary test for Supabase administration (#4716)** (d214aca)
- **Fix streaming chat overriding user scroll-away (#4706)** (c4d5ffd)
- **Fix Claude PR review write permissions after the agent changes directory (#4714)** (fce135b)
- **fix(coolify): cancel in-flight deploys when setup switches instances (#4547)** (15faf1b)
- **fix(coolify-setup): preserve the signal name when the install is killed by a signal (#4546)** (15f40ef)
- **fix(coolify-setup): recognize a hostname host's derived name in the HTTPS guard (#4544)** (364f604)
- **fix(coolify-setup): validate host-derived domain against the apply-time charset before using it (#4503)** (85f95f5)
- **fix(local-agent): report has_more_before truthfully when read_chat pages past end of chat (#4519)** (6bad9bd)
- **fix(templates): Preserve user .env* / .git / .dyad over template copies in in-place apply (#4497)** (a913f4f)
- **fix(windows-spawn): pass cmd-quoted /c payload verbatim to libuv/node-pty (#4516)** (4d6a81c)
- **fix(cloudflare): make the repository access prompt usable (#4682)** (96280e3)

### Backend
- **Bump to v1.18.0-beta.1 (#4721)** (93939ed)
- **Keep chats and tests running during Supabase function deployments (#4712)** (402c92f)
- **Remove noisy distributed-machine source inventory tests (#4707)** (92239ff)
- **Enable safe MCP tool consent skipping by default for Pro (#4709)** (c96cb40)
- **Keep questionnaires open without a timeout (#4696)** (70e606e)
- **Queue app test runs instead of cancelling active runs (#4679)** (1b0f893)
- **Repair benchmark scoring and accounting, rescore saved checkpoints (#4703)** (ba27f52)
- **Make model usage selection easier to see (#4697)** (ff3494f)
- **Document preview-domain experiment rollout and prompt rules (#4663)** (f1567a7)

### Tests
- **test(e2e): match the simplified Neon isolation notice (#4693)** (0ba6d3f)

### Docs
- **docs: correct in-chat submission optimistic-clear scope in chat-modes rule (#4608)** (48ad801)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/dyad-sh/dyad?utm_source=github-action)._