从薅 token 到管 skill:我的 pks 工具落地实践

<p>之前写过一篇文章:<a href="https://lichuanyang.top/posts/26060/">https://lichuanyang.top/posts/26060/</a> . 教大家构建与Agent无关的工作流,随时能拉起不同的Agent工作,从而能顺畅用上各个Agent提供的免费、试用套餐。这么实践下来,一个明显会变得繁琐的事情就是对于skill的管理。因此,我又写了一个工具,实现在不同Agent、不同项目间管理skills.</p>

2026/7/1
阅读更多

把笔记、微信读书、知乎装进 Obsidian:我基于llm-wiki知识中枢搭建实录

<p>前段时间,偶然看到karpathy大神提出的llm-wiki, 有种相见恨晚的感觉。我一直是很喜欢写些东西的,但是写完之后,问题就是大量内容散落在各个地方,一直没有精力对它们进行有效的管理。而看到了llm-wiki后,我就意识到,之前写的那些东西,要开始发挥作用了。</p>

2026/6/26
阅读更多

免费AI视频生成器:我如何用零成本做出带旁白字幕的多场景AI视频

受够了AI视频工具按秒计费?我开源了一个100%免费的AI视频生成器,文字、图片、视频、配音全部免费,一键生成带旁白字幕的多场景AI视频。

2026/6/16
阅读更多

Agnes免费模型真能白嫖视频?我改造了ViMax来试试

Agnes AI 放出了免费视频模型 Agnes-Video-V2.0,无需GPU、无需信用卡。我把开源视频框架 ViMax 改造成了 Agnes 全家桶方案,顺便做了一堆易用性优化。

2026/6/11
阅读更多

教你薅token(二):构建agent无关的skills管理工作流

上篇说"文档才是核心",那文档怎么管?我用400行bash写了个skill管理器,把AI工作流打包成可移植的技能包,按需装到项目里,不绑定任何Agent平台。

2026/6/4
阅读更多

教你薅token:构建agent无关的AI工作流

我折腾了一阵子AI Agent,发现它本质上就是把文档和prompt拼来拼去。与其花钱订阅,不如自己维护好项目文档,然后哪里免费token用哪里。

2026/6/3
阅读更多

用 AI Agent 完成 Hexo 主题迁移:从 Next 到 Butterfly 的全自动化实践

用 AI Agent 全自动完成 Hexo 主题从 Next 到 Butterfly 的迁移,1000+ 行配置文件的自动映射与验证。

2026/5/28
阅读更多

Vercel封禁163邮箱后,我是怎么恢复博客的

Vercel 封禁 163 邮箱导致博客部署失败的亲身经历,以及从发现问题到迁移恢复的完整解决方案。

2026/5/11
阅读更多

用LLM管理安全开发规范:一次llm-wiki实践

用 LLM 管理团队安全开发规范的实践,基于 Karpathy 的 llm-wiki 思路解决规范文档散落的问题。

2026/5/11
阅读更多

Vaadin框架教程:Java工程师的前端开发秘籍

介绍 Vaadin 框架如何让后端工程师无需深入前端生态就能高效开发 Web 界面,解决后端开发前端的痛点。

2024/3/6
阅读更多

hexo多语言方案总结及最佳实践

总结 Hexo 多语言方案的两种思路:文章维度切换语言和独立站点维护,对比各方案的优劣和最佳实践。

2024/1/22
阅读更多

知乎增强工具-评论时间精确到秒

油猴脚本:将知乎评论区时间精确到秒,解决知乎更新后时间显示混乱的问题。

2023/12/22
阅读更多

kubernetes是什么-实用向教程

从开发人员视角介绍 Kubernetes 是什么,不关注部署和架构,专注于如何利用 K8s 特性提升开发效率。

2023/1/28
阅读更多

怎么更科学的用知乎摸鱼

分享一个优化知乎 PC 端使用体验的油猴脚本,让上班摸鱼更高效。

2022/12/28
阅读更多

读书笔记《系统之美》,如何面对现实中的复杂问题

