Agent Skills by ALSEL
Anthropic ClaudeLLM・AI開発⭐ リポ 0品質スコア 50/100

git-workflow

効果的なバージョン管理のために必要なGitのパターンをまとめたスキルで、各エージェントへの冗長なGit操作の説明を省略できます。

description の原文を見る

Essential Git patterns for effective version control, eliminating redundant Git guidance per agent.

SKILL.md 本文

Git ワークフロー

効果的なバージョン管理のための Essential Git パターン。エージェントごとの冗長な Git ガイダンス約 120~150 行を削減します。

コミット ベストプラクティス

Conventional Commits フォーマット

<type>(<scope>): <subject>

<body>

<footer>

型:

  • feat: 新機能
  • fix: バグ修正
  • docs: ドキュメント変更のみ
  • refactor: バグ修正も機能追加もしないコード変更
  • perf: パフォーマンス改善
  • test: テスト追加または更新
  • chore: ビルドプロセス、依存関係、ツーリング

例:

feat(auth): add OAuth2 authentication

Implements OAuth2 flow using Google provider.
Includes token refresh and validation.

Closes #123

fix(api): handle null response in user endpoint

Previously crashed when user not found.
Now returns 404 with error message.

perf(db): optimize user query with index

Reduces query time from 500ms to 50ms.

アトミックコミット

# 良い例: 各コミットが 1 つのことだけをする
git commit -m "feat: add user authentication"
git commit -m "test: add auth tests"
git commit -m "docs: update API docs for auth"

# 悪い例: 関連のない複数の変更
git commit -m "add auth, fix bugs, update docs"

ブランチ戦略

Git Flow (フィーチャーブランチ)

# main からフィーチャーブランチを作成
git checkout main
git pull origin main
git checkout -b feature/user-authentication

# 定期的なコミットでフィーチャーを実装
git add src/auth.py
git commit -m "feat(auth): implement login endpoint"

# ブランチを main の最新状態に保つ
git checkout main
git pull origin main
git checkout feature/user-authentication
git rebase main  # または: git merge main

# プッシュして PR を作成
git push -u origin feature/user-authentication

Trunk-Based Development

# main に直接働いて短命ブランチを使用
git checkout main
git pull origin main
git checkout -b fix/null-pointer
# 小さな変更を実施
git commit -m "fix: handle null in user query"
git push origin fix/null-pointer
# PR で即座にマージ

よくあるワークフロー

ブランチを最新の変更で更新

# オプション 1: リベース (履歴がきれい)
git checkout feature-branch
git fetch origin
git rebase origin/main

# 競合がある場合は解決
git add resolved_file.py
git rebase --continue

# オプション 2: マージ (履歴を保持)
git checkout feature-branch
git merge origin/main

変更を取り消す

# 最後のコミットを取り消す (変更は保持)
git reset --soft HEAD~1

# 最後のコミットを取り消す (変更を破棄)
git reset --hard HEAD~1

# 特定のファイルの変更を取り消す
git checkout -- file.py

# コミットを取り消す (新しいコミットを作成)
git revert abc123

# 最後のコミットを修正
git add forgotten_file.py
git commit --amend --no-edit

作業を一時保存

# 現在の作業を一時的に保存
git stash

# stash の一覧を表示
git stash list

# 最新の stash を適用
git stash pop

# 特定の stash を適用
git stash apply stash@{0}

# 名前付き stash を作成
git stash save "WIP: authentication feature"

コミットのチェリーピック

# 別のブランチの特定のコミットを適用
git cherry-pick abc123

# 複数のコミットをチェリーピック
git cherry-pick abc123 def456

# コミットせずにチェリーピック
git cherry-pick -n abc123

競合を解決

# マージ/リベース中に競合が発生した場合
# 1. 競合しているファイルを確認
git status

# 2. ファイルを編集して競合を解決
# 競合マーカーを探す:
<<<<<<< HEAD
あなたの変更
=======
相手の変更
>>>>>>> branch-name

# 3. 解決済みとしてマーク
git add resolved_file.py

# 4. 操作を続行
git rebase --continue  # または git merge --continue

履歴を表示

