Auto-sync: 2026-04-27 12:02

This commit is contained in:
2026-04-27 12:03:03 +08:00
parent fbd6107be4
commit 83c6e24e7c
45 changed files with 1898 additions and 886 deletions

View File

@@ -1,50 +1,42 @@
---
title: "Claude Code 调用方法总结"
type: source
tags: []
date: 2026-04-22
---
## Source File
- [[raw/Agent/claude-code调用方法总结]]
## Summary用中文描述
- 核心主题Hermes Agent 通过 terminal 工具调用 Claude Code 的两种模式及最佳实践
- 问题域:如何从外部 Agent(如 Hermes可靠地触发并控制 Claude Code 执行任务
- 方法/机制Print Modestdin 单次执行)与 TMUX 交互模式两种调用路径;关键参数包括 `--permission-mode bypassPermissions``--dangerously-skip-permissions``--add-dir``--max-turns`
- 结论/价值:明确了何时使用 `claude -p` 而非 `delegate_task`,以及如何正确传递任务、配置 Skill 加载、规避常见坑点
## Key Claims用中文描述
- Hermes Agent 使用 `terminal` 工具调用 `claude -p` 是调用 Claude Code 的推荐方式
- `--permission-mode bypassPermissions` 直接设置 bypass 模式,跳过所有交互确认
- 任务文本通过 stdinheredoc传入比命令行参数更可靠可避免特殊字符转义问题
- `delegate_task` 调用的是 Hermes 子 AgentAPI 调用),无法识别 SKILL.md当任务需要 Claude Code 技能时应使`terminal` 调用 `claude -p`
- Skill 加载只需 `--add-dir <技能目录>`Claude Code 会自动扫描 SKILL.md 和 `.claude/skills/` 目录
## Key Quotes
> "用 `--permission-mode bypassPermissions` 可直接跳过信任目录 + bypass 权限确认两步,不需要额外的 sleep + send-keys 模拟交互。" — 核心参数说明
> "不写 bypass 参数 → 文件写入被阻塞,任务卡住(优先用 `--permission-mode bypassPermissions`" — 常见坑点
> "当任务需要调用 Claude Code 的 skill如 fireworks-tech-graph应使用 `terminal` 调用 `claude -p`,而非 `delegate_task`" — 结论
## Key Concepts
- [[Print Mode]]:通过 `claude -p print` 非交互单次执行模式,适合绝大多数任务
- [[TMUX 交互模式]]:通过 TMUX 创建持久会话并附加交互,适合超长任务
- [[bypassPermissions]]`--permission-mode bypassPermissions` 参数,直接跳过所有权限确认
- [[Skill 加载]]`--add-dir` 加载技能目录,自动识别 SKILL.md
- [[delegate_task vs claude -p]]:子 Agent vs 外部 CLI 的本质区别与适用场景
## Key Entities
- [[Claude Code]]Anthropic CLI agent被调用方
- [[Hermes]]:主 Agent通过 terminal 工具调用 Claude Code
- [[TMUX]]:终端多路复用器,用于持久化 Claude Code 交互会话
## Connections
- [[Claude Code]] ← 调用方 ← [[Hermes]]
- [[claude-code调用方法总结]] ← 补充 ← [[如何在项目里安装Claude Code Templates Skills]]
- [[claude-code调用方法总结]] ← 对比 ← [[delegate_task vs claude -p]]
## Contradictions
- 与 [[llm-wiki]] 冲突:
- 冲突点llm-wiki 中描述的 `delegate_task + acp_command='claude'` 调用 Claude Code 路径
- 当前观点AGENTS.md 中说明只有 `provider=copilot-acp` 时 acp 参数才真正建立外部 CLI 通道;普通 `delegate_task` 调用的是 Hermes 子 Agent
- 对方观点llm-wiki 描述了通过 ACP 协议调用 Claude Code 的方式,可能在特定配置下有效
---
title: "Claude Code 调用方法总结"
type: source
tags: [claude-code, hermes, ai-agent, terminal, skill]
date: 2026-04-27
---
## Source File
- [[Agent/claude-code调用方法总结]]
## Summary用中文描述
- 核心主题Hermes Agent 如何通过 terminal 工具调用 Claude Code CLI包含两种调用模式和完整的参数说明
- 问题域:AI Agent 集成与外部工具调用、Claude Code 的程序化调用方式
- 方法/机制Print Mode推荐)和 TMUX 交互模式两种 CLI 调用路径,通过 stdin 传递任务文本,支持 `--permission-mode bypassPermissions` 跳过交互确认
- 结论/价值:为 Hermes Agent 与 Claude Code 的深度集成提供了标准化调用模板,是使用 Claude Code skill如 fireworks-tech-graph的前置知识
## Key Claims用中文描述
- Hermes 通过 `terminal` 工具调用 Claude Code有 Print Mode 和 TMUX 交互模式两种方式
- `--permission-mode bypassPermissions` 直接跳过信任目录和权限确认两步,比 `--dangerously-skip-permissions` 更可靠
- Skill 加载只需 `--add-dir <技能所在目录>`Claude Code 自动扫描 SKILL.md
- `delegate_task` 调用的是 Hermes 子 agentAPI无法使用 Claude Code 的 SKILL.md 能力;当任务需要 Claude Code skill 时必须`terminal` 调用 `claude -p`
## Key Quotes
> "用 `--permission-mode bypassPermissions` 可直接跳过信任目录 + bypass 权限确认两步,不需要额外的 sleep + send-keys 模拟交互" — bypass 模式最简写法
> "当任务需要调用 Claude Code 的 skill如 fireworks-tech-graph应使用 `terminal` 调用 `claude -p`,而非 `delegate_task`" — delegate_task 与 terminal 调用的本质区别
## Key Concepts
- [[ClaudeCodePrintMode]]Claude Code 的非交互单次执行模式,通过 `claude -p print` 配合 stdin 传递任务文本,适合绝大多数自动化场景
- [[ClaudeCodeTerminalIntegration]]Hermes Agent 通过 terminal 工具调用 Claude Code 的两种集成方式Print Mode 和 TMUX 交互模式)
- [[SubagentDelegation]]Hermes Agent 的子 agent 委托机制,通过 API 调用 LLM无法使用 Claude Code SKILL.md
## Key Entities
- [[ClaudeCode]]Anthropic 官方 CLI 工具)——注意:尚未创建独立 Entity 页面,此处仅作概念标注
## Connections
- [[ClaudeCodeTerminalIntegration]] ← 包含 ← [[ClaudeCodePrintMode]]
- [[ClaudeCodeTerminalIntegration]] ← 包含 ← [[TMUX 交互模式]]
- [[ClaudeCodeTerminalIntegration]] ← 依赖 ← [[bypassPermissions]]
- [[SubagentDelegation]] ← 对比 ← [[ClaudeCodePrintMode]]
## Contradictions
- 无已知冲突