Back to blog

claudecode

claudecode

0.常用概念梳理

概念 解释 举例
command 自定义斜杠命令 .claude/commands/test
user prompt 你直接输入的提示词
system prompt 可以理解为CLAUDE.md或CLAUDE.local.md里面写的提示词
mcp 工具封装,nodejs,python封装
sub-agent 上下文独立的agent
hook 调用agent触发的钩子方法
skill 类似于目录,资源
metadata 等同于定义sub-agent的head
>几乎所有配置都区分全局和项目:
>1.全局配置在:~/.claude目录下
>2.项目配置在:.claude/

1.关于使用

安装:npm install -g @anthropic-code/claude-code, 查看版本claude --version 更新:Claude update 改国内配置:~/.claude.json写入"hasCompletedOnboarding":true 环境:

cd your-project-folder
export ANTHROPIC_AUTH_TOKEN=sk-... 
export ANTHROPIC_BASE_URL=https://anyrouter.top
claude
为避免每次重复输入,可将环境变量写入 bash_profile 和 bashrc:

echo -e '\n export ANTHROPIC_AUTH_TOKEN=sk-...' >> ~/.bash_profile
echo -e '\n export ANTHROPIC_BASE_URL=https://anyrouter.top' >> ~/.bash_profile

echo -e '\n export ANTHROPIC_AUTH_TOKEN=sk-...' >> ~/.bashrc
echo -e '\n export ANTHROPIC_BASE_URL=https://anyrouter.top' >> ~/.bashrc

echo -e '\n export ANTHROPIC_AUTH_TOKEN=sk-...' >> ~/.zshrc
echo -e '\n export ANTHROPIC_BASE_URL=https://anyrouter.top' >> ~/.zshrc

重启终端后,直接使用:
cd your-project-folder
claude
也可以在项目里面配置~/.claude/settings.json
{
  "env": {
    "ANTHROPIC_AUTH_TOKEN": "替换为您的API Key",
    "ANTHROPIC_BASE_URL": "https://code.newcli.com/claude",
    "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1
  },
  "permissions": {
    "allow": [],
    "deny": []
  }
}

2.关于sub-agent

  • 国内claudecode供应代理:anyrouter
  • 关于cc的使用:
  • 官方文档:https://docs.anthropic.com/zh-CN/docs/claude-code/sdk
  • 关于子agent:
  • 子代理存储为带有YAML前言的Markdown文件,位于两个可能的位置:
类型 位置 范围 优先级
项目子代理 .claude/agents/ 在当前项目中可用 最高
用户子代理 ~/.claude/agents/ 在所有项目中可用 较低
---
name: your-sub-agent-name
description: Description of when this subagent should be invoked
tools: tool1, tool2, tool3  # Optional - inherits all tools if omitted
---

Your subagent's system prompt goes here. This can be multiple paragraphs
and should clearly define the subagent's role, capabilities, and approach
to solving problems.

Include specific instructions, best practices, and any constraints
the subagent should follow.
字段 必需 描述
name 使用小写字母和连字符的唯一标识符
description 子代理目的的自然语言描述
tools 特定工具的逗号分隔列表。如果省略,从主线程继承所有工具
  • 调用方式:
  • /agent,比如:/产品
  • 或者直接调用:》使用代码审查员子代理检查我最近的更改

2.Claude code两种智能方式

1.自定义commands - 适合某些小型的,标准化通用的场景 举例: (1)在你的项目中创建命令目录

mkdir -p .claude/commands

(2) 为每个命令创建 Markdown 文件,每个Markdown文件名称就是自定义命令的名称。如这边创建的是optimize.md,那么对应的指令就是:/optimize

echo "分析这段代码的性能,并提出三个具体的优化建议:" > .claude/commands/optimize.md

(3)在 Claude Code 中使用您的自定义命令:

后面的括弧里显示的是project就是当前项目的指令。

/optimize

2.自定义sub-agent - 适合中大型项目,团队开发

3.试用claude code router 搭配多agent多模型

https://blog.csdn.net/u012094427/article/details/149323741

4.配置memory文件

项目目录下:./CLAUDE.local.md

5.配置agent文件

项目目录下:./.claude/agents/code-reviewer.md

6.MCP配置

以claude code为例,

首先我们要明白,claude code目前支持三种方式,http,sse,stdio参考官网https://code.claude.com/docs/zh-CN/mcp

mcp理解为一个中介,你给ai提示词,ai翻译成mcp能执行的指令,然后mcp执行后将结果返回给你;

claude创建mcp的命令: 你可以直接命令行一行命令创建: claude mcp add mysql -- cmd /c npx -y mcp-server-mysql --url "mysql://user:password@your-cloud-host:3306/dbname"

