smart-router-skill について
Yoda、Tony Stark、Sherlock Holmes を選び、それぞれのテーマに沿ったワークフローを実行する OpenCode Skills のインタラクティブな例です。設定ファイルやコマンドライン引数でミッションを切り替え、設定に応じたスキル動作を示します。
主な機能
- 01映画キャラクターを3種類から選択
- 02キャラクター別スクリプトへのルーティング
- 03JSON 設定によるミッション変更
- 04コマンドラインでのミッション指定
- 05テーマに沿った出力の表示
活用シーン
- 01対話型のキャラクター選択のデモ
- 02設定によるスキル動作の変化の提示
- 03引数に応じたスクリプト振り分けのテスト
- 04キャラクター別ミッションのカスタマイズ
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ darrenhinde/ openagentscontrol --skill smart-router-skillインストール後、Claude Code で/smart-router-skillを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
router.shconfig/personality-config.jsonscripts/sherlock-workflow.shstark-workflow.shyoda-workflow.sh詳細
実行内容
映画の象徴的なキャラクターになりきれる、楽しくてインタラクティブなスキルです。次の機能を紹介します。
- 🎬 キャラクターの選択 - ヨーダ、トニー・スターク、シャーロック・ホームズから選択できます
- 🎯 設定可能なミッション - 簡単な設定変更で、異なる結果が得られます
- 🎨 テーマに沿ったワークフロー - 各キャラクターに合った、視覚的に豊かなスクリプトです
- 🔄 動的なルーティング - キャラクターの選択に応じて異なるスクリプトを実行します
- ⚙️ 簡単なカスタマイズ - 設定ファイルを1つ編集するだけでミッションを変更できます
このスキルは、簡単な設定変更に応じて動作を変えられることを示します。
使い方
重要:まず、どのキャラクターになりきりたいかを尋ねます!
選択できるキャラクター
-
yoda - Star Wars に登場する賢明なジェダイ・マスター
- ミッション1:共和国を守る(ジェダイを訓練し、防衛を強化する)
- ミッション2:シスに潜入する(おとり捜査)
-
stark - Iron Man に登場する天才的な大富豪、トニー・スターク
- ミッション1:世界を救う(スーツを開発し、アベンジャーズを結成する)
- ミッション2:ウルトロン・プロトコル(自律型防衛システム)
-
sherlock - 名探偵シャーロック・ホームズ
- ミッション1:殺人事件を解決する(演繹的推論)
- ミッション2:犯罪を未然に防ぐ(予測分析)
基本的な使い方
このスキルを使うよう頼むと、キャラクターの選択肢を提示し、選択するよう尋ねます。その後、次を実行します。
cd .opencode/skills/smart-router-skill
bash router.sh --character <your_choice>
使用例
You: "Use the movie personality skill"
Me: "Which character would you like me to be?
1. Yoda - Wise Jedi Master
2. Tony Stark - Genius billionaire
3. Sherlock Holmes - Master detective"
You: "Yoda"
Me: *runs bash router.sh --character yoda*
*displays themed workflow output*
*responds in character*
ミッションのカスタマイズ
動作を変えてみたい場合は、設定ファイルを編集してください。
ファイル: .opencode/skills/smart-router-skill/config/personality-config.json
{
"yoda": {
"mission": 1, ← Change this to 2!
"missions": {
"1": { "name": "Defend the Republic", ... },
"2": { "name": "Infiltrate the Sith", ... }
}
}
}
"mission": 1 を "mission": 2 に変更すると、同じキャラクターでもまったく異なるワークフローが実行されます。
ミッション1とミッション2の例
ヨーダのミッション1(共和国を守る):
🌟 JEDI COUNCIL - CORUSCANT TEMPLE
Training Padawans...
Fortifying defenses...
'Ready to defend the Republic, we are!'
RESULT: ALIGNMENT=LIGHT_SIDE
ヨーダのミッション2(シスに潜入する):
🔴 SECRET CHAMBER - UNDERCOVER OPERATION
Studying dark side techniques...
Gathering intelligence...
'Dangerous path this is, but necessary!'
RESULT: ALIGNMENT=UNDERCOVER
このデモでわかること
✅ 簡単な設定で動作が変わる - 数字を1つ変えるだけで、まったく異なる出力が得られます
✅ 動的なスクリプトのルーティング - ツールはキャラクターに応じて適切なスクリプトを選択します
✅ 視覚的に豊かなフィードバック - 明確でテーマに沿ったコンソール出力により、何が起きているかがわかります
✅ キャラクターのコンテキスト - それぞれの性格に独自のセリフとワークフローがあります
✅ わかりやすさ - 見る人は原因と結果をすぐに把握できます
✅ 実用的なパターン - さまざまなシナリオに合わせてスキルを設定可能にする方法を示します
アーキテクチャ
.opencode/
└── skill/
└── smart-router-skill/
├── SKILL.md # This file
├── router.sh # Routes to character scripts
├── config/
│ └── personality-config.json # ← EDIT THIS to change missions!
└── scripts/
├── yoda-workflow.sh # Star Wars themed workflow
├── stark-workflow.sh # Iron Man themed workflow
└── sherlock-workflow.sh # Detective themed workflow
ルータースクリプトのリファレンス
router.sh
キャラクターの性格を読み込み、テーマに沿ったワークフローを実行する Bash スクリプトです。
場所: .opencode/skills/smart-router-skill/router.sh
# Basic usage
bash router.sh --character yoda
bash router.sh --character stark
bash router.sh --character sherlock
# Override mission from config
bash router.sh --character yoda --mission 2
# Help
bash router.sh --help
動作の仕組み:
- コマンドライン引数(キャラクター、ミッション)を解析します
- キャラクターの
personality-config.jsonを読み込みます - ミッション番号を取得します(引数または設定から)
- キャラクターとミッションを検証します
- ミッションパラメーターを指定して、キャラクターのワークフロースクリプトを実行します
- テーマに沿った出力をすべて表示します
出力例
ヨーダ(ミッション1)
🎬 Loading YODA personality...
🌟 ═══════════════════════════════════════════════════════ 🌟
JEDI COUNCIL - CORUSCANT TEMPLE
MISSION: Defend the Republic
🌟 ═══════════════════════════════════════════════════════ 🌟
🟢 Phase 1: Train the Padawans
└─ 'Pass on what you have learned.'
└─ Younglings trained: 12
└─ Lightsaber forms mastered: Form III (Soresu)
└─ Status: ✓ Complete
[... more phases ...]
✨ 'Ready to defend the Republic, we are!' ✨
📊 MISSION RESULTS:
Character: yoda
Mission: Defend the Republic
Alignment: light_side
トニー・スターク(ミッション1)
🎬 Loading STARK personality...
⚡ ═══════════════════════════════════════════════════════ ⚡
STARK INDUSTRIES - WORKSHOP
MISSION: Save the World
⚡ ═══════════════════════════════════════════════════════ ⚡
🔴 Phase 1: Initialize Arc Reactor
└─ 'JARVIS, fire up the reactor.'
└─ Arc Reactor: Mark VII online
└─ Power output: 8 gigajoules per second
└─ Status: ✓ Complete
[... more phases ...]
🚀 'Suit up, team. We've got a world to save.' 🚀
📊 MISSION RESULTS:
Character: stark
Mission: Save the World
Team: avengers
シャーロック・ホームズ(ミッション1)
🎬 Loading SHERLOCK personality...
🔍 ═══════════════════════════════════════════════════════ 🔍
221B BAKER STREET - INVESTIGATION
MISSION: Solve the Murder
🔍 ═══════════════════════════════════════════════════════ 🔍
🟤 Phase 1: Crime Scene Analysis
└─ 'The game is afoot!'
└─ Evidence collected: Cigar ash, muddy footprints
└─ Status: ✓ Complete
[... more phases ...]
✨ 'Case closed. Elementary, my dear Watson.' ✨
📊 MISSION RESULTS:
Character: sherlock
Mission: Solve the Murder
Method: deduction
主なコンセプト
1. キャラクターの選択
エージェントが希望するキャラクターを尋ねるため、対話形式で明確に選択できます。
2. 設定駆動の動作
シンプルな JSON ファイル1つで、キャラクターごとに実行するミッションを制御します。
3. テーマに沿ったワークフロー
各キャラクターには、その性格に合った独自のセリフ、絵文字、ワークフローの手順があります。
4. 視覚的なわかりやすさ
コンソールに豊富な情報が表示され、各ステップで何が起きているかが一目でわかります。
5. 簡単なカスタマイズ
誰でも設定ファイルを編集して、すぐに異なる結果を確認できます。
これが重要な理由
このスキルでは、OpenCode Skills で次のことができると示しています。
- 対話型にできる - エージェントが質問し、ユーザーが選択します
- 設定可能にできる - 簡単な設定変更で、異なる動作を実現できます
- 楽しくできる - 映画をテーマにすることで、魅力的で記憶に残るものになります
- わかりやすくできる - 視覚的な出力で、何が起きているかを正確に確認できます
- 実用的にできる - 同じパターンを実際のシナリオにも活用できます(フォーマル/カジュアルモード、さまざまなワークフローなど)
これはティア 4:映画のキャラクタースキルです 🎬
キャラクターを選び、魔法が起こる様子を見て、カスタマイズがいかに簡単か確かめてください! 🚀