Communitygithub.com

roebi/agent-skills

AIエージェント向けスキルライブラリ。ターミナル操作、コンテナ管理、AIエージェント実行などをカバーします。

agent-skills とは?

このスキルは、Linuxターミナルでの作業全般を効率的に行うための包括的なリファレンスです。bashの基本コマンドからパイプ、リダイレクト、スクリプト作成、さらにはPodmanやKubernetes(kubectl)などのコンテナ管理、curlによるHTTPリクエスト、aider-chatやClaude CLIなどのAIエージェントの実行までをカバーしています。各トピックには実践的なコマンド例が豊富に含まれており、即座に利用可能です。また、詳細なリファレンスは`references/`ディレクトリに分割されており、必要に応じてオンデマンドで読み込むことで、過度な情報量を避けつつ必要な知識にアクセスできます。AIエージェント(Claude Code、Cursor、Codexなど)がターミナル操作を自動化する際に、正確で安全なコマンド実行を支援するために設計されています。

対応✓Claude Code~Codex CLI~Cursor
npx skills add roebi/agent-skills

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

Terminal & CLI Skill (ターミナル・CLIスキル)

Linuxターミナルでの作業に関するリファレンス — 基本的なbashからコンテナオーケストレーション、AIエージェントの実行まで、フルスタックをカバーします。

このスキルの使い方

このファイルでは最も一般的なパターンを網羅しています。詳細なコマンドリファレンスが必要な場合は、必要に応じてreferences/から該当ファイルを読み込んでください。

トピックリファレンスファイル
Bashの基本: パイプ、スクリプト、ファイルシステム、インストール、環境変数references/bash.md
コンテナ: Podman、Kubernetes (kubectl)、Helmreferences/containers.md
HTTPリクエスト: curlreferences/curl.md
AIエージェント: aider-chat、claude CLIreferences/agents.md

1. bashコマンドを実行する

command [options] [arguments]

# 順次実行 — 最初の失敗で停止
cmd1 && cmd2 && cmd3

# 失敗しても続行
cmd1; cmd2; cmd3

# 出力を変数にキャプチャ
OUTPUT=$(command)

# stdout / stderr / 両方をリダイレクト
command > out.txt
command 2> err.txt
command &> all.txt

# 出力をすべて破棄
command > /dev/null 2>&1

2. ツールが存在するか確認する

type -a tool_name      # ツールが見つかるすべての場所
apropos keyword        # キーワードに一致するコマンドを検索
which tool_name        # PATH上の最初のバイナリ
whereis tool_name      # バイナリ、ソース、manページの場所

3. && で組み合わせる

# 前のコマンドが成功した場合のみ実行
sudo apt update && sudo apt upgrade -y

# 複数のステップを安全にチェーン
mkdir -p build && cd build && cmake ..

4. | でパイプする

# あるコマンドのstdoutを次のコマンドのstdinとして渡す
cmd1 | cmd2 | cmd3

# よく使うパターン
ls -la | grep ".conf"
ps aux | grep nginx
journalctl -u myservice | grep ERROR | tail -20
cat file.txt | wc -l

5. catで内容を読む

cat file.txt                   # ファイル全体をstdoutに
cat file1.txt file2.txt        # 複数ファイルを連結
head -n 20 file.txt            # 最初の20行
 tail -n 20 file.txt            # 最後の20行
tail -f /var/log/app.log       # リアルタイムログ出力を追跡
less file.txt                  # ページ表示(qで終了)
grep "pattern" file.txt        # パターンに一致する行
grep -r "pattern" ./dir/       # ディレクトリ内を再帰検索
grep -n "pattern" file.txt     # 行番号付き
grep -i "pattern" file.txt     # 大文字小文字を区別しない

6. 結果をソートする

sort file.txt                  # アルファベット順(昇順)
sort -r file.txt               # 逆順
sort -n file.txt               # 数値ソート
sort -k2 file.txt              # 2列目でソート
sort -t: -k3 -n /etc/passwd    # カスタム区切り文字(:)、3列目、数値ソート
ls -la | sort -k5 -n           # ls出力をファイルサイズ(5列目)でソート

