Recent

From Demo to Production—8-Layer Architecture for Agentic Applications
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
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
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
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
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.

Building an AI Agent Inside Jira —— A Jira Copilot Implementation Guide
Many people have asked how to build a GitHub Copilot-like AI Agent inside Jira. This post shares my hands-on experience building one — covering account setup, Jira Automation triggers, webhook integration, and a Skills-based capability system. The core philosophy: leverage existing infrastructure to get it running fast and cheap.

Counter-intuitive Designs in the pi project — From AGENTS.md to "Just Close Your PR First"
After reading Mario Zechner’s “I’ve sold out” and then reviewing AGENTS.md and CONTRIBUTING.md in the pi repository, I found that this project differs from common open-source collaboration methods in many ways. New contributors’ issues and PRs are closed by default, no reviews on weekends, and don’t submit PRs if you don’t understand the code. It seems tough, but behind it is a serious attempt to address a problem: how open-source projects can avoid being bogged down by low-quality contributions in the AI era.

Explain Error Plugin Major Update — AI Auto-Fix, Usage Management, and More AI Providers
The Explain Error Plugin has recently received several important updates: AI Auto-Fix for automatically creating fix PRs, usage statistics and quota management, and added support for four new AI providers: DeepSeek, Qwen, Azure OpenAI, and Custom Okta.

Writing an Article for Twenty-Four Cents—My Experience Using Pi + DeepSeek as a Codex Backup Solution
Codex’s $22 monthly subscription fee and usage limits prompted me to seek a cheaper, stable, and always-ready backup solution. After an unsuccessful attempt with OpenCode, I turned to the Pi + DeepSeek combination. The result was a bit unexpected: writing an entire blog post cost only 0.24 RMB.

AI Agent, or Automation?
In today’s era of rapid AI technological advancement, many companies are chasing the AI wave. But do we truly understand the distinction between “Automation” and “AI Agent”? This article will explore, from a practical application perspective, in which scenarios deterministic automation should be used, and in which scenarios AI Agents should be introduced. Through comparative analysis, we hope to help readers make more informed technical choices in this “all-in-AI” era.

Python Supply Chain 'Nuclear Bomb' Attack Just Happened—A `pip install` Steals All Your Credentials!
A Python supply chain attack has occurred, where a single pip install can steal all your credentials. This post introduces how to use pipguard to intercept malicious packages before installation.

A Three-Year Community Pain Point—I Put Hadolint on PyPI, Ending Manual Installation
Hadolint’s pre-commit integration has long lacked an automatic installation solution, a problem that has plagued the community for three years. This article explains how, by packaging the Hadolint binary into a Python Wheel and publishing it to PyPI, pre-commit can integrate Hadolint with a single command, just like any Python tool, completely eliminating the burden of manual downloads and environment configuration.

From Demo to Production—8-Layer Architecture for Agentic Applications
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
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
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
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
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.

Building an AI Agent Inside Jira —— A Jira Copilot Implementation Guide
Many people have asked how to build a GitHub Copilot-like AI Agent inside Jira. This post shares my hands-on experience building one — covering account setup, Jira Automation triggers, webhook integration, and a Skills-based capability system. The core philosophy: leverage existing infrastructure to get it running fast and cheap.

Counter-intuitive Designs in the pi project — From AGENTS.md to "Just Close Your PR First"
After reading Mario Zechner’s “I’ve sold out” and then reviewing AGENTS.md and CONTRIBUTING.md in the pi repository, I found that this project differs from common open-source collaboration methods in many ways. New contributors’ issues and PRs are closed by default, no reviews on weekends, and don’t submit PRs if you don’t understand the code. It seems tough, but behind it is a serious attempt to address a problem: how open-source projects can avoid being bogged down by low-quality contributions in the AI era.

Explain Error Plugin Major Update — AI Auto-Fix, Usage Management, and More AI Providers
The Explain Error Plugin has recently received several important updates: AI Auto-Fix for automatically creating fix PRs, usage statistics and quota management, and added support for four new AI providers: DeepSeek, Qwen, Azure OpenAI, and Custom Okta.

