小白学AI编程|怎样在命令行中愉快地玩Claude Code自动化编程

本文面向 0 基础或入门级读者,手把手演示:

  1. 确认 Claude Code 可用地区
  2. 购买并配置海外 VPS(以 RackNerd + Debian12 为例)
  3. 安装 nvm / Node.js / Claude Code CLI
  4. 聚焦理解核心参数 –permission-mode 四种模式
  5. 解决 root 环境下无法使用 bypassPermissions 的限制(创建受限非 root 用户)
  6. 首次鉴权登录流程(Claude Pro / Console)
  7. 在空目录中启动一场“全自动”命令行编程会话的基本方法

目标:让小白也能在命令行里,把“一个想法”快速变成一个最小可运行项目。

目录

  1. 为什么要用命令行 + Claude Code
  2. 地区可用性速览
  3. 选一台合适的海外 VPS(配置与方案)
  4. 连接服务器与基础更新
  5. 安装 nvm & Node.js 环境
  6. 安装与验证 Claude Code CLI
  7. 只学一个关键:–permission-mode
  8. 为何需要非 root 用户 & 安全创建脚本
  9. 首次登录鉴权 3 种方式
  10. 在空目录里发起一次自动化会话示例
  11. 常见问题 FAQ
  12. 后续可以玩什么

1. 为什么要用命令行 + Claude Code

GUI 聊天很好,但当你希望:

  • 让 AI 自动创建 / 重构 / 运行 / 调试一个真实项目
  • 批量生成与迭代文件
  • 将“对话”变成“连续操作链”

命令行的 Claude Code(简称 CLI)更贴近开发流程:它可以执行 Bash、编辑文件、规划任务(plan 模式)、直接写代码(bypass 模式),对“从 0 生项目”尤其高效。


2. 地区可用性(速览)

Claude 官方服务目前未直接向中国大陆开放,需要位于已开放地区的网络环境。解决思路:使用海外 VPS 或合规代理出口。
完整国家/地区列表会不断更新,建议随时以官方页面为准。下面给出使用方式:

(可展开)当前常见开放地区示例 美国、英国、加拿大、法国、德国、荷兰、澳大利亚、日本、韩国、新加坡、爱尔兰、印度、阿联酋、瑞士、瑞典、西班牙、意大利、葡萄牙、比利时、奥地利、芬兰、挪威、丹麦、泰国、越南、马来西亚、墨西哥、巴西 等(列表非完整 & 可能变动)。

如果你使用的是国内网络直连,大概率无法访问。选海外 VPS 几乎可以一次性解决 99% 的网络与依赖安装问题。


3. 选一台合适的海外 VPS

核心诉求:稳定 + 足够内存 + 支持常见开发栈(Node / Python / Docker)。

推荐(以 RackNerd 为例):

  • 入门建议:3.5GB 内存 / 3 vCPU / 60GB SSD / 5TB 月流量(约 $29.89 / 年)
  • 降配可选:2.5GB 内存 / 2 vCPU / 40GB SSD / 3TB 月流量
  • 不建议低于 ~2GB 内存做多模型/多依赖开发

购买链接(复制到浏览器访问):

系统建议:Debian 12 x64(干净、稳定、仓库新)。默认用户 root。

选机房:优先对你当前所在地 ping 延迟较低(150–250ms 属于正常海外)。


4. 连接服务器与基础更新

SSH 客户端(Windows)可用:Bitvise SSH Client(仅官网下载)
https://dl.bitvise.com/BvSshClient-Inst.exe

首次登录后执行:

1
2
apt update && apt -y upgrade
apt install -y curl git build-essential

保持系统最新,顺便装常用构建工具。


5. 安装 nvm & Node.js

Claude Code CLI 运行需要 Node 环境,nvm 便于多版本切换。

安装 nvm:

1
2
3
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash
source ~/.bashrc # 或 source ~/.profile
nvm --version

安装并启用最新 LTS:

1
2
3
4
nvm install --lts
nvm use --lts
node -v
npm -v

6. 安装与验证 Claude Code CLI

全局安装:

1
2
npm install -g @anthropic-ai/claude-code
claude -v # 验证版本

提示:大多数 CLI 工具支持 -v / --version-h / --help


7. 关键参数:–permission-mode

claude --help 会列出众多选项。新手一开始不必全记,只需掌握:

1
claude --permission-mode <mode>

四种模式:

  • default:标准交互;需要你逐步接受操作(安全)
  • acceptEdits:自动接受“编辑”类操作(适合你只想快速合并它的文件改动)
  • plan:先生成操作计划(read / diff / 说明),等待你确认再动手(审慎)
  • bypassPermissions:直接执行(写文件 / 运行命令)几乎零打扰(最高效,也最高风险)

入门建议:先用 plan 熟悉行为,再尝试 acceptEdits,最后在受控目录中使用 bypassPermissions


8. 为什么需要非 root 用户 & 安全创建脚本

出于安全,--dangerously-skip-permissions(或 bypass 类全自动)不允许在 root 下直接使用。解决办法:创建一个受限普通用户,只在需要时 su - 用户名 进入。

