Recent

Open Delivery Spec update: AI code shouldn't just pass the gate — it should leave evidence
·1560 words·8 mins
Three weeks ago I introduced Open Delivery Spec (ODS), my side project for governing AI-assisted code in CI. Since then the CLI has shipped 5 releases and grown two new pillars: deterministic merge-confidence signals that answer “is this AI PR safe to merge?”, and an auto-generated, standards-based evidence document on every PR. As always, this post sticks to what actually ships — no hype.

From Praising to Bashing—My Attitude Shift Towards GitHub Copilot
·578 words·2 mins
Recently, my attitude towards GitHub Copilot has undergone a significant change: from “praising” to “bashing.” After comparing it with Claude Code, I’ve found that Copilot has clear deficiencies in cross-repository support and “senior engineer” awareness, to the point where I’m no longer willing to discuss problems with it.

Open Delivery Spec—I Built a CI Quality Gate for AI-Generated Code
·1018 words·5 mins
Over the past few months, I’ve been working on an open-source organization called Open Delivery Spec (ODS) in my spare time. The initiative stemmed from the increasing volume of AI-generated code and the lack of reliable governance mechanisms within teams. This article records the thought process, progress, and boundaries based on the project’s real-world status, without any exaggeration.

Conventional Branch 1.1.0 Released—Official Support for AI Coding Agent Branch Prefixes
·692 words·4 mins
The Conventional Branch specification receives its first major update. Version 1.1.0 adds support for AI Coding Agent branch prefixes (ai/, copilot/, cursor/, claude/, codex/), and provides a machine-readable spec.json and agent registry, making the specification useful not only for humans but also for tools.

Jenkinsfile Lint 1.5.0 Released— Standalone Mode Without a Jenkins Server
·691 words·4 mins
Previously, jenkinsfilelint required connecting to an available Jenkins server for syntax validation. Now, v1.5.0 introduces a new standalone mode. With just Docker, you can launch a minimal Jenkins environment locally to validate Jenkinsfile syntax. This article details the implementation idea and usage of this mode.

Which Code in Your Repository is AI-Written—Now There's a Tool to Govern It
·1204 words·6 mins
AI tools like Claude Code by default embed signatures in commits, something many people don’t even notice. Commit Check v2.11.0 introduces AI Attribution Governance, allowing a single line of configuration to reject commits with AI signatures at the CI level. This article also discusses the boundaries of this feature and other pain points Commit Check has solved in the past six months.

Originally Just Wanted to Propose a Doc PR, Ended Up Moving the Project to the Official Jenkins Organization
·1058 words·3 mins
I wrote a small tool to validate Jenkinsfiles, initially just wanting it to appear in Jenkins’ official list of development tools. However, a Jenkins maintainer suggested: why not just transfer the project directly into the jenkinsci organization? This article records the complete process from PR to transfer to an official blog post, including an interesting pitfall encountered along the way.

From Demo to Production—8-Layer Architecture for Agentic Applications
·1559 words·8 mins
This article breaks down an architectural approach for enterprise-grade Agentic Applications from eight dimensions: Agent boundary design, Tool Engineering, observability, evaluation framework, Memory layering, Human-in-the-Loop, cost control, and security.

Conventional Branch Now Has Its Own Domain—conventionalbranch.org
·874 words·2 mins
The Conventional Branch project website has officially migrated from conventional-branch.github.io to conventionalbranch.org. From last year’s user suggestion to this year’s final implementation, let’s talk about the hesitations, pitfalls, and reflections behind the domain migration.

cpp-linter-hooks: The Most Complete pre-commit Solution for C/C++ Projects
·742 words·2 mins
C/C++ tooling in the pre-commit ecosystem has long been limited. cpp-linter-hooks is currently the only pre-commit hook that supports both clang-format and clang-tidy, with built-in compilation database auto-detection, version pinning, and auto-fix capabilities.

Conventional Branch Official Skill Is Here—Install with One Command
·901 words·2 mins
A user opened an issue hoping Conventional Branch could provide an official Agent Skill, which I thought was a very reasonable request. I implemented it the same day, and now it can be downloaded and used with a single npx skills add command. Coincidentally, the project also surpassed 100 Stars this week, so I’ll talk about that too.

mkdocs-ng Maintenance Progress — v1.7.x Fix Summary and Next Steps
·1238 words·3 mins
Since taking over mkdocs-ng maintenance, four versions have been released, over a dozen bugs fixed, and the mergedeep dependency removed. The upcoming v1.8.0 will be a feature release, planning to drop support for older Python versions, remove CDN dependencies from built-in themes, and provide a stable Python API.