7. ユニークな結果を取得する

# uniqは*連続する*重複のみを削除 — 必ず先にソートすること
sort file.txt | uniq            # 重複排除
sort file.txt | uniq -c        # 出現回数をカウント
sort file.txt | uniq -d        # 重複行のみ表示
sort file.txt | uniq -u        # 1回しか出現しない行のみ表示

# 典型的なパイプライン: ログ内のエラータイプをカウント
cat app.log | grep ERROR | sort | uniq -c | sort -rn

8. ヒアドキュメントでスクリプトを作成・実行する

# スクリプトファイルをインラインで作成
cat << 'EOF' > myscript.sh
#!/bin/bash
set -euo pipefail   # エラー、未設定変数、パイプ失敗時に終了

echo "今日: $(date +%Y-%m-%d)"

for i in 1 2 3; do
  echo "ステップ $i"
done
EOF

chmod +x myscript.sh
./myscript.sh

# またはファイルを作成せずに直接実行
bash << 'EOF'
echo "インライン実行"
ls -la /tmp
EOF

スクリプトのベストプラクティス:

  • 常に #!/bin/bash で始める
  • 安全なデフォルトとして set -euo pipefail を使用する
  • 変数は常に引用符で囲む: "$VAR" ではなく $VAR
  • バッククォートではなく $(...) を使用する

9. ファイルシステム — クイックリファレンス

# 移動と確認
pwd && ls -lah              # 現在地 + 何があるか
tree -L 2                   # ディレクトリツリー(2階層)
find /path -name "*.log"    # 名前で検索
du -sh /path                # ディレクトリのサイズ
df -h                       # 全マウントのディスク使用量

# 作成 / コピー / 移動 / 削除
mkdir -p /path/to/dir       # 親ディレクトリも作成
cp -r src/ dst/             # ディレクトリをコピー
mv src dst                  # 移動または名前変更
rm -rf dir/                 # 再帰的に削除(元に戻せない)

# パーミッションと所有権
chmod +x file               # 実行可能にする
chmod 644 file              # rw-r--r--
chown user:group file       # 所有者を変更

# リンク
ln -s /target /link         # シンボリックリンク
readlink -f /link           # シンボリックリンクを実パスに解決

# マウント
mount                       # アクティブなマウントをすべて表示
lsblk                       # ブロックデバイスツリー
findmnt                     # マウントポイントツリー

→ 完全なファイルシステムリファレンス: references/bash.md

10. インストールと更新 — クイックリファレンス

# APT
sudo apt update && sudo apt upgrade -y
sudo apt install -y package-name

# pip (Python)
pip install package --break-system-packages

# npm (Node.js)
npm install -g package-name

→ 完全なインストールリファレンス (snap、ソースからのビルド、pipオプション): references/bash.md

11. コマンドのヘルプを表示する

command --help              # インラインヘルプ(最速)
man command                 # 完全なマニュアルページ
apropos keyword             # manページの概要を検索
whatis command              # 1行の説明文
info command                # GNU infoページ(GNUツール用)
help cd                     # シェル組み込みコマンドのヘルプ

12. 環境変数 — クイックリファレンス

export VAR="value"          # 現在のシェルとサブプロセスに設定
echo $VAR                   # 変数の値を読む
unset VAR                   # 変数を削除
env                         # すべての環境変数を表示
VAR=value command           # 単一コマンドに対してのみ設定

→ 変数の永続化、.envファイルの読み込み: references/bash.md


詳細リファレンス

完全なコマンド網羅が必要な場合は、以下のファイルを読み込んでください。

  • references/bash.md — 完全なファイルシステム、インストール/更新、環境変数、スクリプトパターン
  • references/containers.md — Podman、kubectl、Helm
  • references/curl.md — HTTPリクエスト用curl
  • references/agents.md — aider-chat と claude CLI

関連スキル