改进要点:

  • 避免重复创建报错(存在即跳过)
  • 可选禁止该用户直接 SSH 登录(仅内部 su 切换)
  • 保持脚本幂等

保存为 create-claude-user.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/usr/bin/env bash
set -e

if [ "$(id -u)" != 0 ]; then
echo "请用 root 运行" >&2; exit 1; fi

USER=claude
GROUP=claude

# 1. 组 & 用户
if ! getent group "$GROUP" >/dev/null; then
groupadd "$GROUP" && echo "[OK] 创建组 $GROUP"; else echo "[SKIP] 组已存在"; fi

if ! id "$USER" >/dev/null 2>&1; then
useradd -m -d /home/$USER -g $GROUP -s /bin/bash $USER
echo "[OK] 创建用户 $USER"
echo "请为 $USER 设置密码(可随便设一个复杂密码,仅 su 用):"
passwd $USER
else
echo "[SKIP] 用户已存在"
fi

# 2. 禁止直接 SSH(可选)
SSHD_CONF=/etc/ssh/sshd_config
if ! grep -q "^DenyUsers .*\b$USER\b" "$SSHD_CONF" 2>/dev/null; then
echo "DenyUsers $USER" >> "$SSHD_CONF"
systemctl restart ssh || systemctl restart sshd
echo "[OK] 已禁止 $USER 直接 SSH 登录"
else
echo "[SKIP] 已存在 SSH 限制"
fi

echo "[INFO] 确认 /etc/pam.d/sshd 中包含 pam_access.so 才能使用 /etc/security/access.conf 规则(可选)。"

# 3. 测试 su 切换
su - $USER -c 'echo 切换成功: $(whoami); pwd'

执行:

1
2
3
chmod +x create-claude-user.sh
./create-claude-user.sh
su - claude # 进入后再运行 claude

9. 首次登录鉴权(3 种方式)

启动命令(示例,用 plan 先熟悉):

1
claude --permission-mode plan

首次会提示选择登录方式:

  1. Anthropic Console:需开通计费(API 使用场景)。
  2. Claude App (Pro / Max):最常见;与你网页端订阅额度共享。
  3. 企业平台:接入 Bedrock / Vertex AI(企业统一管控)。

流程:选择 → 复制弹出链接 → 浏览器完成 OAuth / 登录 → 获得一次性 token → 粘贴回终端。


10. 在空目录里发起一次自动化会话

准备工作目录:

1
2
3
mkdir -p ~/newproject
cd ~/newproject
claude --permission-mode plan

示例首条提示(Prompt)可以这样写:

1
2
3
4
5
6
7
你是资深全栈工程师。请为我创建一个最小的 Node.js + Express REST API 项目:
要求:
1. 提供 /health 与 /v1/echo 两个路由
2. 集成 ESLint + 简单 npm script(dev / start)
3. 生成 README.md 说明启动方式
4. 使用 TypeScript(如果需要会再加)暂时纯 JS 也可
请先输出行动计划(目录结构、文件列表、每步目的),等待我输入 "go" 后再执行。

当 Claude 给出 plan,你输入 go 或按它指引继续,它会依次:创建文件 → 写内容 →(可能)执行命令。

如果对它的操作范围有限制,可使用:

1
claude --permission-mode plan --add-dir $(pwd)

需要完全免确认(谨慎):

1
claude --permission-mode bypassPermissions

务必仅在隔离目录中使用,避免误操作系统关键文件。


11. 常见问题 FAQ

Q: 为何在 root 下报错无法使用 bypassPermissions?
A: 出于安全限制,需用普通用户。按第 8 节创建 claude 用户即可。

Q: 计划模式里它不执行,怎么办?
A: 计划模式需要你明确指令继续(如输入 执行 / go / 具体修改意见)。

Q: 如何切换模型?
A: 启动时加 --model sonnet--model claude-sonnet-4-20250514

Q: 想导出一次会话内容?
A: 用 -p/--print 将单次回答输出到终端,可配合重定向。多轮对话可查看其本地会话缓存目录(后续官方文档会更新路径说明)。

Q: 遇到网络 429 / 负载?
A: 可加 --fallback-model sonnet(官方负载高时自动降级)。


12. 后续可以玩什么

  • 在 plan 模式里让它生成 Dockerfile + CI 脚本
  • 让它阅读已有 Git 仓库并出重构建议
  • 搭建一个简单前端(Vite/Next.js)+ 后端(Express/FastAPI)联动演示
  • 结合你的业务:自动生成接口 mock / 测试用例 / README / 迁移脚本

结语

掌握:环境准备 → Node 安装 → CLI 安装 → 权限模式 → 非 root 用户 → 登录鉴权 → 空目录首个项目,这条最短路径,你已经可以把“想法”用 Claude Code 快速落地了。接下来多练习几个不同类型的小项目(API、脚本、静态站点、爬虫、简单前端)体会节奏,会越来越顺。

如果文章对你有帮助,欢迎点赞 / 收藏 / 转发,后续继续更新更多“从 0 让 AI 生成完整项目”的实战案例。一起玩转 AI 编程!