我用ccswitch死活选择特定路径打不开wt, 只能打开pwshv5, 看到这个路径, 转念一想cc也许能支持使用特定json启动? 但不知道输入什么命令 3 个帖子 - 2 位参与者 阅读完整话题
CPA docker,部署在vps上,今天出现了management页面无法登陆的情况。第一次更新docker版本至最新版本,解决了。后来又出现了这个问题。请问这是和安全问题相关还是CPA本身的问题吗?还有更新过CPA后,统计页面一直是404,这是为什么?谢谢~ 1 个帖子 - 1 位参与者 阅读完整话题
Claude Code Docs Changelog - Claude Code Docs Release notes for Claude Code, including new features, improvements, and bug fixes by version. 1 个帖子 - 1 位参与者 阅读完整话题
codex /permissions默认自带full access,claude code中默认是没有的需要claude --permission-mode auto 就可以shift+tab切换到auto模式拉。 2 个帖子 - 2 位参与者 阅读完整话题
linux 的 root 模式下 Allow dangerously skip permissions 勾选会导致 cc 无法启动 解决: 1. ctrl+, 打开设置搜索 claude code ,把 Allow dangerously skip permissions 勾打上 2. 下面的 settings 配置文件里环境变量增加"IS_SANDBOX": 1
linux 的 root 模式下 Allow dangerously skip permissions 勾选会导致 cc 无法启动 解决: 1. ctrl+, 打开设置搜索 claude code ,把 Allow dangerously skip permissions 勾打上 2. 下面的 settings 配置文件里环境变量增加"IS_SANDBOX": 1
26.506.21252 这个版本不要更新 改语言为中文会失效,不起作用了 Permissions不支持改了 插件也不见了 底部设置也移走了(这个我真服了) … 我理解不了,实在理解不了 31 个帖子 - 28 位参与者 阅读完整话题
目前是使用cc, 配置目前如下 claude --dangerously-skip-permissions playwright-cli open --headed update-config — Configure Claude Code harness via settings.json simplify — Review changed code for reuse, quality, and efficiency loop — Run a prompt on a recurring interval claude-api — Build apps with the Claude API / Anthropic SDKs claude-mem:do — Execute a phased implementation plan using subagents claude-mem:make-plan — Create a detailed phased implementation plan claude-mem:version-bump — Automated semantic versioning and release workflow claude-mem:smart-explore — Token-optimized structural code search using tree-sitter claude-mem:knowledge-agent — Build and query AI-powered knowledge bases claude-mem:mem-search — Search claude-mem’s persistent cross-session memory claude-mem:timeline-report — Generate a project development history narrative 目前是想要让cc更聪明,调试需求的时候能从前端到后端到数据库实现需求,并且自测没问题,再加上代码审查,还有什么好用的skill或者插件推荐一下么,mcp什么的,相当于给他撞上了最强程序员的配置那种,目前用的是minimax模型最低档的,佬们有什么建议么,虚心请教 1 个帖子 - 1 位参与者 阅读完整话题
求助佬友如何解决,我是在linux服务器上用Codex的 apply patch 报错 1 个帖子 - 1 位参与者 阅读完整话题
theregister.com Claude Desktop changes software permissions without consent : Installation and pre-approval without consent looks dubious under EU law [!quote]+ Anthropic的macOS版Claude Desktop在未披露的情况下安装影响其他厂商应用的文件,甚至在应用安装前就已授权,并且在未获同意的情况下授权浏览器扩展。 隐私顾问兼偶尔为《纪事报》撰稿人亚历山大·汉夫(Alexander Hanff)认为,这使Claude Desktop成为“间谍软件”,违反了欧洲隐私法。 “我想直说,”汉夫在周末的一篇博客文章中写道。“这是一个黑暗的行为。在我专业看来,这也直接违反了2002/58/EC指令(电子隐私指令)第5(3)条,以及大量计算机访问和滥用法律(通常是刑法),规模足以影响公司,而这家厂商花了大量精力被视为安全意识强的人工智能实验室。” 汉夫解释说,他在试图调试另一个使用原生消息(Native Messaging)的应用程序时发现了这份未公开的文件安装,该应用程序是用于Chrome与其他应用通信的API。Claude Desktop 依赖于跨平台的 Electron 框架,而 Electron 框架又依赖于捆绑版的 Chromium。 基本上,Claude Desktop 正在为其 AI 模型设置访问各种浏览器的能力,实现自动化操作。而且它针对用户设备上尚未出现的浏览器,这样这些浏览器如果将来安装,将会授予Claude访问权限。 但汉夫声称出于隐私和安全考虑,他从未安装过任何Anthropic浏览器扩展。Claude Desktop 代为完成了这些工作,且未获披露或许可。 2 个帖子 - 2 位参与者 阅读完整话题
没有那个选项哎,如何在对话中切换呢? 即让Claude不用询问,自动执行模型。 2 个帖子 - 2 位参与者 阅读完整话题
一、/命令: 新手/powerup 新手教程 /model; /config; /effort; /permissions alt + t 开启当前session是否额外思考 alt+m 权限切换 Esc Esc 回滚状态 /tasks 查看后台任务,运行命令 +& 可以后台测试 /remote-control 远程操控 /teleport 将远程历史结果等拉到本地 /status 查看状态 /context 查看上下文使用情况 /compact 传递指令怎么进行上下文压缩,比如保留xx计划 /diff opens an interactive viewer for uncommitted changes — useful for reviewing what Claude has done before committing. /doctor checks installation health 二、Memory: /init 生成CLAUDE.md; /memory在线修改, CLAUDE.md三级 repo/home/ per-directory overrides 对于较大的项目,可以将指令拆分成 .claude/rules/ .md 文件。规则可以是全局的项目,也可以用 Frontmatter 范围到路径。一条带有路径的规则:src/api/**/ .ts 只有在 Claude 处理匹配文件时才会激活: paths: src/api/**/*.ts --- All API endpoints must validate input with Zod. Return 400 with field-level errors on validation failure. CLAUDE_CODE_NEW_INIT=1; CLAUDE_CODE_DISABLE_AUTO_MEMORY=1; 默认自动维护memory; 记住某件事,就自然地问,比如“记住API测试需要Redis。”如果你想把它写进 CLAUDE.md,可以明确要求Claude把它加进去。 三、Project Setup: 代码开始进行init; CLAUDE.md怎么写: A good `CLAUDE.md` is concise and specific. Aim for under 200 lines per file. Every line should be relevant to nearly every session — if something only matters for one feature, put it in a path-scoped rules file instead. The most valuable sections are: tech stack and versions, development commands (install, test, build, lint), naming conventions that aren’t obvious, and known gotchas that would trip up a new developer. eg: # Project: Payment Service ## Stack - Node.js 20, TypeScript 5, PostgreSQL 15 - Express for API, Prisma for ORM, Jest for tests ## Commands - `npm run dev` — start with hot reload - `npm test` — run test suite - `npm run migrate` — apply pending migrations - `npm run lint` — ESLint + Prettier check ## Conventions - All monetary values stored as integers (cents) - Use `Result<T, E>` pattern for error handling, never throw in service layer - Database columns: snake_case; TypeScript: camelCase 三层配置文件: .claude/settings.local.json, .claude/settings.json, ~/.claude/settings.json 四、Commands in Depth 进阶命令 当上下文不够时组合命令: /context /compact focus on the auth refactor /branch /rename auth-refactor-v2 /export auth-refactor-v2.md claude code 内置skills: /simplify:指的是对最近修改的文件进行代码质量审查,同时启动多个并行的审查代理,每个代理专注于不同的审查方面(如安全性、性能、可读性等)。 /batch <instruction>: 对大量文件进行大规模修改,会先规划工作流程,确保变更有序进行。使用隔离的 Git 工作树,以避免对主分支造成干扰,确保操作安全。能够协调验证过程,并支持以拉取请求(PR)为导向的后续跟进,提高协作效率。 /loop 5m check deploy status:以5分钟为间隔周期性执行“检查部署状态”的操作。 会按设定的时间间隔反复运行一个提示或检查任务。 这种重复检查机制特别适用于监控耗时较长的后台操作(如部署、构建等)的状态变化。 /debug:该命令用于启用详细日志记录,帮助诊断Claude行为或工具使用过程中出现的问题。 /claude-api:该命令用于加载项目所用语言的Anthropic SDK参考文档,当检测到项目中导入了@anthropic-ai/sdk或Python的anthropic包时会自动激活。 eg: /simplify /batch add JSDoc comments to all public functions in src/ /loop 2m check if the build finished /debug Fast Mode 使 Claude Opus 4.6 的速度约为 2.5 倍,但token更多;不会降低质量,有次数限制,但/effort会降低质量;{快速模式符号↯} eg: /fast # toggle on/off /fast on # explicitly enable /fast off # explicitly disable 五、快捷键: Ctrl+O :实时查看工具调用和思考步骤 /btw:用于提出一个附加问题或补充信息,不会将其加入对话历史,适合用于核实事实或询问语法细节,避免干扰当前对话上下文。 Ctrl+B:将正在运行的bash命令或代理任务置于后台执行,使用户可以在不中断任务的情况下继续向Claude发出其他指令。 Ctrl+X Ctrl+K:官方快捷键,用于终止所有在后台运行的代理任务 /insights :生成会话分析报告,包含统计数据,说明已完成的任务。 六、Skills .claude/skills/code-review/ ├── SKILL.md # Instructions (required) ├── templates/ │ └── review-checklist.md └── scripts/ └── analyze-metrics.py 技能描述存储:上下文1%+8000字符;更多通过辅助文件引入:比如 For the full review checklist, see [templates/review-checklist.md](templates/review-checklist.md). SKILL.md 通过bash读入,不超过500行,超过的建议加到单个文件中引入; !command 举例: name: pr-summary description: Summarize pull request changes. Use when asked to review or summarize a PR. context: fork agent: Explore --- ## PR context - Diff: !`gh pr diff` - Comments: !`gh pr view --comments` - Changed files: !`gh pr diff --name-only` Summarize the intent and key changes in this pull request. 技能调用: disable-model-invocation: true; 模型不能自动调用skill,deploys, pushes, sends等操作 user-invocable: false,用户不调用,让模型调用 paths: 接受一个 YAML 格式的通配符列表,用于限定技能适用的范围。工作目录匹配这些通配符时,技能才会被加载 eg: --- name: api-generator description: Generate REST API endpoints from schema definitions. paths: ["src/**/*.ts", "tests/**"] --- 七、Hooks 定义: 在 Claude Code 会话中特定事件触发时自动执行的脚本,用于响应系统事件并执行预设操作。 它们通过标准输入(stdin)接收 JSON 格式的输入数据,以便获取事件相关信息。 它们通过退出码和标准输出(stdout)返回 JSON 格式的执行结果,实现与系统通信。 钩子架构与配置 钩子在设置文件中通过一个名为 hooks 的键进行配置。 每个事件都包含一个匹配器数组,每个匹配器又包含一个钩子定义数组。 匹配器字段是一个正则表达式模式,用于匹配工具名称——‘Bash’ 仅精确匹配该工具名,‘Write|Edit’ 匹配其中任意一个,‘ ’ 匹配所有工具,'mcp__github__. ’ 匹配所有以 mcp__github__ 开头的 GitHub MCP 工具。 eg: { "hooks": { "PreToolUse": [ { "matcher": "Bash", "hooks": [ { "type": "command", "command": "python3 \"$CLAUDE_PROJECT_DIR/.claude/hooks/validate-bash.py\"", "timeout": 10 } ] } ] } } Matchers也支持一个条件性的if字段(v2.1.85),该字段使用权限规则语法进一步过滤钩子触发的时机。 虽然matcher通过名称选择工具,但if可将范围缩小到该工具的特定调用。 当您只关注工具调用的子集时这很有用——例如,仅拦截git push命令而不对每次Bash调用都执行操作。 eg: { "hooks": { "PreToolUse": [ { "matcher": "Bash", "if": "Bash(git push*)", "hooks": [ { "type": "command", "command": "/path/to/check-push.sh" } ] } ] } } Claude Code 支持30多个钩子事件。日常工作中最有用的有: PreToolUse(在工具运行前进行验证,可阻止执行) PostToolUse(在工具执行后观察或响应,可添加上下文) UserPromptSubmit(在 Claude 处理用户输入前拦截输入) Stop(在 Claude 完成响应时执行检查) (PermissionRequest), 还有用于权限处理的事件 notifications, 通知事件 subagent lifecycle (SubagentStart, SubagentStop)子代理生命周期事件; failures (PostToolUseFailure, StopFailure),故障事件 config changes, 配置变更事件; file watching (FileChanged) 文件监视事件; context compaction (PreCompact, PostCompact), 上下文压缩事件; worktree management 工作树管理事件。 多个新事件扩展了钩子可响应的范围。 CwdChanged(v2.1.83)在工作目录变更时触发,支持类似 direnv 的动态环境管理——例如,当 Claude 进入项目目录时自动加载环境变量。 TaskCreated(v2.1.84)在使用 TaskCreate 工具时触发,可用于记录或验证新任务的创建。 WorktreeCreate(v2.1.84)在创建工作树代理时触发,并支持 type: ‘http’ 类型的远程通知——适用于在并行工作开始时向外部服务发送警报。 Elicitation(v2.1.76)在 MCP 服务器通过交互式对话请求任务中的结构化用户输入时触发,可拦截并修改该请求内容,在展示给用户前进行调整。 ElicitationResult(v2.1.76)在用户对 MCP 的 elicitation 响应后触发,可拦截并覆盖响应内容,在发送回 MCP 服务器前进行修改。 “PreCompact” 是一个事件名称,指在 Claude Code 执行对话压缩以释放上下文空间之前触发的钩子事件。 它在压缩操作正式开始前运行,允许开发者或系统在关键时刻介入处理。 该事件可用于阻止压缩操作的进行,例如当需要保存当前状态、向用户发出警告或拒绝可能丢失关键信息的自动压缩时。 事件的 matcher 字段用于判断触发原因:当值为 ‘manual’ 时表示用户手动执行了 /compact 命令;当值为 ‘auto’ 时表示系统因上下文容量已满而自动触发了压缩。 若要阻止压缩发生,可通过返回退出码 2 或使用 JSON 决策负载(payload)来实现,例如: { "hooks": { "PreCompact": [ { "matcher": "auto", "hooks": [ { "type": "command", "command": "./scripts/snapshot-context.sh" } ] } ] } } 钩子返回: {"decision": "block", "reason": "active refactor in flight"} 钩子脚本通过 stdin 接收 JSON。Python 钩子的读法是这样的: import json, sys data = json.load(sys.stdin) tool_name = data.get("tool_name", "") tool_input = data.get("tool_input", {}) 退出码0表示成功,需从标准输出(stdout)中解析JSON格式的输出结果。 退出码2表示阻断性错误,Claude会停止运行,并显示你标准错误(stderr)中的信息。 其他任何退出码均表示非阻断性警告,仅在详细模式(verbose mode)下显示。 钩子(Hook)的常见分类和典型应用方式 在执行写入或编辑操作后触发的 工具使用后钩子 ,用于自动化后续处理。 系统会自动调用指定的格式化程序来整理内容。 确保 Claude 的输出始终整洁,表示无论用户输入如何,最终输出都会保持良好的排版和结构。 eg: #!/bin/bash INPUT=$(cat) FILE=$(echo "$INPUT" | python3 -c "import sys,json; print(json.load(sys.stdin).get('tool_input',{}).get('file_path',''))") case "$FILE" in *.ts|*.tsx|*.js) prettier --write "$FILE" 2>/dev/null ;; *.py) black "$FILE" 2>/dev/null ;; *.go) gofmt -w "$FILE" 2>/dev/null ;; esac exit 0 安全扫描在写入时使用PostToolUse和additionalContext输出警告Claude关于它刚刚写入的可能机密信息, 例如 SECRET_PATTERNS = [ (r"api[_-]?key\s*=\s*['\"][^'\"]+['\"]", "Potential hardcoded API key"), (r"password\s*=\s*['\"][^'\"]+['\"]", "Potential hardcoded password"), ] # ... check content, then: output = {"hookSpecificOutput": {"hookEventName": "PostToolUse", "additionalContext": f"Security warnings: {'; '.join(warnings)}"}} print(json.dumps(output)) 使用PreToolUse和正则表达式检查以及退出代码2来阻止危险命令: BLOCKED = [(r"\brm\s+-rf\s+/", "Blocking dangerous rm -rf /")] for pattern, message in BLOCKED: if re.search(pattern, command): print(message, file=sys.stderr) sys.exit(2) Advanced: Prompt Hooks and Component Scope 提示钩子和作用域 prompt 钩子 对于 Stop 和 SubagentStop 停止事件, prompt 类型的钩子使用LLM来评估任务完成情况。LLM阅读对话并返回一个关于是否让Claude停止或继续工作的结构化决策。这对于具有明确完成标准的工作任务来说非常强大。 eg: { "hooks": { "Stop": [ { "hooks": [ { "type": "prompt", "prompt": "Check: 1) Were all files modified? 2) Do tests pass? 3) Is the PR description updated? If anything is missing, explain what.", "timeout": 30 } ] } ] } } agent 钩子 钩子类型 “agent” 会派生一个子代理进行评估——与提示钩子(单轮)不同,代理钩子可以使用工具并执行多步推理。当检查需要读取文件或运行命令时使用此功能。 钩子也可以通过hooks frontmatter字段针对单个技能和代理进行范围限定。一个技能的前置工具使用钩子仅在执行该技能时触发: eg: --- name: production-deploy hooks: PreToolUse: - matcher: "Bash" hooks: - type: command command: "./scripts/production-safety-check.sh" once: true --- once : true : 只在会话中运行一次钩子,而不是在每次匹配工具使用时都运行。这对于只需要发生一次的设置检查很有用。 2 个帖子 - 1 位参与者 阅读完整话题