# コンパクトなログ
git log --oneline -10

# グラフィカルなログ
git log --graph --oneline --all

# 作者別のコミット
git log --author="John Doe"

# 特定のファイルに影響するコミット
git log -- path/to/file.py

# コミットの変更内容を表示
git show abc123

# ブランチを比較
git diff main..feature-branch

ブランチ管理

# ブランチの一覧を表示
git branch -a  # すべてのブランチ (ローカル + リモート)

# ローカルブランチを削除
git branch -d feature-branch  # 安全な削除 (マージ済みのみ)
git branch -D feature-branch  # 強制削除

# リモートブランチを削除
git push origin --delete feature-branch

# ブランチの名前を変更
git branch -m old-name new-name

# リモートブランチを追跡
git checkout --track origin/feature-branch

タグ

# ライトウェイトタグを作成
git tag v1.0.0

# アノテーション付きタグを作成 (推奨)
git tag -a v1.0.0 -m "Release version 1.0.0"

# タグをリモートにプッシュ
git push origin v1.0.0
git push origin --tags  # すべてのタグをプッシュ

# タグをチェックアウト
git checkout v1.0.0

# タグを削除
git tag -d v1.0.0
git push origin --delete v1.0.0

高度な操作

インタラクティブリベース

# 最後の 3 つのコミットを編集
git rebase -i HEAD~3

# エディタでのオプション:
# pick = コミットを使用
# reword = コミットメッセージを変更
# edit = 変更するために停止
# squash = 前のコミットと結合
# fixup = squash のようだがメッセージを破棄
# drop = コミットを削除

Bisect (バグが導入された箇所を探す)

# bisect を開始
git bisect start
git bisect bad  # 現在のバージョンにバグがある
git bisect good v1.0.0  # このバージョンは正常

# Git が中央のコミットをチェックアウト
# バグが存在するか確認
git bisect bad  # バグが存在する場合
git bisect good  # バグが存在しない場合

# Git が最初の悪いコミットが見つかるまで絞り込む
git bisect reset  # 元のブランチに戻る

Blame (誰がその行を変更したかを探す)

# 各行を最後に変更した人を表示
git blame file.py

# 空白の変更を無視
git blame -w file.py

# 特定の行の範囲を表示
git blame -L 10,20 file.py

Git フック

# pre-commit フック (コミット前に実行)
# .git/hooks/pre-commit
#!/bin/bash
npm run lint
npm test

# pre-push フック (プッシュ前に実行)
# .git/hooks/pre-push
#!/bin/bash
npm run test:integration

ベストプラクティス

✅ すべき こと

  • アトミックな変更で頻繁にコミット
  • 明確で説明的なコミットメッセージを記述
  • プッシュ前にプル (競合を避けるため)
  • コミット前に変更を確認 (git diff --staged)
  • フィーチャーと修正にブランチを使用
  • コミットを小さくて集中したものに保つ

❌ するべきでないこと

  • 機密データをコミット (.gitignore を使用)
  • 生成ファイルをコミット (ビルドアーティファクト、node_modules)
  • 共有ブランチに強制プッシュ (git push --force)
  • 作業中の状態を main にコミット
  • 関連のない複数の変更を 1 つのコミットに含める
  • 公開済みの履歴を書き換える

.gitignore パターン

# 依存関係
node_modules/
venv/
__pycache__/

# ビルド出力
dist/
build/
*.pyc
*.o
*.exe

# IDE
.vscode/
.idea/
*.swp

# 機密情報
.env
*.key
*.pem
secrets.yml

# OS
.DS_Store
Thumbs.db

# ログ
*.log
logs/

クイックコマンドリファレンス

# ステータスと差分
git status
git diff
git diff --staged

# コミット
git add .
git commit -m "message"
git push

# ブランチ
git branch
git checkout -b branch-name
git merge branch-name

# 更新
git pull
git fetch

# 取り消す
git reset HEAD~1
git checkout -- file
git revert commit-hash

# 履歴
git log
git log --oneline
git show commit-hash

