terminal-killer

Intelligent shell command detector and executor for OpenClaw. Automatically identifies terminal commands (system builtins, $PATH executables, history matches, command patterns) and executes directly without LLM overhead. Cross-platform support (macOS/Linux/Windows). Use when user input appears to be a shell command to skip AI processing and run immediately.

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "terminal-killer" with this command: npx skills add cosperypf/terminal-killer

Terminal Killer

🚀 Smart command router that executes shell commands directly, bypassing LLM for instant terminal operations.

Quick Start

Terminal Killer automatically activates when user input matches command patterns. No special syntax needed — just type commands naturally:

ls -la              # → Direct exec
git status          # → Direct exec  
npm install         # → Direct exec
"help me code"      # → LLM handles normally

How It Works

Detection Pipeline

User Input → Command Detector → Decision
                                      ├── Command → exec (direct)
                                      └── Task → LLM (normal)

Environment Loading

Terminal Killer automatically loads your shell environment before executing commands:

  1. Detects your shell (zsh, bash, etc.)
  2. Sources init files (~/.zshrc, ~/.bash_profile, ~/.bashrc, etc.)
  3. Inherits full PATH - including custom paths like Android SDK, Homebrew, etc.
  4. Preserves environment variables - all your export VAR=value settings

This ensures commands like adb, kubectl, docker, etc. work exactly as they do in your terminal!

Detection Rules (in order)

  1. System Builtins - Check against OS-specific builtin commands
  2. PATH Executables - Scan $PATH for matching executables
  3. History Match - Compare against recent shell history
  4. Command Pattern - Heuristic analysis (operators, paths, etc.)
  5. Confidence Score - Combine signals for final decision

Detection Details

1. System Builtins

Checks input against known builtin commands for the current OS:

macOS/LinuxWindows (PowerShell)Windows (CMD)
cd, pwd, lscd, pwd, lscd, dir, cls
echo, catecho, catecho, type
mkdir, rm, cpmkdir, rm, cpmkdir, del, copy
grep, findgrep, findfindstr
git, npm, nodegit, npm, nodegit, npm, node

See references/builtins/ for complete lists.

2. PATH Executable Check

Scans $PATH directories to verify if the first word is an executable:

# Uses `which` (Unix) or `Get-Command` (PowerShell)
which <command>    # Returns path if exists

3. History Matching

Compares input against recent shell history (~/.zsh_history, ~/.bash_history, PowerShell history):

  • Exact match → High confidence
  • Similar prefix → Medium confidence
  • No match → Continue checking

4. Command Pattern Analysis

Heuristic scoring based on command characteristics:

