SONUB
ZH English 한국어 日本語 中文 हिन्दी বাংলা اردو Español Português Français Deutsch Русский العربية Bahasa Indonesia Tiếng Việt ไทย Türkçe

如何开启通知

此浏览器或网址无法使用通知。请使用支持通知的浏览器,通过安全连接访问SONUB。

如果通知被屏蔽,请在浏览器设置中允许通知。

  1. 打开地址栏旁的站点设置或浏览器的站点设置,将此网站的通知设为允许。
  2. 在设备设置中允许浏览器发送通知,并检查勿扰模式或专注模式。
  3. 返回SONUB,刷新页面,然后通过铃铛开启通知。

在iPhone或iPad上,将SONUB添加到主屏幕,从主屏幕打开后允许通知。

登录 退出登录 显示主题 默认主题 深色主题 粉色主题 聊天 1:1 聊天 群聊 论坛 公告 新闻区 建议区 主菜单
Claude Code 实践

Sonub Lab — Claude Code 实践

用技能教它重复的工作,把大任务交给,用钩子强制执行必须遵守的规则,用 连接外部工具,再用 claude -p 把无人值守的工作放进脚本。

高级 — 扩展它:技能、子智能体、钩子、MCP、无界面运行

智能体技能 — 教它你重复做的工作

