欢迎来到我的博客,代码的世界里,每一行都是一个故事


在这里插入图片描述

🎏:你只管努力,剩下的交给时间

🏠 :小破站

一个特殊的程序员节礼物

10月24日,对程序员来说是个特殊的日子。今年的这一天,打开CodeBuddy时,我注意到了一个醒目的通知横幅。

CodeBuddy首页

页面上方出现了一个"独家活动 New"的标识,提示程序员专属福利——一键速览Lighthouse,还有赠送免费升级的机会。点进去详细了解后发现,这次CodeBuddy联合腾讯云推出了一个挺实在的活动。

1024活动详情

活动页面上写得很清楚:10月24日19:00开始,每天限量送出轻量应用服务器。配置是2核2G4M,虽然不算豪华,但对于跑一些小项目、做测试开发来说完全够用。关键是不限新老用户,这点挺良心的。我看到时长是1个月,地域可以选北京、上海或广州。对于想体验Lighthouse或者临时需要一台服务器做测试的开发者来说,这确实是个不错的福利。

CodeBuddy的新功能让我眼前一亮

领完服务器后,我顺便探索了一下CodeBuddy最近更新的功能。说实话,这次更新确实给了我不少惊喜。

首先是EdgeOne的集成。在对话框上方,我发现多了一个集成选项,可以直接连接EdgeOne。

集成EdgeOne入口

配置过程比我想象的简单,授权后就能看到配置成功的提示。

EdgeOne配置成功

EdgeOne集成好之后,最直观的变化就是部署变得更方便了。以前我要把前端项目部署到CDN上,得先打包,再手动上传,配置各种参数。现在有了CodeBuddy的这个功能,我可以直接在对话框里跟它说"帮我把这个项目部署到EdgeOne",它就能自动完成整个流程。

除了EdgeOne,Lighthouse的集成也做得很好。

部署到EdgeOne

在日常开发中,我经常需要快速验证一些想法或者给同事演示项目。之前的做法是本地跑起来,然后用内网穿透工具分享链接,或者费劲地手动部署到服务器上。现在有了CodeBuddy的Lighthouse集成,这个过程变得异常简单。我只需要告诉CodeBuddy"部署到Lighthouse",它会自动处理代码打包、上传、配置nginx等一系列操作。

部署到Lighthouse

这种"对话式部署"的方式,真的把运维的门槛降低了很多。不需要记住复杂的命令,不需要写部署脚本,甚至不需要登录服务器,一切都在自然语言交互中完成。

我和CodeBuddy的日常

说到CodeBuddy,它已经成了我日常开发中离不开的工具。这不仅仅是因为它能写代码,更重要的是,它已经融入到了我整个开发工作流程中。

平时工作中,CodeBuddy帮我完成了很多任务。有时候是实现一个业务功能,有时候是优化一段性能瓶颈代码,有时候是帮我review代码找出潜在问题。但我觉得更有价值的是,我会经常和它讨论一些技术方案。

比如说,当我遇到一个架构设计的问题时,我会把我的想法告诉CodeBuddy,然后问它有什么建议。它不仅能从技术角度分析可行性,还能提醒我一些可能忽略的边界情况。这种"有个技术伙伴随时在线"的感觉,对独立开发者或者小团队来说特别友好。

除了讨论技术方案,我还经常让CodeBuddy帮我实现一些小工具来简化日常工作。这些工具可能不会出现在正式的项目代码里,但确实能大大提升开发效率。

用CodeBuddy做个实用工具:自动生成Git提交信息

这次我想分享的就是这样一个小工具的诞生过程。

作为开发者,写Git提交信息应该是每天都要做的事情。但说实话,写好一条提交信息并不容易。特别是当一次提交包含了多个文件的修改,涉及多个功能点时,要用简洁准确的语言总结这些变更,还要遵循团队的提交规范,确实需要花点心思。

我之前的做法通常是:先用git status看看改了哪些文件,然后点开每个文件大致回忆一下改了什么,最后组织语言写成一条提交信息。这个过程效率不高,而且容易漏掉一些细节。

在了解到MCP(Model Context Protocol)这个协议后,我突然有了个想法:能不能做一个工具,让它自动分析IDEA中的Git变更文件,然后生成符合规范的提交信息?而且最好能支持指定changelist,因为我习惯在IDEA里用changelist管理不同功能的修改。

第一步:在CodeBuddy IDE中生成MCP服务代码

有了这个想法后,我就在CodeBuddy IDE里跟它说了我的需求。

让CodeBuddy生成MCP服务

CodeBuddy很快就理解了我的意图,但是它第一次生成的是一个py的,我并不是很满意,于是我让他生成一个node的。然后两个版本,让我自己选择。

它生成的代码文件包括:

  • mcp_service.py - MCP服务的主要逻辑
  • mcp_generate_commit.py - 生成提交信息的核心功能
  • requirements.txt - Python依赖包列表
  • 以及对应的Node.js版本文件

看到这些文件,我注意到有一些是我不需要的。于是我告诉CodeBuddy:“我只需要node版本,涉及到py的可以删掉了,并且我还让他进行了一些文件名字的修改。”