覚えておくこと

  • 頻繁にコミット - 小さいコミットはレビューと復元が簡単
  • 説明的なメッセージ - 将来のあなたが感謝するでしょう
  • プッシュ前にプル - チームとの同期を保つ
  • ブランチを使用 - main を安定した状態に保つ
  • コミット前にレビュー - 何がコミットされるかを確認

ライセンス: MIT(寛容ライセンスのため全文を引用しています) · 原本リポジトリ

詳細情報

作者
bobmatnyc
リポジトリ
bobmatnyc/claude-mpm-skills
ライセンス
MIT
最終更新
不明

Source: https://github.com/bobmatnyc/claude-mpm-skills / ライセンス: MIT

関連スキル

OpenAILLM・AI開発⭐ リポ 6,054

agent-browser

AI エージェント向けのブラウザ自動化 CLI です。ウェブサイトとの対話が必要な場合に使用します。ページ遷移、フォーム入力、ボタンクリック、スクリーンショット取得、データ抽出、ウェブアプリのテスト、ブラウザ操作の自動化など、あらゆるブラウザタスクに対応できます。「ウェブサイトを開く」「フォームに記入する」「ボタンをクリックする」「スクリーンショットを取得する」「ページからデータを抽出する」「このウェブアプリをテストする」「サイトにログインする」「ブラウザ操作を自動化する」といった要求や、プログラマティックなウェブ操作が必要なタスクで起動します。

by JimmyLv
汎用LLM・AI開発⭐ リポ 1,982

anyskill

AnySkill — あなたのプライベート・スキルクラウド。GitHubを基盤としたリポジトリからエージェントスキルを管理、同期、動的にロードできます。自然言語でクラウドスキルを検索し、オンデマンドでプロンプトを自動ロード、カスタムスキルのアップロードと共有、スキルバンドルの一括インストールが可能です。OpenClaw、Antigravity、Claude Code、Cursorに対応しています。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 1,982

engram

AIエージェント向けの永続的なメモリシステムです。バグ修正、意思決定、発見、設定変更の後はmem_saveを使用してください。ユーザーが「覚えている」「記憶している」と言及した場合、または以前のセッションと重複する作業を開始する際はmem_searchを使用します。セッション終了前にmem_session_summaryを使用して、コンテキストを保持してください。

by LeoYeAI
汎用LLM・AI開発⭐ リポ 21,584

skyvern

AI駆動のブラウザ自動化により、任意のウェブサイトを自動化できます。フォーム入力、データ抽出、ファイルダウンロード、ログイン、複数ステップのワークフロー実行など、ユーザーがウェブサイトと連携する必要があるときに使用します。Skyvernは、LLMとコンピュータビジョンを活用して、未知のサイトも自動操作可能です。Python SDK、TypeScript SDK、REST API、MCPサーバー、またはCLIを通じて統合できます。

by Skyvern-AI
汎用LLM・AI開発⭐ リポ 1,149

pinchbench

PinchBenchベンチマークを実行して、OpenClawエージェントの実世界タスクにおけるパフォーマンスを評価できます。モデルの機能テスト、モデル間の比較、ベンチマーク結果のリーダーボード提出、またはOpenClawのセットアップがカレンダー、メール、リサーチ、コーディング、複数ステップのワークフローにどの程度対応しているかを確認する際に使用します。

by pinchbench
汎用LLM・AI開発⭐ リポ 4,693

openui

OpenUIとOpenUI Langを使用してジェネレーティブUIアプリを構築できます。これらはLLM生成インターフェースのためのトークン効率的なオープン標準です。OpenUI、@openuidev、ジェネレーティブUI、LLMからのストリーミングUI、AI向けコンポーネントライブラリ、またはjson-render/A2UIの置き換えについて述べる際に使用します。スキャフォルディング、defineComponent、システムプロンプト、Renderer、およびOpenUI Lang出力のデバッグに対応しています。

by thesysdev
本サイトは GitHub 上で公開されているオープンソースの SKILL.md ファイルをクロール・インデックス化したものです。 各スキルの著作権は原作者に帰属します。掲載に問題がある場合は info@alsel.co.jp または /takedown フォームよりご連絡ください。
原作者: bobmatnyc · bobmatnyc/claude-mpm-skills · ライセンス: MIT