MCP HubMCP Hub
스킬 목록으로 돌아가기

evolve-agent

pjt222
업데이트됨 2 days ago
6 조회
17
2
17
GitHub에서 보기
기타general

정보

evolve-agent 스킬은 기존 에이전트 정의를 개선하는 기능으로, 에이전트의 페르소나를 직접 수정하거나 고급 변형 버전을 생성합니다. 이 스킬은 평가, 요구사항 수집, 범위 선택, 스킬/도구 변경 적용, 버전 메타데이터 업데이트를 처리합니다. 에이전트 스킬이 구식이 되었거나, 사용자 피드백으로 부족한 점이 발견되거나, 도구 요구사항이 변경되거나, 실제 사용 후 범위를 조정해야 할 때 사용하세요.

빠른 설치

Claude Code

추천
기본
npx skills add pjt222/agent-almanac -a claude-code
플러그인 명령대체
/plugin add https://github.com/pjt222/agent-almanac
Git 클론대체
git clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/evolve-agent

Claude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요

문서

既存のエージェントを進化させる

create-agent で元々作成されたエージェントを改善、拡張、または上級バリアントを作成する。この手順はエージェントライフサイクルのメンテナンス面をカバーする: ベストプラクティスに対するギャップの評価、ペルソナ定義への的を絞った改善の適用、バージョンのバンプ、レジストリとクロスリファレンスの同期。

