Ni Blog

「拨开迷雾见月明」

推荐 Matt Pocock 的 Skills 仓库:开发前先用 grill-me 把需求问清楚

一个 AI 编程技能合集,以及我最常用的那一个

前言 用 AI 写代码一段时间后发现,真正耗时的往往不是写代码,而是需求没对齐:AI 按自己的理解补全了没说清的规则,写完才发现方向不对,再来回沟通、返工。 后来开始用 Matt Pocock 开源的 Skills 仓库,其中的 grill-me 改变了我开发前的习惯:先让 AI 把需求问透,再动手写代码。 这篇文章推荐这个仓库,重点讲 grill-me,再简单介绍仓库里的其...

拆开 OpenSpec:我理想中的 AI 开发流程

把需求、拆分、开发、归档拆成可替换的 SKILL,去掉没人看的历史归档

前言 目前项目里统一使用 OpenSpec 管理 AI 开发流程。用了几个月,它确实解决了一些问题,但也暴露了几个越来越明显的痛点。 这篇文章整理一下我对开发流程 SKILL 的判断:OpenSpec 做对了什么、哪里不合适,以及我希望换成什么样的流程。 OpenSpec 做了什么 OpenSpec 是一套”规格驱动开发”的工具,核心流程是:提案 → 实现 → 归档。...

抽奖活动的框架设计:从个人状态到共享资源

从活动周期、状态归属到一致性边界

前言 之前讨论过活动生命周期,也讨论过怎样通过职责分离控制框架的复杂度。这次把视角放到抽奖活动上,看看当个人操作开始影响共享资源时,框架需要补上哪些边界。 抽奖很容易被理解成一个简单流程:检查条件,确定结果,再发放奖励。只看单次请求,这个过程并不长。 但如果参与者共享有限的奖池,一次操作就同时涉及个人状态和公共状态。再加上活动有开始和结束时间,系统还需要回答:哪些请求仍然有效,哪些资源...

任务框架的演进:从集中处理到职责分离

🔒 本文已加密,请输入密码阅读。

生命周期的拓展使用:活动道具的归属与过期

🔒 本文已加密,请输入密码阅读。

从每日定时刷新到活动生命周期

🔒 本文已加密,请输入密码阅读。

本地缓存引起的线上事故

前言 在对一个需求进行迭代后,成功上线并且需要策划在gm后台修改相关配置来触发该功能的修改,由于如果直接修改gm后台配置客户端会直接报错,又因为更新客户端会有滞后的问题如果直接更新服务器和配置老客户端就会报错,所以在上线一段时间后再修改配置 问题介绍 该模块本来为通行证通过时间配置来循环重置进度,现改为领取一轮后自动重置,并且有经过多少轮次替换的需求,需要记录下更新前的轮次 ...

线上消息丢失问题

前言 在经过一段时间的工作后,项目中的老功能出现了问题 并且这个问题是概率触发,内网无法复现 接下来简单介绍一下功能 相关介绍 首先在游戏项目,并且很少涉及到玩家与玩家之间的交互,对玩家的数据做了分离,这样做的好处 1、减少高并发问题 2、玩家只能对自己的数据进行控制,数据安全 3、可以对操作数据直接缓存到redis,每次调用接口获取数据首先获取redi...

Spring Ai_MCP

前言 学习了Spring Ai的运用之后 引发思考,类似于Claude这类软件如何获取本地资源 接下来学习的MCP协议就可以解决上面的问题 MCP MCP 全称为:Model Context Protocol,即:模型上下文协议,它是一种社区共建的AI 开放协议,它标准化了应用向 AI 应用提供上下文的方式。 对于MCP的定义可以查看Spring AI官网中的...

Spring Ai_ToolCalling

前言 前面完成了调用AI的基本操作 当前学习使用SpringAi的ToolCalling使用 当用户提出特定问题时,可以执行方法,可以通过方法返回相关内容,也可以执行其他操作 ToolCalling 该方法的使用学习非常简单 主要为@Tool注解和@ToolParam注解 官方文档给的示例 class D...