Skip to content
AI & Agents
Skill

/claude-code

Delegate coding to Claude Code CLI (features, PRs).

From plugin
hermes-agent
245k58 skills
Install
$ npx -y skills add NousResearch/hermes-agent --skill claude-code --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/claude-code

Context preview

The summary Claude sees to decide when to auto-load this skill.

Delegate coding to Claude Code CLI (features, PRs).

SKILL.md

claude-code.SKILL.md
name: claude-code
description: "Delegate coding to Claude Code CLI (features, PRs)."
version: 2.2.1
author: Hermes Agent + Teknium
license: MIT
platforms: [linux, macos, windows]
metadata:
  hermes:
    tags: [Coding-Agent, Claude, Anthropic, Code-Review, Refactoring, PTY, Automation]
    related_skills: [codex, hermes-agent, opencode]

Claude Code — Hermes Orchestration Guide

Delegate coding tasks to [Claude Code](https://code.claude.com/docs/en/cli-reference) (Anthropic's autonomous coding agent CLI) via the Hermes terminal. Claude Code v2.x can read files, write code, run shell commands, spawn subagents, and manage git workflows autonomously.

Prerequisites

  • **Install:** `npm install -g @anthropic-ai/claude-code`
  • **Auth:** run `claude` once to log in (browser OAuth for Pro/Max, or set `ANTHROPIC_API_KEY`)
  • **Console auth:** `claude auth login --console` for API key billing
  • **SSO auth:** `claude auth login --sso` for Enterprise
  • **Check status:** `claude auth status` (JSON) or `claude auth status --text` (human-readable)
  • **Health check:** `claude doctor` — checks auto-updater and installation health
  • **Version check:** `claude --version` (requires v2.x+)
  • **Update:** `claude update` or `claude upgrade`

Two Orchestration Modes

Hermes interacts with Claude Code in two fundamentally different ways. Choose based on the task.

Mode 1: Print Mode (`-p`) — Non-Interactive (PREFERRED for most tasks)

Print mode runs a one-shot task, returns the result, and exits. No PTY needed. No interactive prompts. This is the cleanest integration path.

terminal(command="claude -p 'Add error handling to all API calls in src/' --allowedTools 'Read,Edit' --max-turns 10", workdir="/path/to/project", timeout=120)

**When to use print mode:**

  • One-shot coding tasks (fix a bug, add a feature, refactor)
  • CI/CD automation and scripting
  • Structured data extraction with `--json-schema`
  • Piped input processing (`cat file | claude -p "analyze this"`)
  • Any task where you don't need multi-turn conversation

**Print mode skips ALL interactive dialogs** — no workspace trust prompt, no permission confirmations. This makes it ideal for automation.

Mode 2: Interactive PTY via tmux — Multi-Turn Sessions

Interactive mode gives you a full conversational REPL where you can send follow-up prompts, use slash commands, and watch Claude work in real time. **Requires tmux orchestration.**

# Start a tmux session
terminal(command="tmux new-session -d -s claude-work -x 140 -y 40")

# Launch Claude Code inside it
terminal(command="tmux send-keys -t claude-work 'cd /path/to/project && claude' Enter")

# Wait for startup, then send your task
# (after ~3-5 seconds for the welcome screen)
terminal(command="sleep 5 && tmux send-keys -t claude-work 'Refactor the auth module to use JWT tokens' Enter")

# Monitor progress by capturing the pane
terminal(command="sleep 15 && tmux capture-pane -t claude-work -p -S -50")

# Send follow-up tasks
terminal(command="tmux send-keys -t claude-work 'Now add unit tests for the new JWT code' Enter")

# Exit when done
terminal(command="tmux send-keys -t claude-work '/exit' Enter")

**When to use interactive mode:**

  • Multi-turn iterative work (refactor → review → fix → test cycle)
  • Tasks requiring human-in-the-loop decisions
  • Exploratory coding sessions
  • When you need to use Claude's slash commands (`/compact`, `/review`, `/model`)

PTY Dialog Handling (CRITICAL for Interactive Mode)

Claude Code presents up to two confirmation dialogs on first launch. You MUST handle these via tmux send-keys:

Dialog 1: Workspace Trust (first visit to a directory)

❯ 1. Yes, I trust this folder    ← DEFAULT (just press Enter)
  2. No, exit

**Handling:** `tmux send-keys -t <session> Enter` — default selection is correct.

Dialog 2: Bypass Permissions Warning (only with --dangerously-skip-permissions)

❯ 1. No, exit                    ← DEFAULT (WRONG choice!)
  2. Yes, I accept

**Handling:** Must navigate DOWN first, then Enter:

tmux send-keys -t <session> Down && sleep 0.3 && tmux send-keys -t <session> Enter

Robust Dialog Handling Pattern

# Launch with permissions bypass
terminal(command="tmux send-keys -t claude-work 'claude --dangerously-skip-permissions \"your task\"' Enter")

# Handle trust dialog (Enter for default "Yes")
terminal(command="sleep 4 && tmux send-keys -t claude-work Enter")

# Handle permissions dialog (Down then Enter for "Yes, I accept")
terminal(command="sleep 3 && tmux send-keys -t claude-work Down && sleep 0.3 && tmux send-keys -t claude-work Enter")

# Now wait for Claude to work
terminal(command="sleep 15 && tmux capture-pane -t claude-work -p -S -60")

**Note:** After the first trust acceptance for a directory, the trust dialog won't appear again. Only the permissions dialog recurs each time you use `--dangerously-skip-permissions`.

CLI Subcommands

| Subcommand | Purpose | |------------|---------| | `claude` | Start interactive REPL | | `claude "query"` | Start REPL with initial prompt | | `claude -p "query"` | Print mode (non-interactive, exits when done) | | `cat file \| claude -p "query"` | Pipe content as stdin context | | `claude -c` | Continue the most recent conversation in this directory | | `claude -r "id"` | Resume a specific session by ID or name | | `claude auth login` | Sign in (add `--console` for API billing, `--sso` for Enterprise) | | `claude auth status` | Check login status (returns JSON; `--text` for human-readable) | | `claude mcp add <name> -- <cmd>` | Add an MCP server | | `claude mcp list` | List configured MCP servers | | `claude mcp remove <name>` | Remove an MCP server | | `claude agents` | List configured agents | | `claude doctor` | Run health checks on installation and auto-updater | | `claude update` / `claude upgrade` | Update Claude Code to latest version | | `claude remote-control` | Start server to control Claude from claude.ai or mobile app | | `c

Read more
Ships withhermes-agent

The self-improving AI agent built by Nous Research. It's the only agent with a built-in learning loop — it creates skills from experience, improves them during use, nudges itself to persist knowledge, searches its own past conversations, and builds a

Get the whole plugin
Stats
244,172
Stars
50,487
Forks
Active
Maintenance
Python
Language
MIT
License
4d ago
Last commit
1y ago
Created
13d ago
Added

Repo: NousResearch/hermes-agent

Other skills on hermes-agent.