Skip to main content

My REST Client Formatter Returned 404 for Every Version

I wanted VS Code's REST Client inside Zed. One piece of the setup was dead upstream, and the part that worked was a five-line task.

Updated 2 min readMarkdown
Part of seriesTerminal Diaries

REST Client was on my VS Code extension list, so replacing it in Zed was the part of the migration most likely to have a gap. Two of the three pieces worked. The third no longer exists.

The working part is httpyac, a CLI that sends requests from .http files. Zed can run any command as a task, and it exposes the cursor line as $ZED_ROW. So the whole replacement is one task:

{
  "label": "Run HTTP Request",
  "command": "httpyac send --line $ZED_ROW $ZED_FILE"
}

I bound it to cmd-alt-r, scoped to Editor && extension == http so it does nothing in other files. I tested it on a two-request file with the cursor on line 5. It ran only the second request and returned a 200. That is the behavior REST Client gave me, and it needed no editor plugin.

The part that failed was kulala-fmt, the formatter for .http files. I installed it and found that it downloads a helper called kulala-core from GitHub, and that download returned 404.

A single bad version was possible, so I tried more.

kulala-fmt 3.2.1   -> kulala-core download: 404
kulala-fmt 4.2.5   -> kulala-core download: 404
kulala-fmt 4.3.5   -> kulala-core download: 404
kulala-fmt 4.4.0   -> kulala-core download: 404
kulala-fmt 4.5.3   -> kulala-core download: 404

Five versions, one answer. The repo github.com/mistweaverco/kulala-core returns 404, so no version of the formatter can finish installing. The problem is upstream, and no config of mine could fix it.

I uninstalled it and removed the format_on_save entry I had added for it. I kept kulala-ls for completion and hover, because it answered a stdio initialize request. .http files go unformatted until upstream restores the repo.

One more thing I could not explain: httpbin.org times out from Node here with ETIMEDOUT while curl reaches it fine. I did not find the cause, so I test against a different host.

Checking more than one version was worth the minute. One 404 could have been my mistake. Five in a row is a fact.

About the author

  • I'm Sushanth, a high school senior in Hyderabad, India. This is where I write about the things I spend time on: learning from mistakes, building things in code, and the tools I actually work with day to day. I hold the Candidate Master title and a FIDE International Master norm, earned across roughly 140 rated tournaments in six countries. I stopped competing in 2025, but the habit competition taught me, sitting down after every loss and figuring out exactly where I went wrong, shapes how I approach everything else. On the technical side, I've gone deep on C/C++ through Duke University and University of London coursework. I'm also someone who likes a good terminal workflow and enjoys exploring (and abandoning) productivity tools. Expect posts on Neovim, tmux, what broke this week, and whatever I'm tinkering with.

No comments yet. Be the first to comment.