技能就是一个装有 的文件夹。平时 只知道每个技能的名称和说明;当工作符合说明时,它才会读取正文并照着做。所以技能再多也几乎不占空间。以前的自定义(.//)现在已经合并进技能。

  • .claude/skills/<名称>/SKILL.md 用于这个项目,~/.claude/skills/<名称>/SKILL.md 用于你的所有项目。
  • 在 description 里清楚写明它做什么、什么时候用,Claude 就会自己选中它。
  • 也可以用 /<技能名称> 直接,/skills 会显示列表。
  • 把和参考文档放在同一个文件夹里,并在 SKILL.md 中指向它们。SKILL.md 保持简短,少于 500 行。
.claude/skills/release-notes/SKILL.md
---
name: release-notes
description: Write release notes from the git log. Use when the user asks for release notes, a changelog or "what changed since the last tag".
---

# Release notes

1. Find the last tag: `git describe --tags --abbrev=0`
2. Read the commits since then: `git log <tag>..HEAD --oneline`
3. Group them under Added / Fixed / Changed.
4. Write plain sentences a user can understand. Skip internal refactors.

技能是开放标准 — 但 Claude Code 有自己的做法

技能最早由开发 Claude 的公司 创建并免费公开。如今它是一个名为 的,由 agentskills.io 管理。、、、 等许多 都读取同样的 SKILL.md 文件夹。

不过要注意:标准只规定技能文件夹里放什么。去哪里找技能、名称冲突时用哪一个,都由各个工具自己决定,而 的做法和 agentskills.io 推荐的不同。所以在别的工具里好用的技能,在 Claude Code 里可能表现不同。

  • 文件夹:agentskills.io 推荐许多工具共用的 .agents/skills/,但 Claude Code 读取的是 (项目)和 ~/.claude/skills/(个人),不读取 .agents/skills/。
  • 同名时:标准的通用是项目技能优先于个人技能。Claude Code 正好相反 — 企业(enterprise)优先于个人,个人(~/.claude/skills/)优先于项目。
  • 上级和下级文件夹:标准没有规定。Claude Code 读取你启动时所在的文件夹,以及往上直到 的每一级;下级文件夹只有在它到那里工作时才读取(见下一节)。
  • :标准有六个字段 — name、description、、compatibility、 和 。Claude Code 另外加了 disable-model-invocation、: fork、paths 等字段。其他工具会忽略它们,而 claude.ai 上传和 会报错停止。

要和其他 AI 工具共用的技能,frontmatter 只写六个标准字段。这样在 Claude Code 和其他工具里都能原样加载,不用修改。

Claude Code 在哪里找技能 — 当前文件夹和上级文件夹一起

如果你所在的文件夹有 .claude/ 文件夹,上级文件夹也有,Claude Code 会把两边的技能一起使用。往上最多只到 git 仓库根目录。

  • 它读取你启动 claude 的文件夹,以及往上直到仓库根目录的每一级上级文件夹里的 .claude/skills/。即使在 apps/web/ 启动,根的技能也能用。
  • 仓库根目录之上的 .claude/skills/ 不会被读取。所有项目都要用的技能请放在 ~/.claude/skills/。在 中,只往上到 worktree 的根目录。
  • 启动位置之下的文件夹里的技能,一开始不会读取。Claude 第一次读取或修改该文件夹中的文件时才加载,并一直保留到结束 — 在那之前,它们不会出现在 / 菜单里。想提前加载,就用 /add-dir 加上那个文件夹。
  • 如果根目录和 apps/web/ 都有名为 的技能,两个都能用:/deploy 运行根目录的,/apps/web:deploy 运行下级文件夹的。Claude 会被告知使用它正在处理的文件所在文件夹的技能。
  • 技能是分开的,用 /<插件名>:<技能名> 调用,所以永远不会和你的技能冲突。
Run claude in apps/web/
~/projects/                    ← above the repository root
├── .claude/skills/            ← not loaded (put shared skills in ~/.claude/skills/)
└── repo/                      ← git repository root
    ├── .claude/skills/        ← loaded
    └── apps/web/              ← run claude here
        ├── .claude/skills/    ← loaded (used together with the root)
        └── src/
            └── .claude/skills/  ← not at start — loads when Claude first reads or edits a file in src/
Same name in two folders (claude started at the repository root)
repo/
├── .claude/skills/deploy/SKILL.md            → /deploy
└── apps/web/.claude/skills/deploy/SKILL.md   → /apps/web:deploy

运行 /skills 可以查看现在加载了哪些技能。上下级文件夹里技能很多时,最少用的技能的说明会最先被截断,所以要不时用 /skill-doctor 检查一下。

子智能体 — 把部分工作交出去

是拥有自己的、指令和工具的助手。把大规模的搜索或审查交给它:无论它读了多少文件,回到主对话的只有结果,主对话因此保持干净。

  • .claude/agents/<名称>.md 用于项目(后与团队共享),~/.claude/agents/ 只给你自己用。只有 name 和 description 是必需的。
  • 用 tools 限制它能使用的工具会更安全 — 让审查者只能读取。
  • 可以这样调用:“用 code-reviewer 子智能体审查这次改动”,或者当 description 符合时,Claude 会自己把工作交给它。
  • 要创建新的子智能体,可以请 Claude 帮你创建,或者自己在上面的文件夹里写文件。Explore、Plan 等内置子智能体一开始就有。
.claude/agents/code-reviewer.md
---
name: code-reviewer
description: Reviews code changes for bugs, security problems and missing tests. Use after writing or changing code.
tools: Read, Grep, Glob, Bash
model: sonnet
---

You are a careful senior reviewer.
Run `git diff` to see the changes, then report:
1. Bugs (with file and line)
2. Security problems
3. Missing tests
Do not edit files.

钩子 — 在设定的时机必定运行的命令

是一种请求,有时可能会被忘记,而是 Claude Code 在设定的时机必定运行的 命令。可以用钩子在编辑文件后运行、挡住危险命令或对机密文件的编辑,以及在工作完成时收到通知。

  • — 使用工具之前(可以阻止它),PostToolUse — 使用工具之后
  • UserPromptSubmit — 你发送请求时,Stop — Claude 回答完毕时,SessionStart — 会话开始时,Notification — 需要你注意时
  • 选择钩子作用于哪些工具(比如 Edit|Write、)。
  • 如果钩子命令以 2 结束,该操作会被阻止,写到 的原因会传给 Claude。
  • /hooks 显示已设置的钩子。上面的例子会用 整理每个被编辑的文件(需要 )。
.claude/settings.json
{
  "hooks": {
    "PostToolUse": [
      {
        "matcher": "Edit|Write",
        "hooks": [
          {
            "type": "command",
            "command": "jq -r '.tool_input.file_path' | xargs npx prettier --write"
          }
        ]
      }
    ]
  }
}

钩子以你的在你的电脑上运行。别人写的钩子,要先读懂它的命令再添加。

MCP — 连接外部工具

()是让 AI 工具使用外部服务(问题跟踪、、、文档工具)的开放标准。添加一个 后,Claude 就能使用该提供的工具。

  • claude mcp add --transport http <名称> <> — 添加互联网上的远程服务器。
  • <名称> -- <命令> — 添加在你电脑上运行的服务器(stdio)。-- 后面的所有内容都会原样传给服务器。
  • 用 project 添加时,它会保存在顶层的 里并与团队共享(第一次使用时会请求批准)。
  • /mcp 显示连接状态并进行登录()。claude mcp list 显示列表。
# A remote server (HTTP)
claude mcp add --transport http notion https://mcp.notion.com/mcp

# A server that runs on your computer (stdio)
claude mcp add playwright -- npx @playwright/mcp@latest

# Share it with the team — saved in .mcp.json
claude mcp add --scope project playwright -- npx @playwright/mcp@latest

claude mcp list

只添加你信任的 MCP 服务器。获取外部文字的服务器,可能会把藏在文字里的指令带进来()。

无界面运行 — 不用聊天界面的脚本

claude -p "…" 不打开聊天界面运行一次,输出结果后退出。可以把 Claude 当作积木,用在 shell 脚本、 和 中。

  • 通过管道传入输入(cat error.log | claude -p "…")。
  • 以 JSON 给出结果、会话 id 和费用;stream-json 会逐行发送进度。
  • --allowedTools 设置这次运行允许的工具,--max-turns 设置。
  • claude -p --continue 继续上一次运行, <会话 id> 继续那个会话。
Terminal
# One question, one answer
claude -p "Explain what src/auth.ts does in 5 lines"

# Pipe input in
cat build-error.log | claude -p "Find the cause and suggest a fix"

# JSON output for scripts (result, session_id, total_cost_usd)
claude -p "List the TODO comments in src/" --output-format json

# Limit what it may do and how long it runs
claude -p "Run the tests and fix failures" \
  --allowedTools "Read,Edit,Bash(npm test *)" --max-turns 10

在脚本里, 不读取 CLAUDE.md、钩子、插件和 MCP,启动很快(官方文档说它将成为 -p 的默认行为)。如果需要项目指令,就不要加它。

高级练习

  1. 把一件常做的工作(、提交信息)做成 .claude/skills/ 里的技能,并用 /skill-name 调用。
  2. 做一个 code-reviewer 子智能体,让它审查你当前的改动。
  3. 用 PostToolUse 钩子,让每次编辑文件时都运行格式化工具或 。
  4. 添加一个 MCP 服务器,用 /mcp 检查连接。
  5. 写一个用 claude -p 总结的单行 shell 脚本。

五项都做完了?进入 [大师] 标签。

官方文档

已于 2026-10-19 对照官方文档核实。这些工具变化很快 — 如果命令不起作用,请查看官方文档。

Sonub 编程智能体

尚未连接。按下面的步骤安装,或在电脑上运行 sonub start — 此页面会自动打开。

正在连接你的电脑…

正在打开实验箱…

已连接: ·

Shell 已结束。点击「新 Shell」重新打开。

此终端已在另一个标签页中打开。

连接已断开。如果你的电脑上 sonub start 仍在运行,请点击“重新连接”。如果你重新启动了它,请使用它新打开的标签页。

有新版 sonub — 再次运行下面的安装命令即可更新。

试试:

三步开始

想用自己电脑上的文件?请按下面的步骤安装到自己的电脑(高级)。

  1. 安装 — 在电脑的终端里粘贴一行命令 无需管理员密码,也无需重启。只会把 Claude Code(若没有)和小巧的 sonub 命令放进你的主文件夹。

    已登录 — 此命令包含你账号的一次性代码(30 分钟内有效,仅可用一次),无需批准即可直接连接。

    先登录,一行命令即可直接连接,无需批准。 登录

    macOS · Linux 终端应用
    curl -fsSL https://sonub.com/install.sh | bash
    Windows PowerShell
    irm https://sonub.com/install.ps1 | iex
  2. 批准 — 用 SONUB 账号确认代码浏览器会打开显示终端代码的页面。登录后点击「批准」。
  3. 连接 — 此页面打开,终端随即连接练习期间请保持终端窗口打开。下次只需运行 sonub start。

免费练习大脑

  • 每位会员每天最多 1,000,000 个 token(UTC 00:00 重置)。
  • 每次请求最多 100,000 个 token — Claude Code 会自动压缩对话。
  • 仅供练习:只能在 sonub 命令启动的 Claude Code 中使用。不会改动你自己的 Claude 设置(~/.claude)。
  • 云端实验箱:免费,每天不限时。Sonub Code 在箱内什么都能做——运行命令、搜索网页、安装软件包——但碰不到箱外。它的大脑是 SONUB 免费提供的开放模型 Ling 3.0 Flash / Nex-N2.5-Mini / DeepSeek-V4.1-Flash-1017。文件在最后一次使用 7 天后删除。
  • 终端运行在你的电脑上 — Claude Code 生成的文件保存在你电脑的 sonub-lab 文件夹中。
  • 只有 sonub start 打开的 sonub.com 页面,凭一次性配对码,并且只能从这台电脑连接。
  • 在 sonub 窗口按 Ctrl+C 即可停止。卸载:sonub uninstall

学习指南

人工智能

智能体工具

Vibe 编程

AI 应用

AI证书

AI课堂

IT 基础

聊天

论坛

创作

社区

更多

术语词典

选一个你不认识的词吧,可以看到简单的解释和相关术语。

还没有匹配的术语。

选择一个术语即可查看解释。