{
  "id": 4401389,
  "title": "The port that moved: how an auto-update broke a user's AI agent for three hours",
  "url": "https://urgent.news/2026/08/30/the-port-that-moved-how-an-auto-update-broke-a-users-ai-agent-for",
  "topic": "ai",
  "section": "AI",
  "published": "2026-08-30T09:55:04.000Z",
  "source": {
    "name": "Dev.to",
    "slug": "dev-to",
    "url": "https://dev.to/perfectoweb/the-port-that-moved-how-an-auto-update-broke-a-users-ai-agent-for-three-hours-1kfc"
  },
  "original_language": "en",
  "account": "An auto-update triggered by Sparkle caused an AI coding agent, Belay, to stop functioning properly for three hours. The issue arose because the new version of Belay was bound to port 61717, while the running Claude Code session was still attempting to connect to the previous port, 61716. The port change happened due to Belay using an ephemeral port when creating its NWListener, which resulted in the port changing each time the app was launched. This behavior made it difficult for the agent to automatically adapt to the new port, leading to the connection errors. The issue could be resolved by setting the required local endpoint explicitly and instructing Belay to bind to the desired port, rather than relying on the ephemeral port assignment.",
  "summary": "A friend sent me two screenshots. His terminal was full of this: Hook error: POST http://127.0.0.1:61716/hook?src=belay connect ECONNREFUSED 127.0.0.1:61716 Every tool call Claude Code made printed one of those. It had been doing it for about three hours. The app on the other end of that URL is mine. It's called Belay – a macOS menu bar utility that keeps the Mac awake while local AI coding…",
  "key_points": [],
  "editors_take": null,
  "illustration": null,
  "coverage": {
    "outlets": 1,
    "also_reported_by": []
  },
  "ai_generated": true,
  "disclaimer": "Summaries, key points and the editor’s take are written by software from other outlets’ reporting and may contain errors — always check the linked original."
}