Skip to content

Commit cef5d29

Browse files
authored
Merge branch 'dev' into fix/plugin-exit-wait
2 parents aaf9ceb + 28025a0 commit cef5d29

123 files changed

Lines changed: 1307 additions & 935 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/actions/setup-bun/action.yml

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,10 @@
11
name: "Setup Bun"
22
description: "Setup Bun with caching and install dependencies"
3+
inputs:
4+
install-flags:
5+
description: "Additional flags to pass to 'bun install'"
6+
required: false
7+
default: ""
38
runs:
49
using: "composite"
510
steps:
@@ -46,8 +51,8 @@ runs:
4651
# e.g. ./patches/ for standard-openapi
4752
# https://github.com/oven-sh/bun/issues/28147
4853
if [ "$RUNNER_OS" = "Windows" ]; then
49-
bun install --linker hoisted
54+
bun install --linker hoisted ${{ inputs.install-flags }}
5055
else
51-
bun install
56+
bun install ${{ inputs.install-flags }}
5257
fi
5358
shell: bash

.github/workflows/publish.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -402,12 +402,14 @@ jobs:
402402
fail-fast: false
403403
matrix:
404404
settings:
405-
- host: macos-latest
405+
- host: macos-26-intel
406406
target: x86_64-apple-darwin
407407
platform_flag: --mac --x64
408-
- host: macos-latest
408+
bun_install_flags: --os=darwin --cpu=x64
409+
- host: macos-26
409410
target: aarch64-apple-darwin
410411
platform_flag: --mac --arm64
412+
bun_install_flags: --os=darwin --cpu=arm64
411413
# github-hosted: blacksmith lacks ARM64 MSVC cross-compilation toolchain
412414
- host: "windows-2025"
413415
target: aarch64-pc-windows-msvc
@@ -437,6 +439,8 @@ jobs:
437439
run: echo "${{ secrets.APPLE_API_KEY_PATH }}" > $RUNNER_TEMP/apple-api-key.p8
438440

439441
- uses: ./.github/actions/setup-bun
442+
with:
443+
install-flags: ${{ matrix.settings.bun_install_flags }}
440444

441445
- name: Azure login
442446
if: runner.os == 'Windows'

bun.lock

Lines changed: 30 additions & 30 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

nix/hashes.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
{
22
"nodeModules": {
3-
"x86_64-linux": "sha256-AgHhYsiygxbsBo3JN4HqHXKAwh8n1qeuSCe2qqxlxW4=",
4-
"aarch64-linux": "sha256-h2lpWRQ5EDYnjpqZXtUAp1mxKLQxJ4m8MspgSY8Ev78=",
5-
"aarch64-darwin": "sha256-xnd91+WyeAqn06run2ajsekxJvTMiLsnqNPe/rR8VTM=",
6-
"x86_64-darwin": "sha256-rXpz45IOjGEk73xhP9VY86eOj2CZBg2l1vzwzTIOOOQ="
3+
"x86_64-linux": "sha256-+G3/s18NZO1Dpc5TsZyix2Npodzei25Svw3nTjfzXW8=",
4+
"aarch64-linux": "sha256-39HPencmRYRbyCk/cZIdPFk6ocY1AMlyuN9j25zAKzI=",
5+
"aarch64-darwin": "sha256-043korPEjSHKiZ3P+EfWyOfKpgOC7CBpviccviaDa0o=",
6+
"x86_64-darwin": "sha256-vsZ7e//rL9e7Cl5kl/Xplvi1fqayljxTLwRSbxvCxeM="
77
}
88
}

