block / block/berd

GitHub Copilot Agent (copilot-acp) remains stuck as not_ready in Berd

Open
#148 1 comment 0 reactions 0 assignees View on GitHub
bug
Dominant language
TypeScript
Stars
909
Forks
116
Avg merge
1d 1h
Merged PRs (30d)
156

Description

### Before filing

- [x] I searched [open and closed issues](https://github.com/block/berd/issues?q=is%3Aissue) for duplicates.
- [x] I reproduced this on the [latest release](https://github.com/block/berd/releases).
- [x] This is one bug, not several bundled together.

### Closest existing issue

none found

### What's broken

GitHub Copilot Agent not working.

### Steps to reproduce

1. Launch Berd (v0.6.2) on macOS.
2. Go to **Settings → AI providers / Agent harnesses**.
3. Under **Copilot** (*"GitHub Copilot coding agent", Installed via Homebrew · v1.0.80*), click **Sign in**.
4. The browser opens to the GitHub OAuth authorization page (`https://github.com/login/oauth/authorize?...`).
5. Complete the sign-in / authorization flow in the browser.
6. The app log reports:
```
[agent-setup copilot-acp Auth] Signed in successfully as .
[agent-setup copilot-acp Auth] fix succeeded
```
7. Return to the Berd Settings screen and click **Refresh**.

### What you expected to happen

After completing OAuth sign-in and seeing `fix succeeded`, the Copilot entry should update to reflect a connected/authenticated state (replacing the "Sign in" button with a signed-in state/indicator), and allow creating sessions using the Copilot harness.

### What actually happened

The Settings UI remains completely stuck on the initial state:
- The **Sign in** button remains visible under **Copilot (Installed via Homebrew · v1.0.80)**.
- Clicking **Refresh** does not update the UI or reflect the authenticated status.
- Checking via `berdctl info harnesses` still returns `"status": "not_ready"`.
- Attempting to start a session with the Copilot harness fails with:
`harness_not_ready: Agent harness "copilot-acp" is not ready (sign-in or setup required).`

### How often does it happen?

Every time — reliably reproducible

### Berd version

0.6.2

### Operating system

macOS (Apple Silicon)

### Model and provider

Github Copilot

### Relevant log output

```text
[berd_lib::commands::agent_setup][INFO] [agent-setup copilot-acp Auth] starting fix
[berd_lib::commands::agent_setup][INFO] [agent-setup copilot-acp Auth] $ copilot login
[berd_lib::commands::agent_setup][INFO] [agent-setup copilot-acp Auth] Opening your browser to authenticate...
[berd_lib::commands::agent_setup][INFO] [agent-setup copilot-acp Auth] Waiting for authorization...
[berd_lib::commands::agent_setup][INFO] [agent-setup copilot-acp Auth] Signed in successfully as .
[berd_lib::commands::agent_setup][INFO] [agent-setup copilot-acp Auth] fix succeeded
```

### Screenshots, recordings, or other context

_No response_

Contributor guide

Open the contributing guide

Research direction

Reproduce on macOS with Berd v0.6.2 by signing in through Settings → AI providers / Agent harnesses, then compare the UI with `berdctl info harnesses`. Trace the Copilot `copilot-acp` refresh and agent-setup authentication flow using the reported `fix succeeded` logs. Done means the authenticated state appears in Settings and `berdctl info harnesses` no longer reports `not_ready`, allowing a Copilot session to start.

Written by the indexing model from the issue text.

Assessment

Tech stack
github, typescript
Domain
authentication, desktop
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
68/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.