安装

  • 系统:macOS
  • cpu: m4 pro

安装claude code cli && cc-switch

# 我一直使用的是brew 管理工具,所以这里都是以brew进行安装的

brew install --cask claude-code

brew install --cask cc-switch

安装完之后,在cc-switch中点击 + 配置好模型,就可以了

初试

在需要的项目中输入 claude

╭─── Claude Code v2.1.142 ──────────────────────────────────────────────────╮
│                                 │ Tips for getting started                │
│          Welcome back!          │ Run /init to create a CLAUDE.md file w… │
│                                 │ ─────────────────────────────────────── │
│             ▐▛███▜▌             │ What's new                              │
│            ▝▜█████▛▘            │ Check the Claude Code changelog for up… │
│              ▘▘ ▝▝              │                                         │
│                                 │                                         │
│   glm-5.1 · API Usage Billing   │                                         │
│         ~/Code/cc-learn         │                                         │
╰───────────────────────────────────────────────────────────────────────────╯

claude 的界面就出现了!

测试写一个小玩意,在项目中新建一个readme.md 文件,写入内容

我需要创建一个 Go Kratos 微服务项目:user-service

第一步:请执行命令创建项目骨架
kratos new user-service -r https://github.com/go-kratos/kratos-layout.git

第二步:进入项目目录后,定义 protobuf 接口
在 api/user/v1/user.proto 中定义:
- Register(RegisterRequest) returns (RegisterReply)
- Login(LoginRequest) returns (LoginReply)  
- GetUser(GetUserRequest) returns (GetUserReply)
字段要有 username, password, email, user_id, token

第三步:用 make api 生成代码后,实现四层架构:
- data 层:用内存 map 做存储
- biz 层:注册逻辑(校验用户名密码长度、不重复)、登录逻辑(密码验证、返回token)
- service 层:对接 biz 层
- server 层:注册 HTTP 服务

第四步:给 biz 层写单元测试

第五步:启动服务,用 curl 验证三个接口都能通

然后在对话框中 @readme.md ,按照文档帮我实现这方案,他在中途会问是否执行各种命令,但是目前他真的可以做到

玩法

问了一下其他的ai,claude 能做什么,他给我一下几个点,这几个点都会成为我的学习目标,一个个的实验和学习他

1. Claude Code 的基础用法

读项目、写代码、改 Bug

跑编译、执行测试、启服务

通过 MCP 连接数据库、API、文件系统等外部资源

通过 Skill 加载领域知识或自定义工作流

2. MCP(模型上下文协议)—— 核心扩展机制

mcp是一个独立的进程,遵循 MCP 协议,提供一组“工具”(Tool)、“资源”(Resource)和“提示”(Prompt)

# 添加一个 MCP 服务器(以文件系统为例)
claude mcp add filesystem -- npx @anthropic-ai/mcp-server-filesystem /path/to/allowed/dir

# 查看已安装的mcp
claude mcp list

可以了解一下

  • mcp-server-filesystem 安全地读写你指定的目录
  • mcp-server-sqlite 直接操作 SQLite,建表、查询、迁移
  • mcp-server-fetch 让 Claude 发 HTTP 请求,获取 API 文档、测试接口
  • mcp-server-git 高级 Git 操作,读日志、打标签等
  • mcp-server-docker 管理容器、镜像、执行命令
  • mcp-server-code-runner 在沙箱中执行 Python/JS 代码

Claude Code 在使用 MCP 工具前会征求你的同意,你会在终端看到类似:

Claude wants to use "filesystem" to read file /data/users.csv. Allow? (y/n)

3. Skill(自定义技能)—— 给 Claude 加“领域知识”

Skill 是一种可复用的提示词模板,可以包含指令、背景知识、代码片段等,让 Claude 在处理特定任务时表现更专业。

例如,创建一个 Go-Kratos 专用 Skill:

mkdir -p .claude/skills
cat > .claude/skills/kratos.md << 'EOF'
# Kratos 开发规范

- 项目结构必须遵循 kratos-layout 的四层架构(api, biz, data, service, server)
- 数据层接口在 biz 层定义,data 层实现
- 使用 Wire 进行依赖注入
- 错误处理使用 kratos/v2/errors 包生成标准错误码
- protobuf 定义在 api/ 下,通过 make api 生成代码
EOF

启动 Claude Code 后,这套规范会自动被加载,之后所有代码生成都会遵守。

目标

解决实际问题

我需要自己在项目中实战这些技能来赋能我的工作

  • 代码理解与分析,以及bug的原因修复和总结

  • 代码重构、审查

  • 生成文档

  • 工作流

计划的实施

  • 代码理解与分析,以及bug的原因修复和总结

Q & A

  1. MCP 个 Skill 到底有什么区别