删除无关文件

CodeBuddy很贴心地询问我确认哪些文件要保留,哪些要删除。确认后,它就直接执行了删除操作,把不需要的文件都清理掉了。整个过程非常流畅,就像在和一个真实的开发伙伴协作一样。

在CodeBuddy IDE中生成完代码后,我需要验证一下这个MCP服务是否真的能用。这时候就要用到它的兄弟CodeBuddy-cli了。

第二步:使用CodeBuddy-cli验证MCP服务

CodeBuddy-cli是一个命令行工具,类似于gemini-cli那种风格。它可以让我在终端中直接调用CodeBuddy的各种功能,包括管理和测试MCP服务。具体关于CodeBuddy-cli的mcp配置可访问:https://cnb.cool/codebuddy/codebuddy-code/-/blob/main/docs/mcp.md

代码生成好之后,我需要确认这个MCP服务是否已经成功注册到CodeBuddy的配置文件中。我打开终端,运行了codebuddy mcp list命令。

列出MCP服务

从输出可以看到,系统中已经有一些MCP服务在运行了,包括文件工具、MySQL工具、任务管理等。而我刚刚用CodeBuddy IDE生成的acowbo-git-summary服务也成功出现在了列表中,状态显示为"Connected"。

这说明MCP服务已经正常注册并运行了。接下来就是实际测试这个工具的功能了。

第三步:用CodeBuddy-cli测试Git提交信息生成功能

看到服务正常运行,我就迫不及待想试试效果了。我切换到一个有未提交修改的项目目录,然后继续使用CodeBuddy-cli来测试功能。

在终端中,我输入了一个请求:“帮我生成下面的git提交信息”。

开始生成提交信息

CodeBuddy-cli收到请求后,首先告诉我它需要分析当前Git仓库的状态。然后它调用了acowbo_git_summaryanalyze_git_changes这个MCP方法。系统弹出了一个确认框,询问我是否允许执行这个MCP工具。这是一个安全机制,防止未经授权的操作。我选择了"Yes"。

CodeBuddy分析变更

通过CodeBuddy-cli,工具开始分析我的代码变更。从终端输出可以看到,它扫描了项目中所有修改过的文件,提取了变更内容的关键信息。分析完成后,CodeBuddy-cli告诉我已经了解了变更情况,接下来要生成标准的Git提交信息。

这时它又调用了generate_commit_message方法,参数设置为commitType: "feat"language: "zh",表示这是一个新功能提交,并且用中文生成提交信息。

生成的提交信息

生成的结果让我很满意。CodeBuddy-cli不仅给出了一个符合Conventional Commits规范的标题"feat: 优化交通厅数据推送功能和设备在线率计算",还详细列出了所有变更点:

  • 修复了PushTransportationUtil工具类中的项目ID映射配置
  • 改进了设备在线率计算逻辑
  • 新增了设备类型命名转换功能
  • 优化了设备数据查询SQL
  • 更新了设备管理查询条件
  • 完善了测试用例

这些描述准确地反映了我的代码修改内容。更让我惊喜的是,它还按文件分类整理了变更内容,并且标注了影响级别为"高",建议运行完整测试套件后再部署。

这种程度的提交信息,如果让我手写,可能需要花10到15分钟仔细组织语言。而现在,通过CodeBuddy-cli在几秒钟内就帮我完成了。

看到这么完善的提交信息,我在CodeBuddy-cli中随口问了一句:“有直接提交的实现吗(不要直接执行,告诉我就行)?”

可以直接提交

CodeBuddy-cli回答说,它确实可以帮我直接完成Git提交操作,包括:

  1. 添加所有变更文件到暂存区
  2. 使用生成的提交信息创建提交
  3. 验证提交状态

不过它很谨慎地询问我是否需要执行这些操作,而不是自作主张直接提交。这种"有能力但会征求意见"的设计,让我觉得很安心。

IDE与CLI的完美配合

整个过程中,CodeBuddy的IDE和CLI形成了很好的互补:

CodeBuddy IDE的优势在于可视化开发体验。在IDE中,我可以直观地看到生成的代码文件,可以方便地浏览和编辑,可以实时看到CodeBuddy的思考过程。对于编写和调试代码来说,IDE环境无疑更友好。

CodeBuddy-cli的优势则在于快速验证和自动化。通过命令行,我可以快速列出所有MCP服务,可以在任何项目目录下直接调用工具,可以把这些命令集成到shell脚本中实现自动化。而且对于Git这种本身就在终端操作的工具来说,用CLI来生成提交信息显得更加自然。

这种"IDE生成,CLI验证和使用"的工作流程,让整个开发体验变得非常流畅。我可以在IDE中快速实现想法,然后立即通过CLI在实际场景中测试和使用。两者的结合,充分发挥了CodeBuddy生态的完整性。

从想法到实现,就这么简单

回顾整个过程,从我产生"想做一个自动生成Git提交信息的工具"这个想法,到最终能在命令行中实际使用这个工具,总共花了多长时间?

答案是:不到半小时。