解读一下:mysql为你给mcp命的名字,-- 后面的参数都可理解为要执行的指令,类比docker 后面的mysql连接也可以拆开成--host --port的这种形式

执行以上命令后,就会在C盘的用户空间下创建这么几行json(下面的配置跟我的命令不一定对得上,但是配置命是一样的);env中可以写入``` "MYSQL_HOST": "localhost", "MYSQL_PORT": "3306", "MYSQL_USER": "your_username", "MYSQL_PASSWORD": "your_password", #我用的这个mcp是PASS不是PASSQWORD "MYSQL_DATABASE": "your_database"

注意,这几行json配置是区分全局配置和项目配置的

查看mcp列表:claude mcp list

      "mcpServers": {
        "mysql": {
          "type": "stdio",
          "command": "cmd",
          "args": [
            "/c",
            "C:\\Users\\yinchongwang\\AppData\\Roaming\\npm\\mcp-server-mysql.cmd",
            "--host",
            "10.205.128.109",
            "--port",
            "3307",
            "--user",
            "ibg_dev",
            "--password",
            "ibg_dev@qwe321",
            "--database",
            "ermasdb"
          ],
          "env": {}
        }
      }
     
     
     
 当然,如果你不想一行命令完成也可以自己手动配置 ,先用npm把mcp工具下载到本地,然后在手动配置mcp
 
 1npm install -g mcp-server-mysql
 2、where mcp-server-mysql
 3、claude mcp add mysql -- cmd /c "C:\Users\yinchongwang\AppData\Roaming\npm\mcp-server-mysql.cmd" --host "你的云地址" --user "用户名" --password "密码" --database "数据库名"
 
#mac不需要cmd /c,直接执行就行
claude mcp add mysql -- "/opt/homebrew/bin/mcp-server-mysql" --host "127.0.0.1" --user "root" --password "qwer4321" --database "mocker"
 
 
 ```


安装MongoDB MCP

npm install -g mcp-mongo-server

where mcp-mongo-server 找不到就用npm list -g --depth=0

claude mcp add mongodb -- cmd /c "C:\Users\yinchongwang\AppData\Roaming\npm\mongodb.cmd" --uri "mongodb+srv://用户名:密码@cluster.abc.mongodb.net/数据库名"

## 7. hook配置


## 8.skill配置
>注意区分全局和项目配置,我这里使用项目配置;
>官方文档:https://platform.claude.com/docs/zh-CN/agents-and-tools/agent-skills/overview

skill优点:
- 按需加载资源(渐进式披露提示词)--->减少token消耗


1.目录结构

(井号) 定义skill

your-project/.claude/skills/skill-nameA/SKILL.md your-project/.claude/skills/skill-nameB/SKILL.md your-project/.claude/skills/skill-nameC/SKILL.md

(井号) 定义reference,referrence下面放各种参考文件

your-project/.claude/skills/skill-nameA/SKILL.md your-project/.claude/skills/skill-nameA/reference/myreport.txt your-project/.claude/skills/skill-nameA/reference/mystyle.excel

(井号) 定义scripts,scripts下面放各种脚本文件

your-project/.claude/skills/skill-nameA/SKILL.md your-project/.claude/skills/skill-nameA/scripts/update.py your-project/.claude/skills/skill-nameA/scripts/delete.bash

(井号) 定义资源assets

your-project/.claude/skills/skill-nameA/SKILL.md your-project/.claude/skills/skill-nameA/assets/a.png

2.
![[Pasted image 20260216140342.png]]
![[Pasted image 20260216140633.png]]

3.与mcp的区别
![[Pasted image 20260216140452.png]]

4.官方示例
![[Pasted image 20260216153207.png]]
~~~
---
name: pdf-processing
description: 从 PDF 文件中提取文本和表格、填充表单、合并文档。在处理 PDF 文件或用户提及 PDF、表单或文档提取时使用。
---

# PDF 处理

##(井号)  快速开始

使用 pdfplumber 提取文本:
```python
import pdfplumber
with pdfplumber.open("file.pdf") as pdf:
    text = pdf.pages[0].extract_text()

(井号) 高级功能

表单填充:参阅 FORMS.md 获取完整指南 API 参考:参阅 REFERENCE.md 获取所有方法 示例:参阅 EXAMPLES.md 获取常见模式 ~~~

参考文章: 1.https://zhuanlan.zhihu.com/p/1937267666256630836 - glm开发文档:https://docs.bigmodel.cn/cn/guide/develop/claude 2.规则文件: https://news.qq.com/rain/a/20250812A04HNH00 https://github.com/snarktank/ai-dev-tasks https://github.com/Lance-He/claude-md-rules https://github.com/SabrinaRamonov/ai-coding-rules