Communitygithub.com

G1Joshi/Agent-Skills

Git履歴のターミナル操作、対話的ステージング、コミットグラフの可視化、差分調査、 blame ナビゲーションをカバーする、Tig エキスパートによる支援。ターミナル上で Git コミット履歴を参照する、ハンクを対話的にステージングする、ファイル変更をブラウズする、またはリビジョンをレビューする際に使用します。

Agent-Skills とは?

Tig は、Git リポジトリをターミナル上で効率的に操作するためのテキストモードインターフェースです。このスキルは、開発者や AI エージェントがコミットグラフの表示、インタラクティブなステージング、差分調査、および blame によるコードの変更追跡を、マウスを使わずキーボード操作で高速に行えるようにします。主にGitリポジトリのブラウザとして機能し、サーバー環境やSSH接続時などGUIがない環境でも軽快に動作します。このスキルは、`tig` コマンドの基本的な使い方から、`~/.tigrc` を使った高度な設定、`tig status` による細かいハンク単位のステージング、`tig blame` による回帰調査までをカバーします。Vimライクなキーバインドやカスタムキーマップの設定方法も含まれており、ターミナルでのGit操作を大幅に効率化します。

対応~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/G1Joshi/Agent-Skills/tree/HEAD/skills/tools/tig

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

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

ドキュメント

Tig

Tig は、ncursesベースのテキストモードインターフェースであり、主に Git リポジトリブラウザとして機能します。

使用時

  • ターミナルベースの Git 履歴ナビゲーション:ヘッドレスサーバー環境で、コミットグラフ、ブランチ、タグを迅速にブラウズします。
  • インタラクティブなステージングとチャンクコミット:ターミナルから離れずに、差分をレビューし、ハンクをステージングし、ステージングされていない行を元に戻します。
  • Blame とコード注釈:コードの各行について、コミット作成者、タイムスタンプ、コミットログを調査します(tig blame)。
  • 低オーバーヘッドの Git 監査:SSH接続を介して大規模なエンタープライズ Git リポジトリを、GUIの遅延なしに監査します。

クイックスタート

1. 一般的な呼び出し方

# メインブランチのコミットグラフを開く
tig

# 特定のファイルの履歴を表示
tig path/to/file.ts

# コミットされていない変更の差分を表示(ステータスビュー)
tig status

# インタラクティブな blame ビュー
tig blame path/to/file.ts

2. 基本ナビゲーションキー

  • m:メインビュー(コミットグラフ)に切り替え
  • s:ステータスビュー(ステージング)に切り替え
  • d:選択したコミットの差分を表示
  • b:Blame ビュー
  • u:選択したファイルまたは差分ハンクをステージ/アンステージ
  • q:アクティブビューを閉じる / 終了

コアコンセプト

本番用 Tig 設定 (~/.tigrc)

色、キーバインド、ビューレイアウトのカスタマイズ:

# ~/.tigrc
# 一般設定
set line-graphics = utf-8
set tab-size = 2
set main-view = id date:relative author:email-user commit-title:graph=yes,refs=yes
set diff-view = line-number:yes,interval=5
set status-view = line-number:yes

# キーバインド:Vimナビゲーション
bind generic j move-down
bind generic k move-up
bind generic g move-first-line
bind generic G move-last-line
bind generic <Ctrl-f> page-down
bind generic <Ctrl-b> page-up

# クイックアクション
bind main <Enter> view-diff
bind status u stage-update
bind status s stage-update
bind status c !git commit -v

インタラクティブステージビューとハンクステージング

ステータスビューを操作して変更を確認しステージングする:

# Tig を直接ステータスモードで開く
tig status

# ステータスビューのキー操作:
# - 'u' を押してファイルまたはハンクをステージ/アンステージ
# - 'Enter' を押して選択したファイルの差分ビューを開く
# - '1' を押して個々の行をステージング
# - 'c' を押してエディタを開きコミットを作成

tig blame を使用した回帰調査

リポジトリ履歴を通じて行の変更を追跡:

# 特定のファイルのインタラクティブな blame ビューアを起動
tig blame src/auth/jwt_validator.go

# Blame ビューでのナビゲーション:
# - 任意の行で 'Enter' を押すと、その行を導入した完全なコミット差分を表示
# - ',' を押すと、その変更より前の親コミットに対して blame を実行
# - 'q' を押して前のビューに戻る

共通パターン

#カスタム Tig キーバインド (~/.tigrc) 問題:ターミナルでの素早いステージング、リベース、ブランチチェックアウト。 解決策:~/.tigrc でカスタムホットキーを定義する。

# ~/.tigrc
# 'F' をoriginからのfetchにバインド
bind generic F !git fetch origin

