
1. 为什么牙科诊所需要一个“自己人”写的管理工具牙科诊所的日常其实很琐碎患者预约、病历记录、治疗方案、收费结算、耗材库存每一环都靠纸质表格或者 Excel 撑着。市面上成熟的牙科管理软件不是没有但要么按年收费动辄几千上万要么功能堆得太多前台小姐姐学三天还记不住。更麻烦的是每家诊所的流程都不一样通用软件很难贴合你的实际工作习惯。这时候 AI 编程工具的价值就出来了。Claude Code 这类工具能让你用自然语言描述需求它帮你生成代码、调试报错、甚至重构整个模块。你不需要先花两年学 JavaScript只要能把“我想要什么”说清楚就能一步步把工具搭起来。我试过用 Claude Code 从零搭一个诊所管理原型最大的感受是环境配置这一步如果没跑通后面全是坑。这篇是“牙科圣手”实战系列的上篇目标很明确让零基础开发者先把 Claude Code 的 AI 编程环境跑通。具体来说你会拿到一份可复制的settings.json配置骨架学会用 TaoToken 统一 Key 接入 Claude Code并且用一条命令验证调用是否正常。底座稳了下篇我们再用 React Node.js 把患者管理和预约模块写出来。适合谁看完全没写过代码但想给自己诊所做个工具的牙医或管理者刚接触 AI 编程、被各种 API Key 和配置文件绕晕的初学者想用 Claude Code 做长期项目但还没搞定环境的人。2. TaoToken 统一 KeyClaude Code 接入的前置准备Claude Code 本身是一个命令行里的 AI 编程助手它能读你的项目文件、执行命令、改代码。但它需要连接一个大模型来“思考”。默认情况下你需要自己处理 Anthropic 的账号和计费。对于国内开发者来说直接对接官方接口在支付和网络层面都不太顺手。TaoToken 在这里扮演的角色是统一 Key 管理平台你注册一个账号拿到一个 API Key就可以在 Claude Code、Coding Plan、模型对话等多个工具里复用同一个 Key。不用每个工具单独配一套凭证也不用反复切换账号。官网地址是https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content注册后进入控制台就能创建 Key。具体操作路径登录后打开https://taotoken.net/console在左侧找到 API Keys 管理页点“创建新 Key”复制生成的字符串。这个 Key 就是你后面写进settings.json的核心凭证。注意Key 只显示一次建议先粘贴到本地记事本里备用。TaoToken 的 API 端点统一是https://taotoken.net/apiClaude Code 的配置里需要填这个地址。如果你后面想用 Coding Plan 做长期编码项目或者用模型对话快速验证 DeepSeek 等模型的效果都可以用同一个 Key 切换不需要重新注册。注意API Key 等同于你的账号密码不要提交到 Git 仓库也不要发在公开聊天里。后面我们会用环境变量的方式把它隔离出来。3. 可复制的 settings.json 配置骨架Claude Code 的配置分两层一层是全局的settings.json放在用户目录下的.claude文件夹里另一层是项目级的.claude/settings.json只对当前项目生效。我们先把全局配置搭好这样以后新建任何项目都能直接用。3.1 找到配置目录Windows 用户打开文件资源管理器地址栏输入%USERPROFILE%\.claude回车。macOS 或 Linux 用户在终端执行ls ~/.claude。如果目录不存在手动创建即可。全局配置文件路径就是~/.claude/settings.json。3.2 写入配置骨架用 VS Code 或任意文本编辑器打开没有就新建settings.json粘贴以下内容{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: sk-你的TaoToken密钥, ANTHROPIC_MODEL: claude-sonnet-4-20250514, ANTHROPIC_SMALL_FAST_MODEL: claude-3-5-haiku-20241022 }, permissions: { allow: [ Read, Write, Bash(npm run *), Bash(git *) ], deny: [] }, includeCoAuthoredBy: false }逐项解释一下。ANTHROPIC_BASE_URL指向 TaoToken 的 API 入口Claude Code 会把所有模型请求发到这里。ANTHROPIC_AUTH_TOKEN填你刚才复制的 Key注意保留sk-前缀。ANTHROPIC_MODEL是主模型负责代码生成和复杂推理ANTHROPIC_SMALL_FAST_MODEL是轻量模型用于快速补全和简单问答能省不少 token。permissions.allow里我预置了四个常用权限读文件、写文件、跑 npm 脚本、执行 git 命令。这样 Claude Code 在帮你搭项目时不会每一步都弹窗问“是否允许”。includeCoAuthoredBy设为 false 是为了让 git 提交记录干净一些不显示 AI 联合作者标记。3.3 用环境变量隔离密钥推荐如果你不想把 Key 明文写在 JSON 里可以改成引用系统环境变量{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: ${TAOTOKEN_API_KEY}, ANTHROPIC_MODEL: claude-sonnet-4-20250514 } }然后在系统里设置TAOTOKEN_API_KEY。Windows 用setx TAOTOKEN_API_KEY sk-你的密钥macOS/Linux 在~/.zshrc或~/.bashrc里加export TAOTOKEN_API_KEYsk-你的密钥。这样配置文件可以安全地分享或提交到私有仓库。3.4 项目级配置覆盖如果你某个项目想用不同的模型比如做 React 前端时想换 DeepSeek 来生成中文注释可以在项目根目录建.claude/settings.json{ env: { ANTHROPIC_MODEL: deepseek-chat } }项目级配置会覆盖全局配置里的同名字段其他字段继续继承全局。这样你可以在不同项目间灵活切换不用反复改全局文件。4. 验证 Claude Code 正常调用的具体命令配置写好了怎么确认它真的通了分三步走。4.1 检查 Claude Code 是否安装打开终端输入claude --version如果返回版本号比如1.0.24说明 CLI 已经装好。如果提示 command not found需要先安装npm install -g anthropic-ai/claude-code安装完成后重新执行claude --version确认。4.2 发起一次最小对话请求在任意空目录下启动 Claude Codemkdir ~/dental-test cd ~/dental-test claude进入交互界面后输入一句最简单的指令请用一句话说明什么是牙科诊所管理系统。如果配置正确你会看到模型流式返回一段中文回答。这时候说明 TaoToken 的 Key、Base URL、模型名三者都对上了。如果卡住不动或者报 401先检查 Key 是否复制完整、有没有多余空格。4.3 用 curl 直接验证 API 连通性有时候 Claude Code 界面报错信息不够详细可以用 curl 直接打 TaoToken 的接口curl -X POST https://taotoken.net/api/v1/messages \ -H Content-Type: application/json \ -H x-api-key: sk-你的TaoToken密钥 \ -H anthropic-version: 2023-06-01 \ -d { model: claude-sonnet-4-20250514, max_tokens: 100, messages: [ {role: user, content: 回复环境配置成功} ] }正常返回的 JSON 里会有content数组里面包含环境配置成功这段文字。如果返回{error: {type: authentication_error}}说明 Key 有问题返回model_not_found则说明模型名写错了。这一步能帮你快速定位是网络问题、鉴权问题还是模型名问题。4.4 让 Claude Code 执行一个真实小任务光对话还不够我们验证一下它能不能操作文件。在dental-test目录里输入帮我创建一个 hello.js 文件里面打印 牙科圣手启动。Claude Code 会请求写文件权限允许后它会在当前目录生成hello.js。然后你输入运行 node hello.js终端输出牙科圣手启动说明从模型调用到文件操作到命令执行的完整链路都通了。这个底座搭好之后下篇我们就能直接让它生成 React 组件和 Express 路由了。5. 本篇常见错排查配置过程中最容易卡在几个地方我按出现频率从高到低列一下。报错401 Unauthorized或invalid api key九成是 Key 复制时带了空格或换行。重新从 TaoToken 控制台复制一次粘贴到settings.json后检查首尾有没有多余字符。另外确认ANTHROPIC_AUTH_TOKEN而不是ANTHROPIC_API_KEYClaude Code 读的是前者。报错Connection refused或超时检查ANTHROPIC_BASE_URL是否写成了https://taotoken.net/api不要多加/v1或结尾斜杠。如果公司网络有防火墙限制换手机热点试一下确认不是本地网络策略拦截。模型返回model_not_foundANTHROPIC_MODEL字段的模型名必须和 TaoToken 支持的列表一致。可以先在https://taotoken.net/doc查一下当前可用的模型标识别直接抄网上的旧名字。Claude Code 启动后一直转圈不回复先看终端有没有报错输出。如果没有用第 4.3 节的 curl 命令单独测 API。curl 通了但 Claude Code 不通通常是settings.json的 JSON 格式有问题比如多了逗号或少了引号。用 VS Code 的 JSON 校验功能检查一下。权限弹窗太多每次操作都要确认在permissions.allow里补充你常用的命令前缀比如Bash(npm install *)、Bash(node *)。但不要图省事写Bash(*)那等于把整个终端交给 AI风险太大。修改配置后不生效Claude Code 启动时读取配置改完settings.json需要退出当前会话重新执行claude。项目级配置优先级高于全局如果你在项目里建了.claude/settings.json检查是不是它覆盖了全局的 Base URL。6. 下一步用同一套 Key 跑通 React Node.js 底座环境跑通之后你手里就有了一个稳定的 AI 编程入口。下篇我会用这个底座做三件事用 Claude Code 生成 React Vite 的前端脚手架用 Node.js Express 搭出患者管理的基础路由再把 MySQL 的连接和 Sequelize 模型配好。整个过程不需要你手写多少代码但前提是这一篇的 Key 和settings.json已经验证通过。如果你在验证模型调用时想快速对比不同模型的效果可以直接打开https://taotoken.net/models用同一个 Key 做对话测试不用改 Claude Code 的配置。长期做编码项目的话https://taotoken.net/coding-plan里有按周期计费的方案比单次调用更划算。接入文档在https://taotoken.net/doc遇到配置字段不确定的时候翻一下比搜索引擎快。最后提醒一句settings.json里的 Key 不要截图发群也不要提交到公开仓库。用环境变量引用是最省心的做法一次配置后面所有项目都受益。