这个时间包括了:

  • 在CodeBuddy IDE中描述需求
  • CodeBuddy生成完整的MCP服务代码
  • 清理不需要的文件
  • 用CodeBuddy-cli验证MCP服务注册成功
  • 用CodeBuddy-cli实际测试功能
  • 优化生成效果

如果让我自己从零开始写这样一个工具,首先要研究MCP协议的文档,理解它的工作原理,然后设计代码结构,实现Git分析逻辑,编写提交信息生成算法,还要处理changelist解析、文件变更分析等各种细节。这个过程可能需要几天时间。

但有了CodeBuddy的完整生态,我只需要:

  • 在IDE中清晰表达需求,让CodeBuddy生成代码
  • 在CLI中快速验证和测试功能
  • 整个流程行云流水,无缝衔接

这让我可以把精力集中在"想做什么"而不是"怎么做"上。IDE负责开发,CLI负责使用,两者完美配合。

更重要的是,这个工具现在已经成为我日常开发流程的一部分。每次提交代码前,我都会在终端里用CodeBuddy-cli生成提交信息。它不仅节省了我的时间,还保证了提交信息的质量和规范性。团队其他成员看到我的提交记录后,都说比以前详细多了,问我是怎么做到的。

CodeBuddy带来的开发范式转变

使用CodeBuddy这段时间,我最大的感受是:开发工作的重心正在发生变化。

以前,我们大部分时间花在"写代码"上——搜索资料、阅读文档、调试bug、优化性能。现在,有了CodeBuddy这样的完整生态,很多具体的编码工作可以交给它来完成。我们需要做的,是更清晰地定义问题,更准确地描述需求,更全面地思考方案。

就像这次做Git提交工具的经历,我的主要工作不是敲代码,而是:

  • 发现问题:写提交信息很费时间,而且质量不稳定
  • 提出解决方案:用MCP协议做一个自动生成工具
  • 明确需求细节:支持changelist、生成规范的提交信息、可以指定提交类型
  • 在IDE中实现:用CodeBuddy快速生成MCP服务代码
  • 用CLI验证:通过CodeBuddy-cli测试服务是否正常运行
  • 实际使用:在日常工作中通过CLI生成提交信息

这种"IDE开发 + CLI使用"的工作流程,让开发者可以把更多精力放在创造性的工作上,而不是被重复性的编码任务消耗。IDE适合可视化开发,CLI适合快速使用和自动化,两者各司其职,完美互补。

当然,这并不意味着我们不需要懂技术细节。恰恰相反,只有当你理解底层原理,才能:

  • 准确判断CodeBuddy生成的代码是否正确
  • 知道何时用IDE开发,何时用CLI测试
  • 理解MCP服务的工作机制
  • 根据实际需求优化工具的行为

CodeBuddy提供了强大的生态系统,但如何用好它,充分发挥IDE和CLI各自的优势,还是需要开发者的专业知识和经验。

写在最后

10.24程序员节,CodeBuddy送出的不仅是免费的Lighthouse服务器,更是一种新的开发体验。从EdgeOne集成、Lighthouse部署,到MCP工具生态,再到IDE与CLI的无缝配合,CodeBuddy正在构建一个完整的开发辅助平台。

对我来说,CodeBuddy已经不只是一个"代码生成工具",而是一个完整的开发生态系统:

  • CodeBuddy IDE让我能够可视化地开发和调试
  • CodeBuddy-cli让我能够快速验证和自动化使用
  • MCP协议让各种工具能够无缝集成
  • 腾讯云服务让部署和上线变得轻而易举

这些组件相互配合,形成了一个强大的工作流。它理解我的需求,帮我实现想法,提升我的效率,让我有更多时间去思考和创造。

如果你也是开发者,如果你也经常被一些重复性的工作困扰,如果你也想把更多时间花在真正重要的事情上,不妨试试CodeBuddy的完整生态。从IDE到CLI,从开发到部署,它可能会成为你的得力助手,帮你从繁琐的细节中解放出来,去做更有价值的事情。

毕竟,程序员的价值不在于写了多少行代码,而在于解决了什么问题,创造了什么价值。而CodeBuddy的整个生态系统,正在帮助我们更高效地实现这个目标。

彩蛋

免费拿到了2c2g的服务器

image-20251024193326546

感谢

感谢你读到这里,说明你已经成功地忍受了我的文字考验!🎉
希望这篇文章没有让你想砸电脑,也没有让你打瞌睡。
如果有一点点收获,那我就心满意足了。

未来的路还长,愿你
遇见难题不慌张,遇见bug不抓狂,遇见好内容常回访
记得给自己多一点耐心,多一点幽默感,毕竟生活已经够严肃了。

如果你有想法、吐槽或者想一起讨论的,欢迎留言,咱们一起玩转技术,笑对人生!😄

祝你代码无bug,生活多彩,心情常青!🚀
在这里插入图片描述

Logo

葡萄城是专业的软件开发技术和低代码平台提供商,聚焦软件开发技术,以“赋能开发者”为使命,致力于通过表格控件、低代码和BI等各类软件开发工具和服务

更多推荐