mattn

Bashguy — Development skill for Claude Code

Development community

A shell widget that generates bash commands from natural language using Claude.

How to install Bashguy

This entry records only its repository, not the path inside it, so there is no exact command to give. Open mattn/bashguy and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Bashguy does

A shell widget that generates bash commands from natural language using Claude.

Alternatives in Development

  • Internet Court Skill — The trust layer for agent-to-agent commerce — natural-language mandates, ERC-7710 delegated permissions, x402 4.9k ★
  • Auto — Smart router - Single entry point with natural language intent detection 2.8k ★
  • Shortcuts Playground Plugin — Shortcuts Playground: A Claude Code and Codex plugin for building, validating, signing, and remixing macOS/iOS 1.1k ★

README

bashguy

A shell widget that generates bash commands from natural language using Claude.

https://github.com/user-attachments/assets/f7d73d76-d7c5-437c-9ac9-8633795f8e3a

Type what you want to do in plain English, and Claude generates the command and inserts it into your command line. If there's already partial input, it inserts a completion at the cursor position.

Requirements

Installation

Add the following to your `.bashrc`:

source /path/to/bashguy.sh

Key Binding

No key binding is set by default. Add a `bind` command after sourcing the script in your `.bashrc`:

source /path/to/bashguy.sh
bind -x '"\C-g": _bashguy_widget'

Examples

Key bind command
Ctrl+G bind -x '"\C-g": _bashguy_widget'
Ctrl+J bind -x '"\C-j": _bashguy_widget'
Ctrl+X Ctrl+G bind -x '"\C-x\C-g": _bashguy_widget'

Usage

  1. Press your bound key to get a [bashguy] prompt
  2. Describe what you want to do (e.g., count the number of files in the current directory)
  3. Claude generates the command and inserts it into your command line

If you press the key with partial input on the command line, it inserts a completion at the cursor position.

Changing the Model

Set the `BASHGUY_MODEL` environment variable to use a different model. The default is `claude-sonnet-4-20250514`.

export BASHGUY_MODEL=claude-haiku-4-5-20251001

License

MIT

Author

Yasuhiro Matsumoto (a.k.a. mattn)