《系统之美》读书笔记,学习面对复杂问题的系统性思考方法,建立正确的思维框架。

2022/5/16
阅读更多

分布式系统设计中的通用方法

分布式系统设计通用方法总结,涵盖多节点有状态系统的核心设计模式和实践经验。

2022/4/13
阅读更多

高并发解决方案很难吗?轻松聊清楚高并发设计

从数据库瓶颈的本质出发,轻松讲清楚高并发设计的核心思路和常见解决方案。

2022/3/29
阅读更多

SSP、DSP、RTB、ADX都是什么?讲讲互联网广告的概念与发展

从广告的本质出发,系统梳理互联网广告的发展脉络,讲清楚 SSP、DSP、RTB、ADX 等核心概念及程序化交易的底层逻辑。

2022/3/7
阅读更多

从redolog,undolog到隔离级别,刨根问底,讲清楚事务和ACID

从 redo log、undo log 到隔离级别,刨根问底讲清楚数据库事务和 ACID 的完整机制。

2022/2/7
阅读更多

java项目低学习成本使用kubernetes的实践经验

创业公司低成本使用 Kubernetes 的实践经验,从项目创建到部署监控的全流程开源方案。

2022/1/26
阅读更多

剧变中的2021-一个中年工程师的年终总结

2021 年终总结:行业剧变下的职业转折、个人成长目标的进展,以及对未来的思考。

2022/1/4
阅读更多

kubernetes环境下做金丝雀发布的一种思路

在 Kubernetes 环境下实现金丝雀发布的简单思路,通过逐步引流新版本来降低发布风险。

2021/12/23
阅读更多

prometheus教程: 一篇文章讲懂prometheus

Prometheus 监控系统教程,从设计理念出发讲清楚它如何用简单设计支撑复杂功能。

2021/11/10
阅读更多

实现一个简单的java版本高性能获取ip地址所属国家工具

用 Java 实现高性能 IP 地址归属国家查询工具,基于 IP2Location 数据源,支持定时更新。

2021/10/12
阅读更多

iterm2配置ssh书签, 实现记住密码和自动登录

通过 iTerm2 配置 SSH 书签,实现记住密码和自动登录,告别反复输入 IP 和密码的痛苦。

2021/10/8
阅读更多

怎样做一个好的技术分享

从选题、结构到演讲技巧,系统性地分享如何做出一次 80 分以上的技术分享。

2021/8/31
阅读更多

云原生究竟是什么

从 Cloud Native 的字面含义出发,系统梳理云原生的定义、核心理念和技术生态。

2021/6/9
阅读更多

读书笔记 稻盛和夫《干法》-思考应该怎样去工作

稻盛和夫《干法》读书笔记,反思工作态度和工作方法,探讨如何在工作中实现个人价值提升。

2021/5/15
阅读更多

review的个人价值

从个人成长角度分析 code review 的价值,不仅是发现 bug,更是团队知识共享和代码质量提升的关键手段。

2021/4/27
阅读更多

户口?大厂?高薪?生活?聊聊应届程序员的职业选择

结合国企、大厂、小公司的工作经历,为应届程序员提供城市和公司选择的务实建议。

2021/3/30
阅读更多

RPC接口将所有输入输出封装成类是合理设计吗

深入分析 RPC 接口设计中将输入输出封装成 request/response 类的做法,探讨何时应该封装、何时过度设计。

2021/3/16
阅读更多

程序员做业务开发的价值

从个人经历出发,分析业务开发和底层开发的真实差异,打破「底层开发更利于成长」的认知误区。

2021/3/12
阅读更多

设计模式的原则,设计模式究竟是什么

从面向对象的四大特性出发,帮助程序员真正理解设计模式的本质和正确的学习心态。

2021/3/4
阅读更多

我提升开发效率的经验

六年工作经验的程序员分享提升开发效率的系统性方法,强调在八小时内高效完成工作。

2021/2/1
阅读更多

通过合理的设计降低软件开发复杂度

从模块划分、消除重复、解耦等方面,系统分析软件复杂度的产生原因和降低方法。

