CLI 参考
CSC 命令行界面的完整参考,包括命令和标志。
CLI 命令
你可以使用这些命令启动会话、管道内容、恢复对话和管理更新:
| 命令 | 描述 | 示例 |
|---|---|---|
csc | 启动交互式会话 | csc |
csc "query" | 使用初始提示启动交互式会话 | csc "explain this project" |
csc -p "query" | 通过 SDK 查询,然后退出 | csc -p "explain this function" |
cat file | csc -p "query" | 处理管道内容 | cat logs.txt | csc -p "explain" |
csc -c | 继续当前目录中最近的对话 | csc -c |
csc -c -p "query" | 通过 SDK 继续 | csc -c -p "Check for type errors" |
csc -r "<session>" "query" | 按 ID 或名称恢复会话 | csc -r "auth-refactor" "Finish this PR" |
csc update | 更新到最新版本 | csc update |
csc auth login | 登录你的 CoStrict 账户。使用 --email 预填你的电子邮件地址,--sso 强制 SSO 认证,--console 使用 CoStrict Console 进行 API 使用计费而非 Claude 订阅 | csc auth login --console |
csc auth logout | 登出你的 CoStrict 账户 | csc auth logout |
csc auth status | 以 JSON 格式显示认证状态。使用 --text 获取人类可读的输出。已登录时退出码为 0,未登录时为 1 | csc auth status |
csc agents | 列出所有已配置的子代理,按来源分组 | csc agents |
csc auto-mode defaults | 以 JSON 格式打印内置的自动模式分类器规则。使用 csc auto-mode config 查看应用设置后的有效配置 | csc auto-mode defaults > rules.json |
csc mcp | 配置模型上下文协议(MCP)服务器 | 参见 CSC MCP 文档。 |
csc plugin | 管理 CSC 插件。别名:csc plugins。参见插件参考了解子命令 | csc plugin install code-review@claude-plugins-official |
csc remote-control | 启动远程控制服务器,从 costrict.ai 或 Claude 应用控制 CSC。以服务器模式运行(无本地交互式会话)。参见服务器模式标志 | csc remote-control --name "My Project" |
csc setup-token | 为 CI 和脚本生成一个长期有效的 OAuth 令牌。将令牌打印到终端而不保存。需要 Claude 订阅。参见生成长期令牌 | csc setup-token |
CLI 标志
使用这些命令行标志自定义 CSC 的行为。csc --help 不会列出所有标志,因此标志未出现在 --help 中并不意味着它不可用。
| 标志 | 描述 | 示例 |
|---|---|---|
--add-dir | 为 CSC 添加额外的读取和编辑文件的工作目录。授予文件访问权限;大部分 .costrict/ 配置不会从这些目录中发现。验证每个路径是否为有效目录 | csc --add-dir ../apps ../lib |
--agent | 为当前会话指定代理(覆盖 agent 设置) | csc --agent my-custom-agent |
--agents | 通过 JSON 动态定义自定义子代理。使用与子代理 frontmatter 相同的字段名,以及用于代理指令的 prompt 字段 | csc --agents '{"reviewer":{"description":"Reviews code","prompt":"You are a code reviewer"}}' |
--allow-dangerously-skip-permissions | 将 bypassPermissions 添加到 Shift+Tab 模式循环中而不从中启动。允许你从其他模式(如 plan)开始,稍后切换到 bypassPermissions。参见权限模式 | csc --permission-mode plan --allow-dangerously-skip-permissions |
--allowedTools | 无需提示即可执行的工具。参见权限规则语法了解模式匹配。要限制可用的工具,请改用 --tools | "Bash(git log *)" "Bash(git diff *)" "Read" |
--append-system-prompt | 在默认系统提示末尾追加自定义文本 | csc --append-system-prompt "Always use TypeScript" |
--append-system-prompt-file | 从文件加载额外的系统提示文本并追加到默认提示 | csc --append-system-prompt-file ./extra-rules.txt |
--bare | 最小模式:跳过钩子、技能、插件、MCP 服务器、自动记忆和 AGENTS.md 的自动发现,使脚本调用启动更快。CSC 可使用 Bash、文件读取和文件编辑工具。设置 CLAUDE_CODE_SIMPLE。参见裸模式 | csc --bare -p "query" |
--betas | 在 API 请求中包含的 Beta 标头(仅限 API 密钥用户) | csc --betas interleaved-thinking |
--channels | (研究预览)CSC 应在此会话中监听其通道通知的 MCP 服务器。以空格分隔的 plugin:<name>@<marketplace> 条目列表。需要 costrict.ai 认证 | csc --channels plugin:my-notifier@my-marketplace |
--chrome | 启用 Chrome 浏览器集成以进行 Web 自动化和测试 | csc --chrome |
--continue, -c | 加载当前目录中最近的对话 | csc --continue |
--dangerously-load-development-channels | 启用不在批准白名单上的通道,用于本地开发。接受 plugin:<name>@<marketplace> 和 server:<name> 条目。会提示确认 | csc --dangerously-load-development-channels server:webhook |
--dangerously-skip-permissions | 跳过权限提示。等同于 --permission-mode bypassPermissions。参见权限模式了解此选项跳过和不跳过的内容 | csc --dangerously-skip-permissions |
--debug | 启用调试模式,支持可选的类别过滤(例如 "api,hooks" 或 "!statsig,!file") | csc --debug "api,mcp" |
--debug-file <path> | 将调试日志写入指定文件路径。隐式启用调试模式。优先于 CLAUDE_CODE_DEBUG_LOGS_DIR | csc --debug-file /tmp/claude-debug.log |
--disable-slash-commands | 禁用此会话的所有技能和命令 | csc --disable-slash-commands |
--disallowedTools | 从模型上下文中移除且无法使用的工具 | "Bash(git log *)" "Bash(git diff *)" "Edit" |
--effort | 为当前会话设置努力级别。选项:low、medium、high、max(仅 Opus 4.6)。会话范围,不会持久化到设置 | csc --effort high |
--exclude-dynamic-system-prompt-sections | 将系统提示中每台机器的部分(工作目录、环境信息、记忆路径、git 状态)移到第一条用户消息中。提高在不同用户和机器运行相同任务时的提示缓存复用率。仅在使用默认系统提示时适用;设置了 --system-prompt 或 --system-prompt-file 时忽略。与 -p 一起用于脚本化的多用户工作负载 | csc -p --exclude-dynamic-system-prompt-sections "query" |
--fallback-model | 当默认模型过载时启用自动回退到指定模型(仅打印模式) | csc -p --fallback-model sonnet "query" |
--fork-session | 恢复时创建新的会话 ID 而非复用原始会话(与 --resume 或 --continue 一起使用) | csc --resume abc123 --fork-session |
--from-pr | 恢复与特定 GitHub PR 关联的会话。接受 PR 编号或 URL。通过 gh pr create 创建会话时会自动关联 | csc --from-pr 123 |
--ide | 启动时自动连接到 IDE(如果恰好有一个有效的 IDE 可用) | csc --ide |
--init | 运行初始化钩子并启动交互模式 | csc --init |
--init-only | 运行初始化钩子并退出(无交互式会话) | csc --init-only |
--include-hook-events | 在输出流中包含所有钩子生命周期事件。需要 --output-format stream-json | csc -p --output-format stream-json --include-hook-events "query" |
--include-partial-messages | 在输出中包含部分流式事件。需要 --print 和 --output-format stream-json | csc -p --output-format stream-json --include-partial-messages "query" |
--input-format | 指定打印模式的输入格式(选项:text、stream-json) | csc -p --output-format json --input-format stream-json |
--json-schema | 在代理完成工作流后获取匹配 JSON Schema 的已验证 JSON 输出(仅打印模式,参见结构化输出) | csc -p --json-schema '{"type":"object","properties":{...}}' "query" |
--maintenance | 运行维护钩子并启动交互模式 | csc --maintenance |
--max-budget-usd | 在停止前 API 调用可花费的最大美元金额(仅打印模式) | csc -p --max-budget-usd 5.00 "query" |
--max-turns | 限制代理轮次数量(仅打印模式)。达到限制时以错误退出。默认无限制 | csc -p --max-turns 3 "query" |
--mcp-config | 从 JSON 文件或字符串加载 MCP 服务器(以空格分隔) | csc --mcp-config ./mcp.json |
--model | 使用最新模型的别名(sonnet 或 opus)或模型全名设置当前会话的模型 | csc --model claude-sonnet-4-6 |
--name, -n | 为会话设置显示名称,显示在 /resume 和终端标题中。你可以使用 csc --resume <name> 恢复命名会话。/rename 可在会话中途更改名称并显示在提示栏 | csc -n "my-feature-work" |
--no-chrome | 禁用此会话的 Chrome 浏览器集成 | csc --no-chrome |
--no-session-persistence | 禁用会话持久化,使会话不保存到磁盘且无法恢复(仅打印模式) | csc -p --no-session-persistence "query" |
--output-format | 指定打印模式的输出格式(选项:text、json、stream-json) | csc -p "query" --output-format json |
--enable-auto-mode | 在 Shift+Tab 循环中解锁自动模式。需要 Team、Enterprise 或 API 计划以及 Claude Sonnet 4.6 或 Opus 4.6 | csc --enable-auto-mode |
--permission-mode | 以指定的权限模式开始。接受 default、acceptEdits、plan、auto、dontAsk 或 bypassPermissions。覆盖设置文件中的 defaultMode | csc --permission-mode plan |
--permission-prompt-tool | 指定用于在非交互模式下处理权限提示的 MCP 工具 | csc -p --permission-prompt-tool mcp_auth_tool "query" |
--plugin-dir | 仅为此会话从目录加载插件。每个标志接受一个路径。重复标志以指定多个目录:--plugin-dir A --plugin-dir B | csc --plugin-dir ./my-plugins |
--print, -p | 无交互模式打印响应(参见 Agent SDK 文档了解编程用法详情) | csc -p "query" |
--remote | 在 costrict.ai 上创建一个带有提供任务描述的新 Web 会话 | csc --remote "Fix the login bug" |
--remote-control, --rc | 启动启用远程控制的交互式会话,以便你也可以从 costrict.ai 或 Claude 应用控制它。可选传递会话名称 | csc --remote-control "My Project" |
--remote-control-session-name-prefix <prefix> | 未设置显式名称时自动生成的远程控制会话名称前缀。默认为你的机器主机名,生成类似 myhost-graceful-unicorn 的名称。设置 CLAUDE_REMOTE_CONTROL_SESSION_NAME_PREFIX 可达到相同效果 | csc remote-control --remote-control-session-name-prefix dev-box |
--replay-user-messages | 将来自 stdin 的用户消息重新发送到 stdout 以进行确认。需要 --input-format stream-json 和 --output-format stream-json | csc -p --input-format stream-json --output-format stream-json --replay-user-messages |
--resume, -r | 按 ID 或名称恢复特定会话,或显示交互式选择器选择会话 | csc --resume auth-refactor |
--session-id | 为对话使用特定的会话 ID(必须是有效的 UUID) | csc --session-id "550e8400-e29b-41d4-a716-446655440000" |
--setting-sources | 以逗号分隔的要加载的设置来源列表(user、project、local) | csc --setting-sources user,project |
--settings | 用于加载额外设置的设置 JSON 文件路径或 JSON 字符串 | csc --settings ./settings.json |
--strict-mcp-config | 仅使用 --mcp-config 中的 MCP 服务器,忽略所有其他 MCP 配置 | csc --strict-mcp-config --mcp-config ./mcp.json |
--system-prompt | 用自定义文本替换整个系统提示 | csc --system-prompt "You are a Python expert" |
--system-prompt-file | 从文件加载系统提示,替换默认提示 | csc --system-prompt-file ./custom-prompt.txt |
--teleport | 在本地终端恢复 Web 会话 | csc --teleport |
--teammate-mode | 设置代理团队成员的显示方式:auto(默认)、in-process 或 tmux。参见选择显示模式 | csc --teammate-mode in-process |
--tmux | 为工作树创建 tmux 会话。需要 --worktree。可用时使用 iTerm2 原生面板;传递 --tmux=classic 使用传统 tmux | csc -w feature-auth --tmux |
--tools | 限制 CSC 可使用的内置工具。使用 "" 禁用所有,"default" 启用所有,或工具名如 "Bash,Edit,Read" | csc --tools "Bash,Edit,Read" |
--verbose | 启用详细日志,显示完整的逐轮输出 | csc --verbose |
--version, -v | 输出版本号 | csc -v |
--worktree, -w | 在 <repo>/.costrict/worktrees/<name> 处的隔离 git 工作树中启动 CSC。如果未指定名称,则自动生成 | csc -w feature-auth |
系统提示标志
CSC 提供四个用于自定义系统提示的标志。这四个标志在交互模式和非交互模式下均可使用。
| 标志 | 行为 | 示例 |
|---|---|---|
--system-prompt | 替换整个默认提示 | csc --system-prompt "You are a Python expert" |
--system-prompt-file | 用文件内容替换 | csc --system-prompt-file ./prompts/review.txt |
--append-system-prompt | 追加到默认提示 | csc --append-system-prompt "Always use TypeScript" |
--append-system-prompt-file | 将文件内容追加到默认提示 | csc --append-system-prompt-file ./style-rules.txt |
--system-prompt 和 --system-prompt-file 互斥。追加标志可以与任一替换标志组合使用。
对于大多数用例,请使用追加标志。追加保留了 CSC 的内置功能,同时添加你的要求。仅当你需要完全控制系统提示时才使用替换标志。