Claude Code Plugins

Community-maintained marketplace

Feedback

Interactive mode features including keyboard shortcuts, vim mode, command history, and background tasks. Use when user asks about REPL, keyboard shortcuts, interactive features, or vim mode.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name interactive-mode
description Interactive mode features including keyboard shortcuts, vim mode, command history, and background tasks. Use when user asks about REPL, keyboard shortcuts, interactive features, or vim mode.

Claude Code Interactive Mode

Overview

Interactive mode provides a rich REPL (Read-Eval-Print Loop) environment with keyboard shortcuts, command history, vim editing, and background task management.

Keyboard Controls

Essential Shortcuts

Shortcut Action
Ctrl+C Cancel current input or generation
Ctrl+D Exit the Claude Code session
Ctrl+L Clear terminal screen (preserves conversation history)
Ctrl+O Toggle verbose output (shows detailed tool usage)
Ctrl+R Search backwards through command history
Ctrl+B Move bash invocation to background
Tab Switch extended thinking on and off

Navigation

Shortcut Action
/ Navigate through command history
/ Move cursor left/right
Home Move to start of line
End Move to end of line

Help

Shortcut Action
? Show help and shortcuts

Multiline Input Methods

Claude Code supports several ways to create multiline inputs:

Universal Method

Line 1 \
Line 2 \
Line 3

Backslash + Enter works universally across all platforms.

macOS Default

Option+Enter

Option+Enter creates a newline on macOS.

After Terminal Setup

Shift+Enter

Shift+Enter functions after running /terminal-setup.

Vim Editor Mode

Enabling Vim Mode

Temporary (current session):

/vim

Permanent:

/config

Then enable vim mode in configuration.

Vim Navigation

Movement:

  • h - Move left
  • j - Move down
  • k - Move up
  • l - Move right
  • w - Move forward one word
  • e - Move to end of word
  • b - Move backward one word
  • 0 - Move to start of line
  • $ - Move to end of line

Editing:

  • i - Insert mode
  • a - Append (insert after cursor)
  • A - Append at end of line
  • I - Insert at start of line
  • x - Delete character
  • dd - Delete line
  • d$ - Delete to end of line
  • d0 - Delete to start of line
  • dw - Delete word
  • . - Repeat last operation

Modes:

  • Esc - Return to normal mode
  • i - Enter insert mode

Command History & Search

Command History

Navigation:

  • - Previous command
  • - Next command

Organization: Session history is organized by working directory for better context.

Search History

Backward search:

  1. Press Ctrl+R
  2. Type search term
  3. Press Ctrl+R again to cycle through matches
  4. Press Enter to execute
  5. Press Esc to cancel

Features:

  • Displays matching commands
  • Highlights search terms
  • Allows cycling through multiple matches

Background Task Execution

Overview

When Claude Code runs a command in the background, it runs the command asynchronously and immediately returns a background task ID.

Trigger Background Execution

Automatic: Claude may prompt to background long-running tasks.

Manual: Press Ctrl+B to move regular bash invocations to the background.

Managing Background Tasks

View output: Output is buffered and can be retrieved later.

Monitor tasks: Claude shows status updates for background tasks.

Continue working: You can interact with Claude while background tasks run.

Quick Command Prefixes

Special Prefixes

Prefix Purpose Example
# Add content to CLAUDE.md memory # Use 2-space indentation
/ Trigger slash commands /help
! Direct bash execution (no Claude interpretation) !ls -la
@ File path autocomplete @src/ + Tab

Memory Shortcut (#)

Add to memory:

# Always use TypeScript strict mode

Claude will prompt you to select the target memory file:

  • Project memory (.claude/CLAUDE.md)
  • User memory (~/.claude/CLAUDE.md)

Direct Bash (!)

Execute without interpretation:

!git status
!npm test
!echo "Hello"

Benefits:

  • Faster execution
  • No AI interpretation overhead
  • Direct command output

File Autocomplete (@)

Trigger autocomplete:

@src/

Press Tab to see file suggestions.

Attach files to conversation:

Review @src/components/Button.tsx for issues

Advanced Features

Extended Thinking

Toggle extended thinking: Press Tab to enable/disable.

What it does:

  • Allows Claude more thinking time
  • Better for complex reasoning
  • Uses more tokens
  • Shows thinking process in verbose mode

Verbose Output

Toggle verbose mode: Press Ctrl+O

What it shows:

  • Detailed tool usage
  • API calls and responses
  • Token usage
  • Performance metrics
  • Debugging information

Screen Management

Clear screen: Press Ctrl+L to clear the terminal while preserving conversation history.

Difference from /clear:

  • Ctrl+L: Clears screen only (visual)
  • /clear: Clears conversation history (context)

Session Management

Exit Session

Clean exit: Press Ctrl+D or type /exit

Force exit: Press Ctrl+C multiple times

Interrupting Operations

Cancel current operation: Press Ctrl+C once

Common scenarios:

  • Long-running AI generation
  • Bash command execution
  • File operations
  • Web searches

Tips & Tricks

Efficient Navigation

Quick history access:

↑    # Previous command
↑↑   # Two commands back

Search specific commands:

Ctrl+R "test"    # Find commands with "test"

Productive Workflows

Background long tasks:

# Long-running test suite
Ctrl+B to background it
Continue working on other tasks

Quick iterations:

↑               # Recall last command
# Edit slightly
Enter           # Execute modified version

Memory building:

# Use snake_case for variables
# Prefer composition over inheritance
# Write tests for all public APIs

Vim Mode Power Users

Fast editing:

Esc             # Normal mode
0               # Start of line
d$              # Delete to end
i               # Insert mode
Type new content
Esc             # Back to normal

Quick fixes:

Esc             # Normal mode
$               # End of line
x               # Delete last character
a               # Append
Type correction

Customization

Configure Terminal

Run setup:

/terminal-setup

What it configures:

  • Multiline input behavior
  • Key bindings
  • Shell integration
  • Terminal compatibility

Configure Settings

Access configuration:

/config

Available settings:

  • Vim mode enable/disable
  • Diff viewer preferences
  • Permission defaults
  • Output preferences

Common Workflows

Exploratory Development

# Ask questions
"explain the authentication flow"

# Make changes
"add rate limiting"

# Test
!npm test

# Adjust
↑ to recall, modify, retry

Debugging Session

# Enable verbose
Ctrl+O

# Run with details
"analyze the memory leak"

# Review verbose output
# Identify issue
# Fix

# Disable verbose
Ctrl+O

Batch Operations

# Background first task
"run full test suite" → Ctrl+B

# Continue with other work
"refactor user module"

# Check background task
# Complete when done

Integration with Shell

Command History Persistence

Claude Code integrates with your shell's command history, allowing you to:

  • Access Claude commands in shell history
  • Use shell history search (Ctrl+R)
  • Mix Claude commands with regular shell commands

Shell Compatibility

Works with:

  • Bash
  • Zsh
  • Fish
  • Other POSIX-compatible shells

Environment Integration

Claude Code respects:

  • Shell environment variables
  • Shell aliases
  • Shell functions
  • Current working directory

Accessibility

Screen Reader Support

Claude Code works with screen readers for:

  • Command input
  • Output reading
  • Navigation

Keyboard-only Navigation

All features accessible via keyboard:

  • No mouse required
  • Full keyboard navigation
  • Comprehensive shortcuts