2021/1/4
阅读更多

信息传播过程中的衰减

通过两个亲身经历的案例,分析信息在传播过程中的失真和衰减,揭示二手信息的不可靠性。

2020/12/29
阅读更多

看房小记-2020北京学区

2020 年北京西城学区房看房经历记录,分享选房思路和学区政策对购房决策的影响。

2020/12/12
阅读更多

读书感悟:文明、现代化、价值投资与中国

李录《文明、现代化、价值投资与中国》读书感悟,从文明发展到价值投资的系统性认知升级。

2020/12/12
阅读更多

读书笔记-我曾走在崩溃的边缘

俞敏洪《我曾走在崩溃的边缘》读书笔记,回顾新东方从创立到壮大的创业历程和关键决策。

2020/10/31
阅读更多

[翻译][关于分布式架构和系统设计]分布式系统的模式-综述

Martin Fowler 文章翻译,总结企业级架构中分布式系统的通用模式(pattern),涵盖共识、复制、分区等核心主题。

2020/8/10
阅读更多

redis的对象

Redis 对象系统源码解析,介绍字符串、列表、哈希、集合、有序集合等对象的底层实现方式。

2020/8/8
阅读更多

redis里的数据结构

Redis 底层数据结构详解,包括 SDS、ziplist、quicklist、dict、skiplist 等核心数据结构的设计与优化。

2020/7/11
阅读更多

设计模式备忘录

设计模式速查手册,用精炼语言描述 23 种设计模式的核心要点、典型场景和关键英文术语。

2020/4/8
阅读更多

聊聊程序员的职业生涯,我对程序员这个职业的理解

从「做的事」和「能力模型」两个维度,分享对程序员职业的长期思考和认知迭代。

2020/3/18
阅读更多

通过mysql批量操作不生效问题聊聊java里mysql的batch

分析 Java 中 MySQL 批量操作不生效的常见原因,排查 batch 性能异常的完整思路。

2020/3/13
阅读更多

【实践经验】单元测试怎么写

结合前人观点和实践经验,总结单元测试该怎么写,从目的、原则到具体写法的系统性指南。

2019/9/26
阅读更多

关于rocketmq的readQueue和writeQueue

解释 RocketMQ 中 MessageQueue 为什么要拆分成 readQueue 和 writeQueue 的设计原因。

2019/5/18
阅读更多

数据分析的利器-clickhouse介绍

ClickHouse 实时分析数据库入门介绍,从 Yandex 的业务需求出发讲解 ClickHouse 的设计背景和核心特性。

2018/11/14
阅读更多

通过位运算转换大小写

利用位运算巧妙实现英文大小写转换,深入理解 ASCII 码的二进制特征。

2018/11/14
阅读更多

activemq多线程消费的不同处理方式

对比 ActiveMQ 消费端实现多线程的三种方式(多 connection、多 session、多 consumer),分析它们在性能上的差异。

2018/9/16
阅读更多

高并发下作余额扣减的一些经验

高并发场景下余额扣减的实战经验,解决用户并发操作同一账户导致的计费系统问题。

2018/8/25
阅读更多

java细节:三目运算符和自动拆箱

通过 FindBugs 发现的问题,深入分析 Java 三目运算符中的自动拆箱陷阱和装箱开销。

2018/5/10
阅读更多

设计一个开源的北京地铁路线规划小工具 java版本

用 Java 实现北京地铁路线规划工具,从高德地图接口获取数据,计算最少站数路线。

2018/3/23
阅读更多

redis cluster的数据迁移

Redis Cluster 数据迁移的详细过程,包括 slot 转移机制和迁移过程中集群可用性分析。

2018/2/24
阅读更多

jstorm源码解析之循环任务AsyncLoopThread

JStorm 自定义循环任务工具 AsyncLoopThread 的源码解析,了解 supervisor/nimbus 心跳等功能的底层实现。

2018/2/8
阅读更多

activemq特性之持久化