使用タイミング

  • 新しいスキルがライブラリに追加された後にエージェントのスキルリストが古くなった場合
  • ユーザーフィードバックが欠けている機能、不明確な目的、または弱い例を明らかにした場合
  • ツール要件が変わった(新しいMCPサーバー、ツールが削除された、権限削減が必要)場合
  • エージェントのスコープを調整する必要がある — 別のエージェントと重複しているか広すぎる
  • 元のエージェントと並んで上級バリアントが必要(例: r-developerr-developer-advanced
  • 関連するエージェントまたはチームが追加されて「参照」のクロスリファレンスが古くなった場合

入力

  • 必須: 進化させる既存のエージェントファイルへのパス(例: agents/r-developer.md
  • 必須: 進化のトリガー(フィードバック、新しいスキル、ツール変更、スコープの重複、チーム統合、発見された制限事項)
  • 任意: ターゲットバージョンバンプの大きさ(パッチ、マイナー、メジャー)
  • 任意: 現場での改良ではなく上級バリアントを作成するかどうか(デフォルト: 現場での改良)

手順

ステップ1: 現在のエージェントを評価する

既存のエージェントファイルを読み、guides/agent-best-practices.md の品質チェックリストに対して各セクションを評価する:

セクション確認事項一般的な問題
フロントマター必須フィールドすべて存在(namedescriptiontoolsmodelversionauthortags 欠落、古い version、間違った priority
目的一般的な「Xを助ける」ではない具体的な問題ステートメント曖昧または別のエージェントと重複
機能太字のリードインを持つ具体的で検証可能な機能一般的(「開発を処理する」)、グループ化なし
利用可能なスキルフロントマターの skills リストと一致し、すべてのIDがレジストリに存在古いID、新しいスキルの欠落、不必要にデフォルトスキルを一覧
使用シナリオ呼び出しパターンを含む2〜3の現実的なシナリオプレースホルダーテキスト、非現実的な例
ユーザーリクエストとエージェントの動作を示す欠落または些細な例
制限事項3〜5の正直な制約少なすぎる、曖昧すぎる、または完全に欠落
参照エージェント、ガイド、チームへの有効なクロスリファレンス名前変更または削除されたファイルへの古いリンク
# エージェントファイルを読む
cat agents/<agent-name>.md

# フロントマターの解析を確認する
head -20 agents/<agent-name>.md

# フロントマターのスキルがレジストリに存在するか確認する
grep "skills:" -A 20 agents/<agent-name>.md

# エージェントがいずれかのチームによって参照されているか確認する
grep -r "<agent-name>" teams/*.md

期待結果: セクションごとに整理された具体的なギャップ、弱点、または改善の機会のリスト。

失敗時: エージェントファイルが存在しないかフロントマターがない場合、このスキルは適用されない — 代わりに create-agent を使用してゼロから作成する。

ステップ2: 進化要件を収集する

進化をトリガーしたものを特定して分類する:

トリガー典型的なスコープ
ユーザーフィードバック「エージェントがレビューでXSSを見逃した」スキルまたは機能の追加
新しいスキルが利用可能ライブラリが analyze-api-security を獲得スキルリストの更新
ツール変更新しいMCPサーバーが利用可能ツール/mcp_serversへの追加
スコープの重複2つのエージェントが両方とも「コードレビュー」を主張目的と制限事項を明確にする
チーム統合エージェントが新しいチームに追加された参照の更新、機能の確認
モデルのアップグレードタスクがより深い推論を必要とするモデルフィールドの変更
権限削減エージェントがBashを持つが読み取りのみのファイル不必要なツールを削除

編集する前に必要な特定の変更を文書化する。各変更をエージェントファイルの特定のセクションにマップする:

- フロントマター: スキルリストに `new-skill-id` を追加
- 機能: 「APIセキュリティ分析」機能を追加
- 利用可能なスキル: 説明とともに `new-skill-id` を追加
- 制限事項: 欠落しているスキルに関する古い制限事項を削除
- 参照: このエージェントを含む新しいチームへのリンクを追加

期待結果: 具体的な変更のリストで、それぞれがエージェントファイルの特定のセクションにマップされている。

失敗時: 変更が不明確な場合、進める前にユーザーに確認を求める。曖昧な進化目標は曖昧な改善を生む。

ステップ3: 進化スコープを選択する

この意思決定マトリックスを使用して、現場での改良とバリアントの作成のどちらにするかを決める:

基準改良(現場での)上級バリアント(新しいエージェント)
エージェントID変更なし新しいID: <agent>-advanced または <agent>-<specialty>
ファイルパス同じ .md ファイルagents/ の新しいファイル
バージョンバンプパッチまたはマイナー1.0.0から開始
モデル変わる場合があるしばしばより高い(例: sonnet → opus)
レジストリ既存のエントリを更新新しいエントリを追加
元のエージェント直接変更されるそのまま、「参照」にクロスリファレンスを追加

改良: スキルの更新、ドキュメントの修正、スコープの調整、またはツールの変更時に選択する。エージェントはそのアイデンティティを保持する。

バリアント: 進化したバージョンが実質的に異なる聴衆に提供し、異なるモデルを必要とし、または元のエージェントを広くしすぎる機能を追加する場合に選択する。元のエージェントはより単純なユースケース用にそのまま残る。

期待結果: 根拠を持つ明確な決定 — 改良またはバリアント。

失敗時: 不明確な場合、改良をデフォルトにする。後でバリアントを抽出できるが、元に戻すのは難しい。

ステップ4: エージェントファイルに変更を適用する

改良の場合

既存のエージェントファイルを直接編集する:

  • フロントマター: 必要に応じて skillstoolstagsmodelprioritymcp_servers を更新
  • 目的/機能: 新しいスコープまたは追加された機能を反映するように改訂
  • 利用可能なスキル: 説明とともに新しいスキルを追加し、非推奨のものを削除
  • 使用シナリオ: 新しい機能を示すシナリオを追加または改訂
  • 制限事項: 適用されなくなった制約を削除し、新しい正直な制約を追加
  • 参照: 現在のエージェント/チーム/ガイドのランドスケープを反映するようにクロスリファレンスを更新

これらの編集ルールに従う:

  • 既存のすべてのセクションを保持する — コンテンツを追加し、セクションを削除しない
  • 利用可能なスキルセクションをフロントマターの skills リストと同期させる
  • エージェントの方法論の核心でない限り、デフォルトスキル(meditateheal)をフロントマターに追加しない
  • 各スキルIDが存在することを確認する: grep "id: skill-name" skills/_registry.yml

バリアントの場合

# 元のものを出発点としてコピーする
cp agents/<agent-name>.md agents/<agent-name>-advanced.md

# バリアントを編集する:
# - `name` を `<agent-name>-advanced` に変更
# - `description` を上級スコープを反映するように更新
# - 必要に応じて `model` を上げる(例: sonnet → opus)
# - `version` を "1.0.0" にリセット
# - 上級ユースケースのためにスキル、機能、例を拡張
# - 元のエージェントを「参照」でよりシンプルな代替として参照

期待結果: エージェントファイル(改良または新しいバリアント)がステップ1の評価チェックリストをパスする。

失敗時: 編集でドキュメント構造が壊れた場合、git diff で変更を確認し、git checkout -- <file> で部分的な編集を元に戻す。

ステップ4.5: 翻訳済みバリアントを同期する

翻訳が存在する場合に必須。 このステップは、この手順に従う人間の著者とAIエージェントの両方に適用される。スキップしない — 古い source_commit 値は、npm run validate:translations がすべてのロケールにわたって誤った古さ警告を報告する原因となる。

進化したエージェントの翻訳が存在するかどうかを確認し、新しいソース状態を反映するように更新する:

# 既存の翻訳を確認する
ls i18n/*/agents/<agent-name>.md 2>/dev/null

翻訳が存在する場合

  1. 現在のソースコミットハッシュを取得する:
SOURCE_COMMIT=$(git rev-parse HEAD)
  1. 各翻訳ファイルのフロントマターで source_commit を更新する:
for locale_file in i18n/*/agents/<agent-name>.md; do
  sed -i "s/^source_commit: .*/source_commit: $SOURCE_COMMIT/" "$locale_file"
done
  1. 影響を受けるロケールをコミットメッセージに含めて、再翻訳のためにファイルにフラグを立てる:
evolve-agent(<agent-name>): <変更の説明>

Translations flagged for re-sync: de, zh-CN, ja, es
Changed sections: <変更されたセクションをリストする>
  1. 翻訳ステータスファイルを再生成する:
npm run translation:status

翻訳が存在しない場合

アクション不要。ステップ5に進む。

バリアントの場合

新しいバリアントの翻訳は、バリアントが安定するまで(1〜2バージョン)延期する。v1.2までに大幅に変わる可能性のあるv1.0バリアントを翻訳するのは労力の無駄だ。バリアントが少なくとも1回は改良された後で翻訳を追加する。

期待結果: すべての翻訳ファイルで source_commit が現在のコミットに更新されている。コミットメッセージには、どのロケールで再翻訳が必要か、どのセクションが変更されたかが記載されている。npm run translation:status は0で終了する。

失敗時: sed がフロントマターフィールドにマッチしない場合、翻訳ファイルが非標準のフォーマットになっている可能性がある。手動で開き、YAMLフロントマターに source_commit があることを確認する。フィールドが欠落している場合、ファイルは正しく足場作りされていない — npm run translate:scaffold -- agents で再度足場作りする。

ステップ5: バージョンとメタデータを更新する

セマンティックバージョニングに従ってフロントマターの version フィールドをバンプする:

変更タイプバージョンバンプ
タイポ修正、言い回しの明確化パッチ: 1.0.0 → 1.0.1不明確な制限事項を修正
新しいスキル追加、機能拡張マイナー: 1.0.0 → 1.1.0ライブラリから3つの新しいスキルを追加
目的の再構築、モデルの変更メジャー: 1.0.0 → 2.0.0スコープを絞り、opusにアップグレード

また以下も更新する:

  • updated 日付を現在の日付に
  • エージェントのドメインカバレッジが変わった場合の tags
  • 目的が実質的に異なる場合の description
  • 他のエージェントに対する相対的な重要性が変わった場合の priority

期待結果: フロントマターの versionupdated が変更の大きさと日付を反映している。新しいバリアントは "1.0.0" から始まる。

失敗時: バージョンをバンプするのを忘れた場合、次の進化では現在の状態と以前の状態を区別する方法がない。常にコミット前にバンプする。

ステップ6: レジストリとクロスリファレンスを更新する

改良の場合

agents/_registry.yml の既存のエントリを改訂されたフロントマターに一致するように更新する:

# エージェントのレジストリエントリを見つける
grep -A 10 "id: <agent-name>" agents/_registry.yml

descriptiontagstoolsskills フィールドをエージェントファイルに一致するように更新する。カウントの変更は不要。

エージェントの機能または名前が変わった場合、他のファイルのクロスリファレンスを更新する:

# いずれかのチームがこのエージェントを参照しているか確認する
grep -r "<agent-name>" teams/*.md

# いずれかのガイドがこのエージェントを参照しているか確認する
grep -r "<agent-name>" guides/*.md

バリアントの場合

アルファベット順の位置に agents/_registry.yml に新しいエージェントを追加する:

  - id: <agent-name>-advanced
    path: agents/<agent-name>-advanced.md
    description: One-line description of the advanced variant
    tags: [domain, specialty, advanced]
    priority: normal
    tools: [Read, Write, Edit, Bash, Grep, Glob]
    skills:
      - skill-id-one
      - skill-id-two

次に:

  1. レジストリの先頭の total_agents をインクリメントする
  2. バリアントを指すクロスリファレンスを元のエージェントの「参照」に追加する
  3. 元のエージェントを指すクロスリファレンスをバリアントの「参照」に追加する
  4. agents/ へのシンリンクである .claude/agents/ はバリアントを自動的に発見可能にする

期待結果: レジストリエントリがエージェントファイルのフロントマターと一致する。バリアントの場合、total_agents が実際のエージェントエントリ数と等しい。

失敗時: grep -c "^ - id:" agents/_registry.yml でエントリをカウントし、total_agents と一致することを確認する。

ステップ7: 進化したエージェントを検証する

完全なバリデーションチェックリストを実行する:

  • エージェントファイルが期待されるパスに存在する
  • YAMLフロントマターがエラーなく解析される
  • version がバンプされた(改良)か "1.0.0" に設定された(バリアント)
  • updated 日付が今日を反映している
  • 必須セクションすべてが存在する: 目的、機能、利用可能なスキル、使用シナリオ、例、制限事項、参照
  • フロントマターのスキルが利用可能なスキルセクションと一致する
  • すべてのスキルIDが skills/_registry.yml に存在する
  • デフォルトスキル(meditateheal)は方法論の核心でない限り一覧されていない
  • ツールリストが最小権限原則に従っている
  • レジストリエントリが存在しフロントマターと一致する
  • バリアントの場合: total_agents カウントがディスク上の実際のカウントと一致する
  • クロスリファレンスが双方向(元 ↔ バリアント)
  • git diff で元のコンテンツの偶発的な削除がないことを確認
# フロントマターを確認する
head -20 agents/<agent-name>.md

# スキルが存在するか確認する
for skill in skill-a skill-b; do
  grep "id: $skill" skills/_registry.yml
done

# ディスク上のエージェント数 vs レジストリ
ls agents/*.md | grep -v template | wc -l
grep total_agents agents/_registry.yml

# すべての変更を確認する
git diff

期待結果: すべてのチェックリストアイテムがパスする。進化したエージェントはコミット準備が整っている。

失敗時: 各失敗したアイテムを個別に対処する。最も一般的な進化後の問題は、利用可能なスキルセクションの古いスキルIDと忘れられた updated 日付だ。

バリデーション

  • エージェントファイルが存在し、有効なYAMLフロントマターがある
  • version フィールドが行われた変更を反映している
  • updated 日付が現在
  • すべてのセクションが存在し内部的に一貫している
  • フロントマターの skills 配列が利用可能なスキルセクションと一致する
  • すべてのスキルIDが skills/_registry.yml に存在する
  • デフォルトスキルが不必要に一覧されていない
  • レジストリエントリがエージェントファイルと一致する
  • バリアントの場合: agents/_registry.yml に正しいパスで新しいエントリがある
  • バリアントの場合: total_agents カウントが更新されている
  • クロスリファレンスが有効(「参照」に壊れたリンクなし)
  • git diff で偶発的なコンテンツ削除がないことを確認

よくある落とし穴

  • バージョンのバンプを忘れる: バージョンバンプなしでは、何が変わったか、いつ変わったかを追跡する方法がない。コミット前に常に versionupdated をフロントマターで更新する。
  • スキルリストのずれ: フロントマターの skills 配列と ## Available Skills セクションは同期を保つ必要がある。一方を更新して他方を更新しないと、人間とツールの両方に混乱を引き起こす。
  • デフォルトスキルの不必要な一覧: レジストリからすでに継承されている場合に meditateheal をフロントマターに追加する。方法論の核心である場合(例: mysticalchemist)にのみ一覧する。
  • 進化中のツールの過剰プロビジョニング: 「念のために」進化中に BashWebFetch を追加する。すべてのツール追加は特定の新しい機能によって正当化されるべきだ。
  • バリアント作成後の古くなった「参照」: バリアントを作成するとき、元のエージェントとバリアントの両方がお互いを参照する必要がある。一方向の参照はグラフを不完全にする。
  • 更新されないレジストリエントリ: エージェントのスキル、ツール、または説明を変更した後、agents/_registry.yml エントリを一致するように更新する必要がある。古いレジストリエントリは発見とツールの失敗を引き起こす。

関連スキル

  • create-agent — 新しいエージェントを作成するための基盤; evolve-agentは元々これが従われたと仮定する
  • evolve-skill — SKILL.mdファイルを進化させるための並行手順
  • commit-changes — 説明的なメッセージで進化したエージェントをコミットする

GitHub 저장소

pjt222/agent-almanac
경로: i18n/ja/skills/evolve-agent
0
agentsagentskillsai-assisted-developmentclaude-codeskillsteams

연관 스킬

llamaguard

기타

LlamaGuard는 폭력 및 혐오 발언 등 6가지 안전 범주에서 LLM 입력과 출력을 조정하기 위한 Meta의 70-80억 파라미터 모델입니다. 94-95% 정확도를 제공하며 vLLM, Hugging Face 또는 Amazon SageMaker를 사용해 배포할 수 있습니다. 이 기술을 사용하여 AI 애플리케이션에 콘텐츠 필터링 및 안전 가드레일을 손쉽게 통합하세요.

스킬 보기

cost-optimization

기타

이 Claude Skill은 리소스 적정화, 태깅 전략, 지출 분석을 통해 개발자들이 클라우드 비용을 최적화할 수 있도록 지원합니다. AWS, Azure, GCP에서 클라우드 비용을 절감하고 비용 거버넌스를 구현하기 위한 프레임워크를 제공합니다. 인프라 비용을 분석하거나, 리소스를 적정화하거나, 예산 제약을 충족해야 할 때 사용하세요.

스킬 보기

quantizing-models-bitsandbytes

기타

이 스킬은 bitsandbytes를 사용하여 LLM을 8비트 또는 4비트 정밀도로 양자화하며, 최소한의 정확도 손실로 50-75%의 메모리 감소를 달성합니다. 제한된 GPU 메모리에서 더 큰 모델을 실행하거나 추론을 가속화하는 데 이상적이며, INT8, NF4, FP4와 같은 형식을 지원합니다. 이 스킬은 HuggingFace Transformers와 통합되어 QLoRA 학습 및 8비트 옵티마이저를 가능하게 합니다.

스킬 보기

dispatching-parallel-agents

기타

이 Claude Skill은 3개 이상의 독립적인 문제를 동시에 조사하고 해결하기 위해 다중 에이전트를 배치합니다. 공유 상태나 의존성 없이 해결 가능한 무관련 장애 시나리오에 맞게 설계되었습니다. 핵심 기능은 병렬 문제 해결로, 각 독립 문제 영역마다 하나의 에이전트를 할당하여 효율성을 극대화합니다.

스킬 보기