模型选择

本地大模型-oMLX

先部署oMLX

ANTHROPIC_BASE_URL='http://127.0.0.1:8000' ANTHROPIC_AUTH_TOKEN='$密钥' ANTHROPIC_DEFAULT_OPUS_MODEL='Qwen3.5-35B-A3B-4bit' ANTHROPIC_DEFAULT_SONNET_MODEL='Qwen3.5-35B-A3B-4bit' ANTHROPIC_DEFAULT_HAIKU_MODEL='Qwen3.5-4B-MLX-4bit' API_TIMEOUT_MS=3000000 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 claude

/init 命令

学习此文件夹里的项目文件, 帮助ai更快的理解这个项目 类似cursor-rule

/compact

压缩上下文

/clear

清除上下文, 用于开启一个新任务, 保持一个干净的上下文

/think, think hard, think harder, ultrathink

控制模型思考长度

! 感叹号

输入!感叹号, 将对话窗口切换为命令行模型

例如需要执行 npm install 执行后, ai会将结果加上下文, 后面ai就不会重复安装

“#” 井号,进入记忆模型

输入的文字将会成为claude的记忆

~/.claude/claude.md 全局记忆

/ide

使用这个命令之前, 需要先安装插件 以vscode为例子: 先安装claude插件, 选中后, claude能感知到

claude -p 临时对话

后台思考, 命令行ai助手

mcp server

MCP(Model Context Protocol) 是 Anthropic 推出的开放标准协议,让 Claude 能够以统一方式连接各种外部工具和数据源。 一个让 Claude 与外部世界通信的开放标准。类比 USB——不同厂商的设备都能插进同一个接口。

img_2.png

在 claude_desktop_config.json 中注册 Server

{
  "mcpServers": {
    "filesystem": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/Users/me/projects"]
    },
    "my-db-server": {
      "command": "python3",
      "args": ["/path/to/my_mcp_server.py"],
      "env": { "DB_URL": "postgresql://localhost/mydb" }
    }
  }
}

自定义mcp-server

from mcp.server.fastmcp import FastMCP
import psycopg2, os

mcp = FastMCP("my-db-server")

# 声明一个 Tool:Claude 可主动调用
@mcp.tool()
def query_sales(start_date: str, end_date: str) -> str:
    """查询指定日期范围内的销售数据"""
    conn = psycopg2.connect(os.environ["DB_URL"])
    cur  = conn.cursor()
    cur.execute(
        "SELECT product, SUM(amount) FROM sales WHERE date BETWEEN %s AND %s GROUP BY product",
        (start_date, end_date)
    )
    rows = cur.fetchall()
    return "\n".join(f"{r[0]}: {r[1]}" for r in rows)

# 声明一个 Resource:Claude 可读取的静态数据
@mcp.resource("db://schema")
def get_schema() -> str:
    """返回数据库表结构"""
    return "sales(date, product, amount, region)"

if __name__ == "__main__":
    mcp.run()  # 默认走 stdio 传输

最新代码文档的 mcp

claude mcp add context7 – npx

/permission 授权

控制"Claude 被允许做什么"的核心机制。

允许所有工具,但 Bash 命令须人工确认(默认行为)

{
  "allowedTools": ["*"],
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [{ "type": "command", "command": "bash ~/.claude/hooks/confirm.sh" }]
      }
    ]
  }
}

无人值守

claude --dangerously-skip-permissions

自定义命令

示例: code_review.md git diff 命令, 给出意见

添加描述: 对比这个分支, 查看差异

Hooks

允许你在 Agent 生命周期的特定时间点注入自定义脚本——拦截、审计、修改或阻止 Claude 的行为。先看整体流程图,再看具体示例。 img_1.png

4 个 Hook 时机: PreToolUse — 工具调用前,可以 阻止或批准。最常用于安全拦截(禁止危险命令、需要人工二次确认等) PostToolUse — 工具完成后,拿到输入+输出。适合审计日志、格式校验、自动测试 Notification — Claude 要发送通知时触发,可以转发到任意渠道 Stop — Agent 全部结束时触发,适合发完成通知、清理临时文件

Hooks 写在 ~/.claude/settings.json(全局)或项目的 .claude/settings.json 中:

{
  "hooks": {
    "PreToolUse": [
      {
        "matcher": "Bash",
        "hooks": [
          {
            "type": "command",
            "command": "python3 ~/.claude/hooks/check_bash.py"
          }
        ]
      }
    ]
  }
}

/agents

普通对话是"一问一答",而 Agent 是"给我一个目标,我来自己想办法完成它"。

img.png

创建一个审核代码的agent

示例: 你是一位资深的代码审核专家, 拥有丰富的代码开发和代码质量管理经验,
你的专长是分析git分支之间的代码差异, 并提供专业, 详细的代码审核意见