深入介绍 ActiveMQ 的三种持久化方式(JDBC、KahaDB、LevelDB),重点讲解官方推荐的 KahaDB 持久化机制。

2018/2/2
阅读更多

activemq的安装及基本使用

ActiveMQ 的安装部署、核心配置文件说明,以及基本 API 使用教程,适合入门学习。

2018/1/30
阅读更多

activemq系列-概述

ActiveMQ 消息中间件系列开篇,介绍消息中间件的核心作用(解耦和平峰)以及 JMS 协议的基本概念。

2018/1/22
阅读更多

hexo教程:博客系统搭建及部署到github

Hexo 博客系统入门教程,从安装初始化到部署 GitHub Pages,适合后端程序员快速搭建个人博客。

2018/1/19
阅读更多

jstorm的监控metrics数据输出到第三方存储介质

将 JStorm 监控 metrics 数据输出到第三方存储介质的方案,方便历史数据查询和分析。

2017/9/6
阅读更多

camel系列之camel debugger的使用

Apache Camel 调试工具 debugger 的使用指南,帮助在 Camel 高度封装的数据路由框架中高效排查问题。

2017/8/3
阅读更多

jstorm源码解析之bolt异常处理

从源码角度分析 JStorm bolt 中未捕获异常导致 worker 进程退出的机制,揭示背后的完整设计。

2017/8/3
阅读更多

log4j动态添加appender

通过代码动态修改 Log4j 配置的实战示例,以 KafkaAppender 为例演示运行时添加 appender。

2017/6/30
阅读更多

【翻译】java里编写基准测试的一些经验

翻译文章:Java 基准测试编写经验,介绍 JMH 使用方法和常见的基准测试陷阱。

2017/6/5
阅读更多

java线程池:获取运行线程数并控制线程启动速度

解决线程池中任务提交速度远快于执行速度导致内存爆满的问题,介绍在提交前检查运行线程数的方法。

2017/5/26
阅读更多

maven里的mirror和repository: 配置多repository

厘清 Maven 中 mirror 和 repository 的区别,介绍配置多仓库和镜像代理的正确方式。

2017/5/19
阅读更多

使用maven shade plugin 打可执行Jar包

使用 Maven Shade Plugin 打可执行 Fat Jar,替代 Eclipse 的 Export 功能,指定 Main 方法一键运行。

2017/5/14
阅读更多

activemq plugin开发指南及示例

ActiveMQ 插件(plugin)开发的完整指南,介绍如何通过插件机制方便地添加自定义功能,比直接修改源码更安全高效。

2017/5/5
阅读更多

通过加入classpath的形式实现命令行运行java程序时引入第三方jar包

通过 Shell 脚本设置 CLASSPATH,实现命令行运行 Java 程序时引入第三方依赖。

2017/5/3
阅读更多

解决fatjar的 "java.lang.SecurityException: Invalid signature file digest for Manifest main attributes" 问题

解决 Fat Jar 合并时因签名校验导致的 SecurityException,理解 META-INF 签名机制及排除签名文件的方法。

2017/4/27
阅读更多

通过实际操作理解redis cluster原理

通过实际操作理解 Redis Cluster 的数据分片机制、16384 个哈希槽的设计和节点路由原理。

2017/4/14
阅读更多

一种实现在hbase中存储set的思路

在 HBase 中实现 Set 数据结构的存储方案,解决 HBase 原生不支持集合类型的限制。

2017/4/10
阅读更多

log4j2.xml配置示例及与log4j的区别

Log4j2 XML 配置实战,对比 Log4j 的主要变化:新节点命名、属性配置方式和归档压缩支持。

2017/4/10
阅读更多

不实现equals方法的情况下比较java list

在不修改第三方类的 equals 方法前提下,利用 Apache Commons 的工具方法比较两个 List 的值。

2017/4/10
阅读更多

使用lua脚本和jedis实现redis的hmsetnx命令,操作hash表时不覆盖原有数据

用 Lua 脚本和 Jedis 实现 Redis 缺失的 hmsetnx 命令,在批量操作 Hash 时不覆盖已有数据。