Writing an Article for Twenty-Four Cents—My Experience Using Pi + DeepSeek as a Codex Backup Solution
Codex’s $22 monthly subscription fee and usage limits prompted me to seek a cheaper, stable, and always-ready backup solution. After an unsuccessful attempt with OpenCode, I turned to the Pi + DeepSeek combination. The result was a bit unexpected: writing an entire blog post cost only 0.24 RMB.

AI Agent, or Automation?
In today’s era of rapid AI technological advancement, many companies are chasing the AI wave. But do we truly understand the distinction between “Automation” and “AI Agent”? This article will explore, from a practical application perspective, in which scenarios deterministic automation should be used, and in which scenarios AI Agents should be introduced. Through comparative analysis, we hope to help readers make more informed technical choices in this “all-in-AI” era.

Python Supply Chain 'Nuclear Bomb' Attack Just Happened—A `pip install` Steals All Your Credentials!
A Python supply chain attack has occurred, where a single pip install can steal all your credentials. This post introduces how to use pipguard to intercept malicious packages before installation.

A Three-Year Community Pain Point—I Put Hadolint on PyPI, Ending Manual Installation
Hadolint’s pre-commit integration has long lacked an automatic installation solution, a problem that has plagued the community for three years. This article explains how, by packaging the Hadolint binary into a Python Wheel and publishing it to PyPI, pre-commit can integrate Hadolint with a single command, just like any Python tool, completely eliminating the burden of manual downloads and environment configuration.

From Demo to Production—8-Layer Architecture for Agentic Applications
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
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
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
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
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.

Building an AI Agent Inside Jira —— A Jira Copilot Implementation Guide
Many people have asked how to build a GitHub Copilot-like AI Agent inside Jira. This post shares my hands-on experience building one — covering account setup, Jira Automation triggers, webhook integration, and a Skills-based capability system. The core philosophy: leverage existing infrastructure to get it running fast and cheap.

Counter-intuitive Designs in the pi project — From AGENTS.md to "Just Close Your PR First"
After reading Mario Zechner’s “I’ve sold out” and then reviewing AGENTS.md and CONTRIBUTING.md in the pi repository, I found that this project differs from common open-source collaboration methods in many ways. New contributors’ issues and PRs are closed by default, no reviews on weekends, and don’t submit PRs if you don’t understand the code. It seems tough, but behind it is a serious attempt to address a problem: how open-source projects can avoid being bogged down by low-quality contributions in the AI era.

Explain Error Plugin Major Update — AI Auto-Fix, Usage Management, and More AI Providers
The Explain Error Plugin has recently received several important updates: AI Auto-Fix for automatically creating fix PRs, usage statistics and quota management, and added support for four new AI providers: DeepSeek, Qwen, Azure OpenAI, and Custom Okta.

Writing an Article for Twenty-Four Cents—My Experience Using Pi + DeepSeek as a Codex Backup Solution
Codex’s $22 monthly subscription fee and usage limits prompted me to seek a cheaper, stable, and always-ready backup solution. After an unsuccessful attempt with OpenCode, I turned to the Pi + DeepSeek combination. The result was a bit unexpected: writing an entire blog post cost only 0.24 RMB.

AI Agent, or Automation?
In today’s era of rapid AI technological advancement, many companies are chasing the AI wave. But do we truly understand the distinction between “Automation” and “AI Agent”? This article will explore, from a practical application perspective, in which scenarios deterministic automation should be used, and in which scenarios AI Agents should be introduced. Through comparative analysis, we hope to help readers make more informed technical choices in this “all-in-AI” era.

Python Supply Chain 'Nuclear Bomb' Attack Just Happened—A `pip install` Steals All Your Credentials!
A Python supply chain attack has occurred, where a single pip install can steal all your credentials. This post introduces how to use pipguard to intercept malicious packages before installation.

A Three-Year Community Pain Point—I Put Hadolint on PyPI, Ending Manual Installation
Hadolint’s pre-commit integration has long lacked an automatic installation solution, a problem that has plagued the community for three years. This article explains how, by packaging the Hadolint binary into a Python Wheel and publishing it to PyPI, pre-commit can integrate Hadolint with a single command, just like any Python tool, completely eliminating the burden of manual downloads and environment configuration.