PatternScoreExample
Starts with known command+3git status
Contains shell operators+2`ls
Contains path references+2cd ~/projects
Contains flags/args+1npm install --save
Contains $ variables+2echo $HOME
Contains redirection+2cat file > out
Looks like natural language-3"please help me"
Contains question marks-2"how do I...?"

5. Confidence Threshold

Score >= 5  → EXECUTE (high confidence command)
Score 3-4   → ASK (uncertain, confirm with user)
Score < 3   → LLM (likely a task/request)

Usage

Automatic Activation

Terminal Killer triggers automatically when:

  • User input starts with a verb-like word
  • Input is short (< 20 words typically)
  • No question words (what, how, why, etc.)

Interactive Commands

Terminal Killer automatically detects and handles interactive shell commands:

Detected Patterns:

  • adb shell - Opens new terminal with adb shell
  • ssh user@host - Opens SSH session in new window
  • docker exec -it container bash - Opens container shell
  • mysql -u root -p - Opens MySQL client
  • python, node, bash - Opens REPL in new window

Behavior:

  • ✅ Automatically opens new Terminal window (macOS)
  • ✅ Loads your full shell environment (~/.zshrc, etc.)
  • ✅ Keeps main session free for other tasks

Manual Override

Force command execution:

!ls -la          # Force exec even if uncertain

Force LLM handling:

?? explain git   # Force LLM even if looks like command

Safety Features

Dangerous Command Detection

Automatically flags potentially dangerous operations:

  • rm -rf / or similar destructive patterns
  • sudo commands (requires explicit approval)
  • dd, mkfs, chmod 777
  • Network operations to suspicious hosts
  • Commands modifying system files

Approval Workflow

Dangerous command detected!

Command: rm -rf ./important-folder
Risk: HIGH - Recursive delete

[Approve] [Deny] [Edit]

Audit Logging

All executed commands are logged to:

~/.openclaw/logs/terminal-killer.log

Log format:

{
  "timestamp": "2026-02-28T12:00:00Z",
  "command": "ls -la",
  "confidence": 8,
  "execution_time_ms": 45,
  "output_lines": 12,
  "status": "success"
}

Configuration

Settings

Add to your OpenClaw config:

terminal-killer:
  enabled: true
  confidence_threshold: 5
  require_approval_for:
    - "rm -rf"
    - "sudo"
    - "dd"
    - "mkfs"
  log_executions: true
  max_history_check: 100  # How many history entries to check

Platform Detection

Automatically detects OS and adjusts detection rules:

# Auto-detected at runtime
uname -s  # Darwin, Linux, etc.

Implementation

Core Script

See scripts/detect-command.js for the main detection logic.

Helper Scripts

  • scripts/check-path.js - Verify executable in PATH
  • scripts/check-history.js - Match against shell history
  • scripts/score-command.js - Calculate confidence score
  • scripts/safety-check.js - Detect dangerous patterns

Testing

See references/TESTING.md for comprehensive test guide.

Quick test:

# Run the test suite
node scripts/test-detector.js

# Test specific commands
node scripts/detect-command.js "ls -la"
node scripts/detect-command.js "help me write code"

Limitations

  • Requires shell access (won't work in sandboxed environments)
  • History check needs read access to shell history files
  • Windows support requires PowerShell or WSL for full functionality
  • Some commands may have false positives (natural language that looks like commands)

Contributing

To add new builtin commands for your platform:

  1. Edit references/builtins/<platform>.txt
  2. Test with scripts/test-detector.js
  3. Submit PR with platform verification

👤 About the Creator

Author: Cosper
Contact: cosperypf@163.com
License: MIT

📬 Get in Touch

Interested in this skill? Have suggestions, bug reports, or want to collaborate?

  • 📧 Email: cosperypf@163.com
  • 💡 Suggestions: Always welcome!
  • 🐛 Bug Reports: Please include platform, OpenClaw version, and example inputs
  • 🤝 Collaboration: Open to contributions and improvements

🙏 Acknowledgments

Built for the OpenClaw community. Thanks to everyone contributing to the ecosystem!


📝 Changelog

v1.1.0 (2026-02-28)

🎯 Core Improvements:

  1. ✅ Faithful Command Execution

    • Commands are executed exactly as input
    • No modifications, no optimizations, no additions
    • Raw output preserved (including progress bars, special characters, etc.)
  2. 🪟 Interactive Shell Detection

    • Automatically detects interactive commands (adb shell, ssh, docker exec -it, etc.)
    • Opens new Terminal window for interactive sessions
    • Keeps main session free for other tasks
    • Loads full shell environment (~/.zshrc, etc.)
  3. 📜 Long Output Handling

    • Detects output longer than 2000 bytes
    • Shows 200-character preview
    • Prompts user to open in new Terminal window
    • Prevents interface rendering issues with long content

📦 Files Updated:

  • scripts/index.js - Long output detection + interactive command handling
  • scripts/interactive.js - New Terminal window opener
  • SKILL.md - Updated documentation
  • README.md - Usage examples
  • clawhub.json - Version bump to 1.1.0

v1.0.0 (2026-02-28)

Initial Release:

  • Smart command detection (system builtins, PATH, history, patterns)
  • Cross-platform support (macOS/Linux/Windows)
  • Environment variable loading (~/.zshrc, etc.)
  • Dangerous command detection
  • Confidence scoring system

Version: 1.1.0
Created: 2026-02-28
Last Updated: 2026-02-28

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

Chinese Voice Detective Mystery Game

中文语音侦探推理游戏。适用于用户想玩一场沉浸式推理探案的场景:由 LLM 生成包含嫌疑人、线索和真凶的完整案件,玩家通过审讯嫌疑人(支持 ASR 语音或文本输入)、勘察现场、收集证据,最终提出指控并获得评分。支持多音色 TTS 为不同嫌疑人配音,审讯历史自动压缩防止上下文溢出,案件生成后自动验证逻辑自洽性。支持存...

Registry SourceRecently Updated
00Profile unavailable
General

Feishu Card JSON v2

发送飞书互动卡片(Card JSON 2.0)。当需要让飞书用户填写表单、做选择、确认操作、或查看 结构化数据时,发送交互卡片代替纯文字问答。需要 feishu-cards 插件工具: feishu_send_card / feishu_send_form / feishu_update_card。

Registry SourceRecently Updated
570Profile unavailable
General

Openclaw Rescue Kit

OpenClaw 自救套件 - 网关启动包装(端口冲突防护)、看门狗监控、自动重启、配置回滚、安全加固、日志清理、Git版本管理。当用户提到 OpenClaw 网关崩溃、需要看门狗、配置回滚、安全扫描、日志清理、端口冲突、或部署自救脚本时使用此技能。包含 10 个独立脚本和完整部署指南。

Registry SourceRecently Updated
3030Profile unavailable
General

Science Sim Author

Generate self-contained interactive science simulations as a single index.html from a SimSpec YAML or JSON. Use when the user asks for physics, chemistry, bi...

Registry SourceRecently Updated
2190Profile unavailable