Auto-sync
This commit is contained in:
@@ -21,19 +21,20 @@ TASK_END
|
|||||||
|
|
||||||
```bash
|
```bash
|
||||||
tmux new-session -d -s claude-work -x 140 -y 40
|
tmux new-session -d -s claude-work -x 140 -y 40
|
||||||
tmux send-keys -t claude-work 'claude --dangerously-skip-permissions' Enter
|
tmux send-keys -t claude-work 'claude --permission-mode bypassPermissions' Enter
|
||||||
sleep 5 && tmux send-keys -t claude-work Enter # 信任目录
|
sleep 8 && tmux capture-pane -t claude-work -p # 确认已启动后即可发送任务
|
||||||
sleep 3 && tmux send-keys -t claude-work Down && tmux send-keys -t claude-work Enter # 权限确认
|
|
||||||
sleep 2 && tmux send-keys -t claude-work 'cat /tmp/task.txt' Enter # 从文件读取任务
|
|
||||||
```
|
```
|
||||||
|
|
||||||
|
> 用 `--permission-mode bypassPermissions` 可直接跳过信任目录 + bypass 权限确认两步,不需要额外的 sleep + send-keys 模拟交互。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
## 关键参数说明
|
## 关键参数说明
|
||||||
|
|
||||||
| 参数 | 作用 |
|
| 参数 | 作用 |
|
||||||
|------|------|
|
|------|------|
|
||||||
| `--dangerously-skip-permissions` | 跳过文件写入、网络等操作的确认提示 |
|
| `--permission-mode bypassPermissions` | 直接设置 bypass 模式,跳过所有交互确认(包括信任目录、bypass 权限提示) |
|
||||||
|
| `--dangerously-skip-permissions` | 同上,但通过 CLI 界面内部触发,可能仍需交互确认 |
|
||||||
| `--add-dir <路径>` | 添加可访问目录,可多次使用 |
|
| `--add-dir <路径>` | 添加可访问目录,可多次使用 |
|
||||||
| `--max-turns N` | 最大迭代次数,建议 20-30 |
|
| `--max-turns N` | 最大迭代次数,建议 20-30 |
|
||||||
| `--bare` | 跳过插件/MCP/CLAUDE.md 加载,最快启动 |
|
| `--bare` | 跳过插件/MCP/CLAUDE.md 加载,最快启动 |
|
||||||
@@ -89,7 +90,7 @@ SKILL.md 中定义的触发条件(自然语言模式匹配)会在对话中
|
|||||||
|
|
||||||
## 常见坑点
|
## 常见坑点
|
||||||
|
|
||||||
1. **不写 `--dangerously-skip-permissions`** → 文件写入被阻塞,任务卡住
|
1. **不写 bypass 参数** → 文件写入被阻塞,任务卡住(优先用 `--permission-mode bypassPermissions`)
|
||||||
2. **命令行参数直接传任务**(`claude -p "任务"`)→ 特殊字符(括号、引号)引发 shell 转义错误
|
2. **命令行参数直接传任务**(`claude -p "任务"`)→ 特殊字符(括号、引号)引发 shell 转义错误
|
||||||
3. **max-turns 太小** → 任务没跑完就超时,建议复杂任务设 25-30
|
3. **max-turns 太小** → 任务没跑完就超时,建议复杂任务设 25-30
|
||||||
4. **用管道不用参数** → `echo '任务' | claude -p print` 比 `claude -p "任务"` 更可靠
|
4. **用管道不用参数** → `echo '任务' | claude -p print` 比 `claude -p "任务"` 更可靠
|
||||||
@@ -107,6 +108,8 @@ claude auth status --text
|
|||||||
|
|
||||||
## 完整模板
|
## 完整模板
|
||||||
|
|
||||||
|
### Print Mode
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cat << 'TASK_END' | claude -p print \
|
cat << 'TASK_END' | claude -p print \
|
||||||
--dangerously-skip-permissions \
|
--dangerously-skip-permissions \
|
||||||
@@ -119,6 +122,24 @@ cat << 'TASK_END' | claude -p print \
|
|||||||
TASK_END
|
TASK_END
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### TMUX 交互模式
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# 创建 session 并直接进入 bypass 模式
|
||||||
|
tmux new-session -d -s <session-name> -x 140 -y 40
|
||||||
|
tmux send-keys -t <session-name> 'cd <项目目录> && claude --permission-mode bypassPermissions' Enter
|
||||||
|
sleep 8 && tmux capture-pane -t <session-name> -p # 确认 Claude Code 已就绪
|
||||||
|
|
||||||
|
# 向 session 发送任务
|
||||||
|
tmux send-keys -t <session-name> '[任务描述]' Enter
|
||||||
|
|
||||||
|
# 查看输出
|
||||||
|
tmux capture-pane -t <session-name> -p
|
||||||
|
|
||||||
|
# 附加交互(可选)
|
||||||
|
tmux attach -t <session-name>
|
||||||
|
```
|
||||||
|
|
||||||
输出后检查 stdout 是否包含 `done: 文件路径`,然后用 `MEDIA:/路径` 将文件发送给用户。
|
输出后检查 stdout 是否包含 `done: 文件路径`,然后用 `MEDIA:/路径` 将文件发送给用户。
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|||||||
Reference in New Issue
Block a user