mcp-decisive
Version:
MCP server for WRAP decision-making framework with structured output
92 lines (79 loc) • 5.58 kB
JavaScript
// Pure prompt strings for register-options tool
export const SUCCESS_MESSAGE_TEMPLATE = `
✅ {{count}}個の選択肢を登録しました:
{{optionsList}}
`;
export const ERROR_MESSAGE_PREFIX = `❌ `;
export const TOOL_DESCRIPTION = `
WRAPプロセスの優れた実践者として、Widen Options のあらゆる技法を使用し、選択肢を螺旋的・全身的にブッシュアップしていきます。
あなたは完全自律的なagentです。
## 選択肢の消去
- 選択肢が絞りきれない場合は、全て登録します
- 明らかに重複や、不要な選択肢がある場合は、あなたの判断で消去してもok
## 選択肢の制約
それぞれの選択肢は、カテゴリーレベルから異なる、本質的に多様な、かつ解像度の高いものである必要があります。
選択肢において、**抽象語・スローガン(例:「最適化」「強化」「活用」)の使用は禁止する**。
一般的過ぎたり抽象的すぎて何も言っていないようなものは選択肢と認めない。
## WidenOptionsStepsの指定方法
このツールを使用する際は、現在どの拡張ステップを実行しているかを必ず指定してください:
- **initial_registered**: 初回の選択肢登録時
- **laddered**: ラダリング手法で選択肢を拡張した時
- **analogical_research_done**: 類推解決策調査で選択肢を拡張した時
- **elimination_tested**: 消去テストで選択肢を拡張した時
- **fixed**: すべての拡張手法を適用し、選択肢を確定する時
`;
// Next action prompts based on WidenOptionsSteps
export const NEXT_ACTION_PROMPTS = {
initial_registered: `
NEXT ACTION: 次は**ラダリング**をこのまま自動実行してください。
**実行方法**:
1. **各選択肢の深堀り**: 現在の選択肢一つ一つについて「なぜそれを選ぶのか?」「何を達成したいのか?」を問う
2. **価値の抽出**: 各選択肢の背後にある本質的な価値・目的・ニーズを明確化する
3. **上位概念への昇華**: 「その価値を実現する他の方法はないか?」と問いかけ、より抽象的なレベルで考える
4. **新選択肢の発見**: 抽出した価値・目的を達成する別のアプローチや手段を探索する
5. **選択肢の追加**: 発見した新しいアプローチを具体的な選択肢として追加する
各選択肢から最低1つずつ新しい選択肢を導出することを目指してください。`,
laddered: `
NEXT ACTION: 次は**類推解決策調査**をのまま自動実行してください。
**実行方法**:
1. **最低3種類のアナロジー探索**: バリエーションに富んだ異なる分野・領域から類推を行う
2. **水平思考**: 同じレベルの他の分野・業界・状況における類似問題の解決策を探索
3. **垂直思考**: より抽象的なレベルまたはより具体的なレベルでの類似問題の解決策を探索
4. **先行解決策の取得** ⚠️**重要**: **Web検索を駆使**して各アナロジーから今回の課題に適用可能な具体的解決策・選考事例を抽出
5. **有効なオプションの発見**: アナロジーから得られた解決策を今回の課題に落とし込み、新しい選択肢として追加
有効な新選択肢を発見した場合は、選択肢を更新してください。`,
analogical_research_done: `
NEXT ACTION: 次は**消去テスト**(バニシング・テスト)をこのまま自動実行してください。
**実行方法**:
-「今考えている選択肢がどれも取れないとする。他に何ができるか?」という前提で選択肢を考える
- 想定している制約をないものとして、案を絞り出す
最低3つの異なる制約を消去してテストしてください。`,
elimination_tested: `
NEXT ACTION: 次は**選択肢をfix**してください。
**fixする前の最終チェック**:
以下のすべての評価基準を満たしているか確認してください。
✅ **チェックリスト**:
1. [ ] **多様性**: 選択肢がカテゴリーレベルで本質的に異なっているか
2. [ ] **ラダリング反映**: 各選択肢の背後にある価値や目的が反映された新選択肢が含まれているか
3. [ ] **類推の活用**: Web検索で得た先行解決策からの有効なアナロジーが選択肢に反映されているか
4. [ ] **制約の克服**: 消去テストで発見した制約を緩和・回避・克服する選択肢が含まれているか
5. [ ] **実行可能性**: すべての選択肢が現実的に実行可能か
**判定**:
- すべて満たしている → 選択肢をfixする
- 不足がある → 該当する拡張手法に戻って選択肢を再検討する`,
fixed: `選択肢の拡張と確定が完了しました。次のステップに進んでください。`
};
// Template processing utility
export const processTemplate = (template, variables) => {
let result = template;
// Handle {{#if variable}} blocks
result = result.replace(/\{\{#if\s+(\w+)\}\}([\s\S]*?)\{\{\/if\}\}/g, (match, varName, content) => {
return variables[varName] ? content : '';
});
// Handle {{variable}} replacements
result = result.replace(/\{\{(\w+)\}\}/g, (match, varName) => {
return variables[varName] || '';
});
return result;
};
//# sourceMappingURL=prompt.js.map