packages/app/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@opencode-ai/app",
3-
"version": "1.14.22",
3+
"version": "1.14.24",
44
"description": "",
55
"type": "module",
66
"exports": {

packages/app/src/components/prompt-input.tsx

Lines changed: 46 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -270,7 +270,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
270270
const buttonsSpring = useSpring(() => (store.mode === "normal" ? 1 : 0), { visualDuration: 0.2, bounce: 0 })
271271
const motion = (value: number) => ({
272272
opacity: value,
273-
transform: `scale(${0.95 + value * 0.05})`,
273+
transform: `scale(${0.98 + value * 0.02})`,
274274
filter: `blur(${(1 - value) * 2}px)`,
275275
"pointer-events": value > 0.5 ? ("auto" as const) : ("none" as const),
276276
})
@@ -345,7 +345,7 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
345345
promptPlaceholder({
346346
mode: store.mode,
347347
commentCount: commentCount(),
348-
example: suggest() ? language.t(EXAMPLES[store.placeholder]) : "",
348+
example: suggest() ? (store.mode === "shell" ? "git status" : language.t(EXAMPLES[store.placeholder])) : "",
349349
suggest: suggest(),
350350
t: (key, params) => language.t(key as Parameters<typeof language.t>[0], params as never),
351351
}),
@@ -1403,12 +1403,11 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
14031403
<IconButton
14041404
data-action="prompt-submit"
14051405
type="submit"
1406-
disabled={store.mode !== "normal" || (!working() && blank())}
1406+
disabled={!working() && blank()}
14071407
tabIndex={store.mode === "normal" ? undefined : -1}
1408-
icon={stopping() ? "stop" : "arrow-up"}
1408+
icon={stopping() ? "stop" : store.mode === "shell" ? "arrow-undo-down" : "arrow-up"}
14091409
variant="primary"
14101410
class="size-8"
1411-
style={buttons()}
14121411
aria-label={stopping() ? language.t("prompt.action.stop") : language.t("prompt.action.send")}
14131412
/>
14141413
</Tooltip>
@@ -1451,14 +1450,24 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
14511450
<div class="px-1.75 pt-5.5 pb-2 flex items-center gap-2 min-w-0">
14521451
<div class="flex items-center gap-1.5 min-w-0 flex-1 relative">
14531452
<div
1454-
class="h-7 flex items-center gap-1.5 max-w-[160px] min-w-0 absolute inset-y-0 left-0"
1453+
class="h-7 flex items-center gap-1.5 min-w-0 absolute inset-0"
14551454
style={{
1456-
padding: "0 4px 0 8px",
1455+
padding: "0 0px 0 8px",
14571456
...shell(),
14581457
}}
14591458
>
1460-
<span class="truncate text-13-medium text-text-strong">{language.t("prompt.mode.shell")}</span>
1461-
<div class="size-4 shrink-0" />
1459+
<Icon name="console" />
1460+
<span class="truncate text-13-medium text-text-base">{language.t("prompt.mode.shell")}</span>
1461+
<div class="flex-1" />
1462+
<Button
1463+
variant="ghost"
1464+
class="text-text-base"
1465+
onClick={() => {
1466+
setStore("mode", "normal")
1467+
}}
1468+
>
1469+
{language.t("common.cancel")}
1470+
</Button>
14621471
</div>
14631472
<div class="flex items-center gap-1.5 min-w-0 flex-1 h-7">
14641473
<Show when={!agentsLoading()}>
@@ -1565,33 +1574,35 @@ export const PromptInput: Component<PromptInputProps> = (props) => {
15651574
</TooltipKeybind>
15661575
</Show>
15671576
</div>
1568-
<div
1569-
data-component="prompt-variant-control"
1570-
style={providersShouldFadeIn() ? { animation: "fade-in 0.3s" } : undefined}
1571-
>
1572-
<TooltipKeybind
1573-
placement="top"
1574-
gutter={4}
1575-
title={language.t("command.model.variant.cycle")}
1576-
keybind={command.keybind("model.variant.cycle")}
1577+
<Show when={variants().length > 2}>
1578+
<div
1579+
data-component="prompt-variant-control"
1580+
style={providersShouldFadeIn() ? { animation: "fade-in 0.3s" } : undefined}
15771581
>
1578-
<Select
1579-
size="normal"
1580-
options={variants()}
1581-
current={local.model.variant.current() ?? "default"}
1582-
label={(x) => (x === "default" ? language.t("common.default") : x)}
1583-
onSelect={(value) => {
1584-
local.model.variant.set(value === "default" ? undefined : value)
1585-
restoreFocus()
1586-
}}
1587-
class="capitalize max-w-[160px] text-text-base"
1588-
valueClass="truncate text-13-regular text-text-base"
1589-
triggerStyle={control()}
1590-
triggerProps={{ "data-action": "prompt-model-variant" }}
1591-
variant="ghost"
1592-
/>
1593-
</TooltipKeybind>
1594-
</div>
1582+
<TooltipKeybind
1583+
placement="top"
1584+
gutter={4}
1585+
title={language.t("command.model.variant.cycle")}
1586+
keybind={command.keybind("model.variant.cycle")}
1587+
>
1588+
<Select
1589+
size="normal"
1590+
options={variants()}
1591+
current={local.model.variant.current() ?? "default"}
1592+
label={(x) => (x === "default" ? language.t("common.default") : x)}
1593+
onSelect={(value) => {
1594+
local.model.variant.set(value === "default" ? undefined : value)
1595+
restoreFocus()
1596+
}}
1597+
class="capitalize max-w-[160px] text-text-base"
1598+
valueClass="truncate text-13-regular text-text-base"
1599+
triggerStyle={control()}
1600+
triggerProps={{ "data-action": "prompt-model-variant" }}
1601+
variant="ghost"
1602+
/>
1603+
</TooltipKeybind>
1604+
</div>
1605+
</Show>
15951606
</Show>
15961607
</Show>
15971608
</div>

0 commit comments

Comments
 (0)