2017/4/6
阅读更多

vitualbox虚拟机安装centos 7 及ssh访问、自启动等配置

VirtualBox 安装 CentOS 7 的完整教程,包括 SSH 访问配置和虚拟机自启动设置。

2017/4/2
阅读更多

在java独立进程(standalone app)中嵌入hawtio监控

在 Java 独立应用中嵌入 Hawtio 监控系统的完整指南,实现应用内直接查看 JMX 等监控数据。

2017/4/1
阅读更多

java日志系统简介: 从tomcat大量打印debug日志说起

从 Tomcat debug 日志问题切入,介绍 Java 两大日志体系(log4j 和 slf4j+logback)的架构和互操作。

2017/3/31
阅读更多

Java kryo/protobuf/protostuff序列化 or Json 性能对比

对比 Java 主流序列化方案(kryo、protobuf、protostuff、fastjson)的时间性能和空间性能,通过实测数据帮你选择最合适的序列化工具。

2017/3/2
阅读更多

java分布式锁入门实战

Java 分布式锁的实战入门,介绍基于 Zookeeper 和 Redis 的分布式锁实现方式,只讲使用不讲原理。

2017/2/20
阅读更多

leetcode第三题: 输出不包含重复字母的最长子串

LeetCode 第三题详解:滑动窗口法求解不含重复字符的最长子串长度。

2017/2/15
阅读更多

java多线程实现三个字母顺序输出

通过多线程顺序输出 ABC 的经典例子,加深对 Java wait/notify 机制的理解,展示锁策略的设计思路。

2017/1/25
阅读更多

一次kafka空间激增排查:kafka的数据压缩、批量发送等

一次 Kafka 磁盘空间激增问题的排查过程,深入理解 Kafka 数据压缩机制和批量发送策略。

2016/12/29
阅读更多

java里128有何魔力? 聊聊Integer的缓存

揭秘 Java Integer 类在 128 这个魔力数字背后的缓存机制,理解自动装箱的底层原理。

2016/12/2
阅读更多

storm/jstorm生态与周边工具,storm连接activemq,kafka,hdfs等

Storm/JStorm 生态工具全景,介绍如何连接 ActiveMQ、Kafka、HDFS 等外部系统构建完整数据管道。

2016/11/16
阅读更多

jstorm UI 介绍

JStorm UI 功能详解,包括 Cluster Summary、Topology Summary 等监控项的说明和二次开发指南。

2016/11/16
阅读更多

五分钟学会写storm代码: jstorm/storm编码原理与普通java程序的区别

Storm/JStorm 编程快速入门,重点说明 topology 运行时与传统 Java 程序在初始化上的关键区别。

2016/11/16
阅读更多

activemq web console的权限配置

介绍 ActiveMQ Web Console 基于 Jetty 的权限管理配置方法,实现不同用户角色的访问控制。

2016/1/5
阅读更多

storm ui 中一些关键属性的含义

Storm UI 中关键监控指标的含义解读,帮助运维人员快速定位 topology 性能瓶颈。

2015/11/6
阅读更多

activemq 5.6 连接池的内存泄露问题

记录 ActiveMQ 5.6 连接池存在的严重内存泄露问题,通过 jmap 监控定位 ReentrantLock 和 PooledConnection 的异常增长。

2015/8/8
阅读更多

关于apache camel的消息转发效率

分析 Apache Camel 消息转发的工作原理和效率瓶颈,为大数据量场景下的性能优化提供思路。

2015/8/8
阅读更多

一篇不错的lda模型入门文档

LDA(Latent Dirichlet Allocation)主题模型入门学习笔记,帮助理解 LDA 的基本概念和应用场景。

2012/12/2
阅读更多

wordcount代码

Hadoop WordCount 经典示例代码及运行过程说明,大数据入门必读。

2012/10/28
阅读更多

hadoop基本的学习资料

Hadoop 学习资料整理,包含 WordCount 运行过程详解、HDFS 命令介绍等入门资源汇总。

2012/10/28
阅读更多