Vasiliy Kattouf

@kattouf
26 Followers
14 Following
46 Posts
iOS dev by trade, working in an infrastructure team. Passionate about tooling, automation, and CLI utilities.
GitHubhttps://github.com/kattouf

tldr: it’s Claude Code + iOS Sim MCP vs Captcha
Long time no see, guys. Finally, I have something funny enough to share with you.

p.s. Sorry the video is quite long, but you can fast-forward to halfway.
p.p.s. The content isn’t 100% in English, but I think it’s clear what’s going on.

package-swift-lsp now works on Linux and Neovim 🎉
https://github.com/kattouf/package-swift-lsp-neovim

I’m new to Neovim, so if you use it for Swift, I’d appreciate any feedback on how it works (or not) for you.

@swifttoolkit @rockbruno Okay, now I’m wondering how Bazel would work for our project :)

@mattiem Over the past few years, I’ve been using https://fx.wtf for the simplest operations with JSON

❯ fx json.txt . > formatted.txt
For format

fx – a terminal JSON viewer & processor

A terminal viewer & processor for JSON, YAML, & TOML (TUI and CLI)

@swifttoolkit Yes, I’ll give it a try 🤝
A seamless integration into the project takes a bit more effort than just throwing in a code snippet :D
@swifttoolkit I think there wasn’t space to mention it in article, so just adding here: subscribing to window size changes is just as easy as getting the window size itself.
@swifttoolkit defer is good, but would be great if CLIs called showCursor(true) in handlers for unexpected exits too—like when interrupted with Ctrl+C. Otherwise, users might be left without a visible cursor in their terminal session (something I’ve run into with Amazon Q :D).

Pro tip: if you want to see what your app looks like with the new design on iOS 26 but for some reason can't build it with the new SDK, add the following to your app's launch arguments (or set it in user defaults):

"-com.apple.SwiftUI.IgnoreSolariumLinkedOnCheck YES"

@natanrolnik I stopped using twitter years ago because of this. I don't know why, but in my env twitter was used only for ironically toxic "smart" thoughts/jokes about everything (I can't rule out that I used it that way too)

@marekfort thanks for the detailed answer, It was useful for me to know this.

follow-up question about new details if you don't mind: do you somehow share common entities like colors, using some language interoperability techniques, or maybe generating code for platform-specific objects from a single source of truth like a config file or something else?