# ステータスビューで 'C' を高速コミットにバインド
bind status C !git commit -v

# 'P' を現在のブランチのプッシュにバインド
bind generic P !git push origin HEAD

ベストプラクティス(2026年)

  • 実施すべきこと:~/.tigrc で main-view を commit-title:graph=yes,refs=yes に設定し、明確なブランチ階層を表示する。
  • 実施すべきこと:tig blame を使用して、問題の原因となるコード行を導入したPRやコミットを素早く発見する。
  • 実施すべきこと:tig status を利用して、個々の行ハンク(1)をレビューおよびステージングし、きめ細かくクリーンなGitコミットを行う。
  • 実施すべきこと:Vimキーバインドに慣れている場合は、.tigrc でデフォルトのナビゲーションキーを j/k に再マッピングする。
  • 避けるべきこと:Tig で未解決のマージコンフリクトを放置しない。Tig を使用してコンフリクトの状態を表示し、エディタで解決する。
  • 避けるべきこと:巨大なリポジトリで、ブランチやパスの制限を指定せずに、負荷の高い全履歴のTigビューを実行しない。
  • 避けるべきこと:q を押してセッションを終了せずにビュー階層を上に戻るのを忘れない。

トラブルシューティング

エラー / 症状原因解決策
ターミナルで色が見づらいターミナルテーマのコントラストがTigのデフォルトパレットと衝突~/.tigrc でカスタムカラーを設定する(例:color diff-stat green default)。
Tig が誤った Git リポジトリルートで開く現在の作業ディレクトリがサブモジュール内かリポジトリ外にあるtig を呼び出す前に git rev-parse --show-toplevel で確認する。
blame ビューで cannot open file: ...ファイルがワーキングツリーで名前変更または削除されたコミット参照を明示的に指定する:tig blame HEAD~2 -- path/to/file。

参考文献

Individual skills in this repo

This repo contains 11 individual skills — each has its own dedicated page.

G1Joshi/Agent-Skills

Expert Dask distributed computing assistance covering Dask DataFrames, Arrays, Futures, and cluster scaling. Use when analyzing datasets too large for pandas on a single machine or multi-node cluster.

G1Joshi/Agent-Skills

Expert dbt (data build tool) assistance covering SQL modeling, Jinja macros, tests, documentation, and semantic layer. Use when building analytics engineering pipelines on BigQuery, Snowflake, or PostgreSQL.

G1Joshi/Agent-Skills

Expert JAX assistance covering Autograd, XLA compilation (`jit`), vectorization (`vmap`), and parallelization (`pmap`). Use when building high-performance numerical computing and cutting-edge deep learning research.

G1Joshi/Agent-Skills

Expert Ray distributed computing assistance covering Ray Core (actors, tasks), Ray Train, Ray Tune, and Ray Serve. Use when scaling Python compute and ML training across multi-node clusters.

G1Joshi/Agent-Skills

Expert Git version control assistance covering branching, interactive rebase, cherry-pick, submodules, worktrees, and conflict resolution. Use when managing source code history and collaboration workflows.

G1Joshi/Agent-Skills

Expert K9s CLI assistance covering terminal Kubernetes cluster navigation, real-time log streaming, port forwarding, and pod debugging. Use when managing and troubleshooting Kubernetes clusters with speed.

G1Joshi/Agent-Skills

Expert SWC assistance covering high-performance Rust-based JavaScript/TypeScript compilation, .swcrc configuration, Jest testing via @swc/jest, and minification. Use when replacing Babel with SWC for faster builds, accelerating test execution, or compiling modern ECMAScript features.

G1Joshi/Agent-Skills

Expert Vim assistance covering modal editing, .vimrc configuration, registers, macros, search/replace, and plugin management via vim-plug. Use when editing text efficiently in terminal environments, writing Vimscript, recording macros, or configuring core Vim settings.

G1Joshi/Agent-Skills

Expert Zed editor assistance covering high-performance Rust-based text editing, multi-buffer editing, language server protocols (LSP), and AI assistant integrations. Use when configuring Zed settings.json, setting up language extensions, collaborating in real-time channels, or optimizing editor startup speed.

G1Joshi/Agent-Skills

Expert Zsh assistance covering shell customization, Oh My Zsh plugins, Zinit plugin manager, prompt engineering (Starship/Powerlevel10k), and shell scripting. Use when configuring .zshrc, writing Zsh automation scripts, optimizing shell startup time, or configuring tab-completion.

G1Joshi/Agent-Skills

Expert [skill-name] assistance covering [feature 1], [feature 2], and [feature 3]. Use when [working with X], [debugging Y], or [implementing Z].

関連スキル