Posts
Can Claude Code Use GitHub Copilot as a Backend? A Practical Exploration
Introduction Recently, I’ve been experimenting with a variety of LLM tooling ecosystems, including:
Claude Code
Codex via OpenRouter
Ollama
LM Studio
vLLM
LiteLLM
My goal is to better understand the underlying technologies and explore how to operate these tools in air-gapped or controlled environments.
In many enterprise settings, developers are allowed to use GitHub Copilot, but not Claude Code.
Posts
Spec-Kit + Ralph Loop — A Practical Workflow for AI-Driven Development
I first learnt the idea of the Ralph Loop around January, while following developments in LLMs and AI through multiple channels — video feeds, X, newsletters, GitHub repositories, news, and research papers.
That sparked a question:
What happens if we combine the Ralph Loop with spec-driven design to generate real, working applications?
This blog is a reflection of that exploration.
My Background with Spec-Kit Since December last year, I have been using Spec-Kit in both:
Posts
Claude Code with OpenRouter
I have been using GitHub Copilot and Copilot CLI for about one year. During that time, I also experimented with several developer tools and AI-assisted coding technologies. Recently I became interested in exploring Claude Code and related tools such as Claude Cowork.
However, I did not want to immediately commit to a subscription before understanding whether Claude Code actually fits my workflow. So I spent some time experimenting with different ways to run Claude Code without paying for a subscription first.
Posts
setup openclaw hetzner
Things are changing incredibly fast, and AI is undeniably the hottest topic right now. There’s no real option to stand still—the only sensible choice is to embrace the change and learn by doing.
Recently, OpenClaw has stood out as one of the most exciting personal AI assistant projects. After following the project for several days and spending time reading through its documentation—especially around skills and agents—I decided to try it out myself.
Posts
spec-kit: iteration workflow in a feature
Building with LLMs: How Spec-Kit Changed My Workflow Over the past three years, I’ve used LLMs—such as ChatGPT, Copilot, and Claude—primarily as assistants to generate code snippets for very specific requirements. They were useful, but always in a limited way: small pieces of logic, isolated helpers, or syntax scaffolding.
What I didn’t do until recently was build an entire system around an LLM.
The main reason was simple: most of my real work lives inside internal frameworks, legacy systems, and opinionated architectures.
Posts
setup vllm on macbook m4
Introduction Several days ago, I setup ollama on my MacBook M4, and it works pretty well. At that time, I tried to use it with copilt with local models codegemma:7b and qwen3:8b. My expectation was not so high as the hardware configuration of my macbook pro m4 is just a entry level, just want to see how it works. I also learned there are other options such as vllm. After comparing the two, I found vllm is more flexible, powerful, product-ready, used widely in enterprises.
Posts
Airgapped Kubernetes Cluster with containerd
After evaluating several local Kubernetes solutions I encountered repeated manual steps (downloading bootstrap images, pulling images from registry mirrors and retagging them, and loading images into clusters) that were time-consuming and error-prone. I decided to set up a properly air-gapped Kubernetes cluster using kubeadm and containerd, leveraging containerd’s registry mirror support. This post documents the steps I followed.
Prerequisites This guide assumes a Debian/Ubuntu host. Installing the latest Docker Engine will also provide containerd as a dependency.
Posts
From Batch to Real-Time: Rethinking File Processing with Linux fanotify
Traditionally, batch processing of files has been the default approach in many on-premise solutions. Files are dropped into a directory, collected on a schedule, and processed in groups. This model works fine for systems where latency is not critical, but once you start asking “How do we make this real-time?” the story becomes more interesting.
At first, my answer was polling. After all, if we want near real-time, we can just keep checking the directory at short intervals.
Posts
Find all extension methods of a type in csharp using ast-grep
Usually one will use simple find or more advanced regular expression based search to locate codes. How about use other options usig ast to get more accurate results and have the potential to use for codemod? In the past 2 days, I finally figured how to use ast-grep to find code.
Here I will use it to find all extension methods of an class. The rule is configured below.
Posts
Speeding Up DevSecOps: Rethinking the Shift-Left Approach
Introduction In the world of modern software development, Shift-Left Security and DevSecOps have become de facto practices. The idea is simple: security should not be an afterthought but rather an integral part of the development lifecycle, starting as early as possible. While these practices strengthen security and compliance, they often introduce additional steps that can slow down the development pipeline. This raises an important question: Is there a way to speed things up without sacrificing security?