/ ディレクトリ / プレイグラウンド / AI-bounty-skill
● コミュニティ aelf-hzz780 ⚡ 即起動

AI-bounty-skill

作者 aelf-hzz780 · aelf-hzz780/AI-bounty-skill

aelf AI バウンティを tDVV 上の RewardClaimContract 経由で請求する手順を案内する Claude Code スキルです。EOA ウォレットと Portkey CA ウォレットの両方に対応しています。

用途を絞ったスキルです。aelf の AA/CA ウォレット(ノンカストディアル、取引所アドレスではないもの)がすでにセットアップされている前提で、RewardClaimContract の Claim() または ClaimByPortkeyToCa() を正しく呼び出す方法を Claude が案内します。スキル自体は秘密鍵を保持しません — 署名は Portkey 側で行います。ウォレットではなく、操作手順のガイドとしてお使いください。

なぜ使うのか

主な機能

ライブデモ

実際の動作

ai-bounty-skill.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "ai-bounty-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aelf-hzz780/AI-bounty-skill",
        "~/.claude/skills/AI-bounty-skill"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "ai-bounty-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aelf-hzz780/AI-bounty-skill",
        "~/.claude/skills/AI-bounty-skill"
      ],
      "_inferred": true
    }
  }
}

Cursor は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "ai-bounty-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aelf-hzz780/AI-bounty-skill",
        "~/.claude/skills/AI-bounty-skill"
      ],
      "_inferred": true
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"Edit Configuration" を選択。

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "ai-bounty-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aelf-hzz780/AI-bounty-skill",
        "~/.claude/skills/AI-bounty-skill"
      ],
      "_inferred": true
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "ai-bounty-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/aelf-hzz780/AI-bounty-skill",
        "~/.claude/skills/AI-bounty-skill"
      ]
    }
  ]
}

Continue はマップではなくサーバーオブジェクトの配列を使用。

~/.config/zed/settings.json
{
  "context_servers": {
    "ai-bounty-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/aelf-hzz780/AI-bounty-skill",
          "~/.claude/skills/AI-bounty-skill"
        ]
      }
    }
  }
}

context_servers に追加。保存時に Zed がホットリロード。

claude mcp add ai-bounty-skill -- git clone https://github.com/aelf-hzz780/AI-bounty-skill ~/.claude/skills/AI-bounty-skill

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: AI-bounty-skill

EOA ウォレットから aelf AI バウンティを請求する

👤 セルフカストディの EOA でバウンティを保有する aelf 開発者 ⏱ ~15 min intermediate

使うタイミング: aelf AI バウンティプログラムで報酬を受け取っており、RewardClaimContract の Claim() 呼び出しを手動で組み立てる代わりに Claude にガイドしてほしい場合に使用します。

前提条件
  • tDVV 上にガス残高のある aelf EOA ウォレット — tDVV サイドチェーン上で自分のアドレスに ELF を入金してください
  • ~/.claude/skills/AI-bounty-skill にスキルをクローン済み — git clone https://github.com/aelf-hzz780/AI-bounty-skill ~/.claude/skills/AI-bounty-skill
フロー
  1. ウォレットコンテキストをローカルに読み込み、スキルに呼び出し内容を提示させる
    Use the AI-bounty-skill to prepare a Claim() transaction on RewardClaimContract for my EOA. Show me the args and the signing preview before broadcast.✓ コピーしました
    → Claude がコントラクトアドレス、メソッド、引数を列挙し、確認を求めて一時停止する
  2. 自分のツールで署名・ブロードキャストする
    Looks good — give me the signed tx payload to send via my local aelf CLI.✓ コピーしました
    → ペイロードが準備され、ブロードキャストすると請求が完了する

結果: カストディアルな仲介者なしに、自分が管理するトランザクションハッシュでバウンティが請求されます。

注意点
  • 取引所の入金アドレスをターゲットに使用する — セルフカストディのアドレスを使用してください — 取引所は報酬メタデータを正しくルーティングしません

Portkey CA(アカウントアブストラクション)ウォレット経由でバウンティを請求する

👤 バウンティが Portkey 管理のソーシャルログインに紐づいているユーザー ⏱ ~15 min intermediate

使うタイミング: aelf のアイデンティティが生の EOA ではなく Portkey CA である場合に使用します。

前提条件
  • Portkey アカウントの復旧/ログイン準備完了 — 登録済みのメールアドレスを使って portkey.finance で復旧/ログインしてください
フロー
  1. Claude に ClaimByPortkeyToCa() 呼び出しを組み立てさせる
    Use AI-bounty-skill to prepare ClaimByPortkeyToCa() — my CA hash is <hash>. Show me what will be signed by Portkey.✓ コピーしました
    → Claude が正確なメソッドと引数を出力し、Portkey が署名を要求することを通知する
  2. Portkey で承認する
    Send it — I'll approve in Portkey.✓ コピーしました
    → Portkey がプロンプトを表示し、承認するとトランザクションが確認される

結果: バウンティが Portkey 管理の CA アドレスに入金されます。

注意点
  • EOA と CA のコードパスを混同する — バウンティの割り当て方法に合ったパスを選択してください — スキルがフローを分けているのには理由があります

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
prepare_eoa_claim wallet address, bounty id EOA 保有者が請求の準備ができた時 0 — local prompt work
prepare_portkey_claim CA hash, bounty id Portkey CA 保有者が請求の準備ができた時 0

コストと制限

運用コスト

APIクォータ
なし — スキルはプロンプトのみ
呼び出しあたりのトークン
<2k
金額
スキル自体は無料です。ブロードキャスト時に aelf tDVV のガス代がかかります。
ヒント
コンテキストセットアップのコストを分散するため、他の保留中のアクションも同じセッションにまとめてください。

セキュリティ

権限、シークレット、影響範囲

認証情報の保管: スキル内にクレデンシャルは保存されません。秘密鍵はローカルの aelf ツールまたは Portkey 内に保持されます。
データ送信先: スキル自体によるデータ送信はありません。ブロードキャスト時に aelf tDVV RPC に接続します。
絶対に付与しない: Paste your seed phrase into the chat — the skill never asks for it

トラブルシューティング

よくあるエラーと対処法

Claim() が 'not eligible' でリバートする

バウンティが tDVV(メインチェーンではなく)上の呼び出し元アドレスに正確に割り当てられていることを確認してください。

確認: Check RewardClaimContract view methods for your address
Portkey のプロンプトが表示されない

トランザクションを中継するツールと同じブラウザセッションで Portkey にログインしていることを確認してください。

代替案

AI-bounty-skill 他との比較

代替案代わりに使う場面トレードオフ
Direct aelf CLIコントラクト呼び出しを手書きで組み立てることに慣れている場合ガイダンスはないが、スキルへの依存もない

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る