mixseek-prompt-builder

📁 drillan/mixseek-plus 📅 13 days ago
1
总安装量
1
周安装量
#49451
全站排名
安装命令
npx skills add https://github.com/drillan/mixseek-plus --skill mixseek-prompt-builder

Agent 安装分布

claude-code 1

Skill 文档

MixSeek プロンプトビルダー設定生成

概要

MixSeek-Coreのプロンプトビルダー設定ファイル(prompt_builder.toml)を生成します。3つのテンプレートを定義し、各コンポーネントへのプロンプト配信を制御します。

テンプレートの役割

テンプレート 対象 用途
team_user_prompt Team (Leader Agent) ラウンド別の指示、過去履歴の提示
evaluator_user_prompt Evaluator 提出内容の評価指示
judgment_user_prompt Judgment Client 継続・終了の判定指示

前提条件

  • ワークスペースが初期化されていること(mixseek-workspace-init参照)
  • 環境変数 MIXSEEK_WORKSPACE が設定されていること(推奨)
  • orchestrator設定が存在すること(マルチラウンド機能を使用する場合)

生成ファイル

  • パス: $MIXSEEK_WORKSPACE/configs/prompt_builder.toml

使用方法

Step 1: 要件のヒアリング

ユーザーに以下を確認してください:

  1. 用途: どのようなタスクに使用するか(調査、分析、コード生成など)
  2. ラウンド戦略: マルチラウンドで改善するか、単発実行か
  3. カスタム判定基準: 終了条件に特別な基準があるか

Step 2: テンプレートの選択

用途に応じてテンプレートを選択:

テンプレート 用途 特徴
default 一般的な競合形式 リーダーボード参照、基本的なラウンド進行
deep-research Deep Research ラウンド別検索キーワード改善、段階的深掘り
single-round 単発実行 シンプル構造、ラウンド変数の最小使用

Step 3: カスタマイズ

必要に応じて以下をカスタマイズ:

  • Jinja2条件分岐: {% if round_number == 1 %} などでラウンド別指示
  • 変数の追加使用: {{ ranking_table }} でリーダーボード表示
  • 判定基準の調整: judgment_user_promptの判定条件

Step 4: ファイルの保存

生成した設定を以下のパスに保存:

$MIXSEEK_WORKSPACE/configs/prompt_builder.toml

Step 5: 設定ファイルの検証

生成後は構文とプレースホルダーを確認:

# TOML構文の検証
uv run python -c "import tomllib; tomllib.load(open('configs/prompt_builder.toml', 'rb'))"

# Jinja2構文の検証(オプション)
uv run python -c "
from jinja2 import Environment
env = Environment()
import tomllib
config = tomllib.load(open('configs/prompt_builder.toml', 'rb'))
for key in ['team_user_prompt', 'evaluator_user_prompt', 'judgment_user_prompt']:
    env.parse(config['prompt_builder'][key])
print('OK')
"

テンプレート種類

default(デフォルト)

  • 一般的なチーム競合形式
  • リーダーボード参照あり
  • 基本的なラウンド進行指示
  • 用途: 汎用的なタスク

deep-research

  • Deep Research特化
  • ラウンド1: 初期調査、広範な検索
  • ラウンド2: キーワード改善、深掘り
  • ラウンド3: 最終統合、検証
  • 用途: 調査・リサーチタスク

single-round

  • 単発実行向け
  • シンプルなプロンプト構造
  • ラウンド変数の最小使用
  • 用途: 一回きりのタスク

利用可能なJinja2変数

Team / Judgment 共通変数

変数名 型 説明
user_prompt string 元のユーザプロンプト
round_number int 現在のラウンド番号(1始まり)
submission_history string 過去のSubmission履歴(整形済み)
ranking_table string リーダーボード(整形済み)
team_position_message string チーム順位メッセージ
current_datetime string 現在日時(ISO 8601形式)

Evaluator専用変数

変数名 型 説明
user_prompt string 元のユーザプロンプト
submission string 評価対象のエージェント提出内容
current_datetime string 現在日時(ISO 8601形式)

詳細は references/JINJA2-VARIABLES.md を参照してください。

例

Deep Research設定例

[prompt_builder]
team_user_prompt = """
現在日時: {{ current_datetime }}

# タスク
{{ user_prompt }}

# ラウンド {{ round_number }}
{% if round_number == 1 %}
## 初期調査
- 広範な検索キーワードで情報収集
- 主要な情報源を特定
{% elif round_number == 2 %}
## 検索キーワード改善
- 前回の結果を分析し、より具体的なキーワードを使用
- 情報の空白を埋める
{% else %}
## 最終統合
- 情報を検証し、矛盾を解消
- 構造化された回答を作成
{% endif %}

# 過去の提出履歴
{{ submission_history }}
"""

evaluator_user_prompt = """
# 評価タスク
以下の提出内容を評価してください。

## ユーザタスク
{{ user_prompt }}

## 提出内容
{{ submission }}
"""

judgment_user_prompt = """
# 判定タスク
調査の継続が必要かどうかを判定してください。

## 判定基準
- 継続: 情報不足、重要な観点が欠落
- 終了: 十分な回答が可能

## ユーザタスク
{{ user_prompt }}

## 提出履歴
{{ submission_history }}

## リーダーボード
{{ ranking_table }}
"""

カスタム判定基準例

judgment_user_prompt = """
# カスタム判定
以下の基準で継続・終了を判定してください。

## 終了条件(すべて満たす場合)
1. 3つ以上の情報源から確認が取れている
2. 数値データが含まれている
3. 最新情報(1年以内)が含まれている

## 継続条件(いずれかに該当)
1. 情報源が2つ以下
2. 推測や不確かな表現が多い
3. 重要な観点が欠落している

## ユーザタスク
{{ user_prompt }}

## 提出履歴
{{ submission_history }}
"""

トラブルシューティング

Jinja2構文エラー、変数展開の問題、マルチラインTOML文字列については references/JINJA2-VARIABLES.md の「エラー回避」セクションを参照してください。

参照

  • TOMLスキーマ詳細: references/TOML-SCHEMA.md
  • Jinja2変数詳細: references/JINJA2-VARIABLES.md
  • orchestrator設定: skills/mixseek-orchestrator-config/SKILL.md
  • evaluator設定: skills/mixseek-evaluator-config/SKILL.md