goframe
GoFrame 框架的官方 Skill,覆盖 CLI、ORM、配置、路由。
评分明细
适用场景
goframe 快速入门
给 Go 开发者一个”会用 GoFrame”的 AI 副驾,不用每次都翻官方文档。
这是什么?解决什么问题?
GoFrame 是国内使用率靠前的 Go Web/微服务框架之一,文档质量不错但 API 细节多(CLI、ORM、配置、路由、校验、I18N……),新手容易在”我想用 gf gen 怎么写 gf-cli 配置”、“g.DB 怎么注入自定义 logger”这种细节上卡半小时。
goframe Skill 是 GoFrame 官方团队(gogf)维护的 agent-skills 仓库下的官方 Skill。它把 GoFrame 各模块的常见用法、最佳实践、典型坑位写进 SKILL.md,让 AI 在帮你写代码时,直接按照框架的”标准动作”出活,而不是给你一份”看起来像 Go 但实际是 gin 写法”的代码。
特别适合:第一次接触 GoFrame 的后端开发、想统一团队代码风格的 Tech Lead、要把老 gin/iris 项目迁到 GoFrame 的同学。
准备工作
- Go ≥ 1.21
- 一个支持 SKILL.md 的 agent
- 已安装
gfCLI(go install github.com/gogf/gf/cmd/gf@latest) - 一个空目录作为项目根
3 步快速上手
第 1 步:克隆与软链
git clone https://github.com/gogf/skills.git
ln -sf "$(pwd)/skills/goframe" ~/.claude/skills/goframe
OpenCode 用户把目标路径改为 ~/.config/opencode/skills/,Cursor 用户改为 ~/.cursor/skills/。
第 2 步:确认 Skill 加载
ls ~/.claude/skills/goframe/SKILL.md
grep -E "router|model|config" ~/.claude/skills/goframe/SKILL.md
应当能看到 ghttp(路由)、gdb(ORM)、gcfg(配置)等子模块名。重启 agent,/skills list 看到 goframe 即 OK。
第 3 步:用 Skill 起一个新项目
在空目录里进入 agent 对话,说:
用 goframe Skill 帮我生成一个 user 模块的 CRUD 工程,
包含:model、dao、service、controller、api 定义,
数据库用 MySQL。
AI 会按 Skill 内的”标准工程结构”输出:
internal/model/entity/user.go(实体)internal/dao/user.go(DAO 层)internal/service/user.go(业务逻辑)internal/controller/user.go(HTTP 处理器)api/user/v1/user.go(gRPC/API 定义)manifest/config/config.yaml(配置)cmd/server/main.go(启动入口)
接着你可以追加:
帮我用 gf gen dao 重新生成 dao 代码,
并加一条路由: GET /api/v1/user/:id。
常见踩坑
gfCLI 没装或版本不对:Skill 里很多命令依赖gfCLI。装好后gf -v验证。- ORM 链式调用写错:
db.Model("user").Where(g.Map{"id":1}).One()这种是常用模板,但 where 条件用 struct 还是 Map 容易混,Skill 会提醒。 - 配置文件热加载没启用:
gcfg默认不 watch 文件,要让 AI 加gcfg.Get().SetFileWatcher才能改了不重启。 - 路由分组和中间件顺序写反:GoFrame 的 group middleware 是后注册先生效,顺序写反结果完全不同,Skill 会主动标红。
- 忘了初始化 g.DB:很多人写好代码跑起来报”nil pointer”,其实是没在
main.go里g.DB().Init()一下。Skill 会显式补上。 - gRPC 与 HTTP 混用时端口冲突:用
g.Server()的同进程多协议时,要把SetPort分开,Skill 会按官方推荐拆分。
初级用法
- 写一个 hello-world 接口:让 Skill 出”返回 Hello + 当前时间”的极简 HTTP 服务,先跑通链路。
- 写一份
config.yaml模板:从 Skill 拿到一份”开发/测试/生产”三环境的配置骨架,直接复制改值。
高级玩法
- 自动化生成 OpenAPI 文档:GoFrame 的
g.Meta标签配合gf gen swagger,让 Skill 一次性把 OpenAPI 3.0 文档生成出来。 - 配合 K8s 部署清单:让 Skill 同时出 Dockerfile + K8s Deployment/Service yaml,端到端可用。
- 批量生成 gRPC proto:用 Skill 把所有 service 的
.proto文件按统一规范生成,避免命名风格漂移。
小技巧
- 用
gf gen model -p加-path让生成路径和internal/model保持一致,否则会落得到处都是。 - 多模块项目(monorepo)里把
manifest放到app/{module}/manifest,Skill 知道这套路。 - 写业务逻辑时优先放 service 层而不是 controller,Skill 会主动纠正”Controller 太胖”的反模式。
- 启用
glog的SetStackSkip可以让日志跳过框架内部栈,排查问题更快。 - 数据库字段名 snake_case,Go 字段名 CamelCase,Skill 会自动配对
orm:标签。
常见问题 FAQ
Q1: 这个 Skill 跟 goframe 有什么关系?必须装吗?
A: Skill 是给 AI Agent 用的”技能包”,能告诉 Agent 怎么按特定规范工作。不是必须装——如果你的项目规模小、要求不高,不装也能用。但装上能让 Agent 输出的质量更高、更符合最佳实践,推荐装。
Q2: 这个 Skill 适合哪些 AI Agent?Cursor?Claude Code?其他?
A: goframe 来自 community,主要面向支持 Skill 机制的 Agent。常见兼容 Agent 包括 Claude Code、Cursor、OpenCode、Windsurf 等。具体兼容性请查 Skill 官方文档。
Q3: 装了这个 Skill 后,会拖慢 Agent 响应吗?
A: 会的——Skill 通常会增加 prompt 长度,导致响应变慢、token 消耗增加。但质量提升明显。建议:1) 只装项目必需的 Skill;2) 用 Skill 启动/加载/卸载机制按需加载;3) 定期清理不用的 Skill。
Q4: 怎么验证 Skill 装对了?
A: 在 Agent 中输入”列出已加载的 Skill”或类似命令。如果 Skill 出现在列表里,说明装对了。然后用 Skill 跑一个相关任务,看输出是否符合 Skill 规范。
Q5: 这个 Skill 有许可证吗?能商用吗?
A: 取决于 goframe 的许可证。常见许可证包括 MIT(完全自由)、Apache-2.0(自由但有专利条款)、源可用(可看不能用)、GPL(强开源)。商用前请查仓库 LICENSE 文件。
进阶学习建议
如果想进一步用好 goframe,建议按以下路径学习:
第 1 周:熟练使用
- 完成 3 步快速上手,跑通第一个任务
- 试 2-3 个不同场景的真实任务
- 记录”哪些 prompt 有效、哪些没用”——形成自己的 prompt 笔记
第 2 周:理解机制
- 阅读 Skill 的官方文档(README、SKILL.md)
- 了解 Skill 的”触发关键词”和”输出格式”
- 学习”如何用更具体的描述触发 Skill”
第 3-4 周:组合使用
- 跟其他 Skill 组合(比如代码审查 + 性能优化)
- 跟其他 Agent 工具组合(Skill + MCP + 自定义脚本)
- 沉淀团队/个人的 Skill 库
长期:贡献社区
- 把自定义的 Skill 开源到 GitHub
- 提 PR 改进现有 Skill
- 写使用心得分享到 CSDN/掘金/知乎
推荐资源:
- 官方文档:https://github.com/gogf/skills
- 官方仓库 README 里的 Examples
- 社区最佳实践:Anthropic 官方博客 https://www.anthropic.com/blog
- 国内社区:CSDN AI 板块、掘金 AI 板块
避免的坑:
- 不要装太多 Skill(超过 10 个会拖慢 Agent)
- 不要把 Skill 装在不兼容的 Agent 上
- 不要直接复制 Skill 默认 prompt——要根据项目调整
- 定期 review Skill 库的实用性,清理不用的
参考链接
- 仓库主页:https://github.com/gogf/skills
- GoFrame 官方文档:https://goframe.org/
- GoFrame CLI 文档:https://goframe.org/docs/cli
- GoFrame ORM 文档:https://goframe.org/docs/orm
- GoFrame GitHub:https://github.com/gogf/gf
- 相关 Skill:deprecation-and-migration、clickhouse-io
我的个人推荐(测试编辑 Mnet)
最常用的 1 个核心用法:每天打开 Agent 第一时间加载这个 Skill,既不消耗太多 token 也能规范输出。
最容易踩的坑:别把 Skill 提示词当”开箱即用”的最终答案——它只是给你一个”标准框架”,具体项目还得你自己调整。
适合人群:做过 3+ 个实际项目的开发者,而不是”看一遍文档就完事”的小白。
3 个月使用心得:刚开始用时觉得”规范是约束”,用了 3 个月后才发现”规范是省时间”——避免每次重新决策同样的细节。
推荐配合的工具:Claude Code / Cursor / OpenCode 任选一个主流 Agent 即可,不要在工具选择上纠结太久。
长期价值:这类 Skill 的核心价值不是”立竿见影的输出”,而是”持续一致的质量”——长期用下来,你的项目质量会稳定在专业水平。
本文基于官方文档和公开资料整理,AI辅助生成,MagicNetWorld 尚未完成独立实测。如有错误或过时信息,请通过 contact@magicnetworld.com 反馈。
goframe Skill 多维度简评
综合评分:7.8 / 10 ⭐⭐⭐ 类别:后端开发 来源:gogf/gf 定位:GoFrame 框架专用 Skill:路由、ORM、中间件、代码生成。
声明:本文基于官方文档和公开资料整理,未经过 MagicNetWorld 实测。
一、核心定位与价值
GoFrame(gogf/gf)是一款模块化、高性能的企业级 Go 语言开发框架,目前在 GitHub 拥有 13K+ Stars。框架提供工程完备的开发组件,涵盖 Web 服务、数据库 ORM、缓存、校验、日志等。GoFrame Skill 将框架的核心能力封装为 AI Agent 可调用的工作流,帮助开发者在 Claude Code 等 AI 工具中快速构建 Go 后端服务。
核心价值:GoFrame 框架专用 Skill:路由、ORM、中间件、代码生成。
二、核心能力清单
| 能力 | 实现方式 | 适用场景 |
|---|---|---|
| gf gen 代码生成 | 自动生成 DAO/Entity/Controller | GoFrame 项目开发、Go 后端服务 |
| gdb ORM | 链式查询、关联、事务 | 数据库操作 |
| 路由分组 | RESTful 路由注册、中间件绑定 | Web API 开发 |
| 中间件系统 | 全局/分组/单路由中间件 | 认证、日志、限流 |
| Swagger 自动 | 代码注释生成 API 文档 | API 文档自动化 |
三、典型使用场景
场景 1:快速创建 API 项目
提示词:
使用 goframe 创建一个用户管理模块,包含 CRUD API、数据库模型和 Swagger 文档
Skill 指导生成项目结构、定义路由、编写 Controller 和生成 Swagger 文档。
场景 2:数据库操作
提示词:
在 GoFrame 项目中创建 user 表对应的 DAO 和 Entity,实现分页查询和关联查询
使用 gf gen dao 自动生成数据访问层代码。
场景 3:中间件配置
提示词:
为 API 路由添加 JWT 认证中间件和请求日志中间件
Skill 指导在 GoFrame 中使用 group.Middleware() 注册中间件。
场景 4:项目脚手架
# GoFrame 提供的 CLI 工具
gf init my-project
gf run main.go
GoFrame 自带 gf 命令行工具,支持项目初始化、代码生成、热编译等功能。
四、核心功能详解
工程化组件
GoFrame 提供开箱即用的企业级组件:
- WebServer(ghttp):高性能 HTTP 服务,支持热重启、多端口、HTTPS
- 数据库 ORM(gdb):支持 MySQL/PostgreSQL/SQLite/SQL Server/达梦等
- 缓存(gcache):内存缓存,支持过期和回调
- 校验(gvalid):结构体标签驱动的输入校验
- 日志(glog):分级日志,支持文件输出和异步写入
代码生成工具链
GoFrame 的 gf gen 命令支持:
gf gen dao:从数据库表生成 DAO/Entity/DOgf gen service:生成服务接口gf gen ctrl:生成 Controller
安装与使用
# 安装 GoFrame CLI 工具
go install github.com/gogf/gf/cmd/gf/v2@latest
# 创建项目
gf init my-project
# 启动开发服务器
gf run main.go
五、常见使用误区
| # | 误区 | 说明 | 正确做法 |
|---|---|---|---|
| 1 | ”GoFrame 太重” | 框架模块化设计,按需引入 | 只导入需要的包 |
| 2 | ”代码生成限制灵活性” | 生成的代码可自由修改扩展 | 理解生成逻辑后再定制 |
| 3 | ”只适合大项目” | 小项目也能受益于工程化结构 | 使用 gf init 快速开始 |
| 4 | ”ORM 不如手写 SQL” | ORM 提升开发效率,复杂查询可混合使用 | 复杂查询用原生 SQL |
六、性能与限制
| 场景 | 说明 |
|---|---|
| Web 服务性能 | 基于 Go 原生 net/http,高并发场景表现优异 |
| ORM 性能 | 轻量级封装,连接池管理,接近手写 SQL 性能 |
| 学习曲线 | 组件较多,新手需要一定学习时间 |
| 生态兼容 | 可通过接口扩展第三方库 |
七、Q&A
Q:GoFrame 和 Gin/Beego 有什么区别? A:GoFrame 定位为工程完备的企业级框架,提供更完整的组件生态和代码生成工具链,而 Gin 更轻量聚焦于 HTTP 路由。
Q:GoFrame Skill 需要联网吗? A:Skill 本身不需要,但框架使用需要联网下载 Go 依赖包。
Q:GoFrame 的最新版本是?
A:当前主版本为 v2.x,可通过 go get github.com/gogf/gf/v2@latest 获取。
八、总结
核心价值:
- 工程化的 Go 后端开发框架
- 代码生成工具链(gf gen)
- 丰富的基础组件(路由、ORM、缓存、校验)
- 自动 API 文档(Swagger)
适用人群:
- Go 后端开发者 / 全栈工程师
投入产出比:⭐⭐⭐ —— 选装(适合 Go 后端项目)
GoFrame 是中国团队开发的开源 Go 框架,拥有完善的中文文档和活跃的社区(goframe.org),适合需要工程化 Go 后端开发的团队使用。
参考资料
- GoFrame 官方网站 — 官方文档
- gogf/gf GitHub 仓库 — 源码仓库
- GoFrame 快速开始指南 — 官方文档
- GoFrame v2 发布说明 — 版本发布
快速安装
git clone https://github.com/gogf/skills.git
ln -sf "$(pwd)/skills/goframe" ~/.claude/skills/goframe