mcpField
E
encourage

encourage

github.com/terrylicaエージェントワークフロー145 回インストール1 日前に更新
リポジトリ

encourage について

RU のループ中に、優先する項目を追加・確認・削除・一括消去するスキルです。設定をプロジェクト構成に保存し、次の反復から反映します。

主な機能

  1. 01優先項目の追加
  2. 02現在の項目の確認
  3. 03語句による項目削除
  4. 04優先リストの消去
  5. 05次の反復で変更を適用

活用シーン

  1. 01RU のループでテストカバレッジを優先
  2. 02現在のガイダンスの確認や調整
  3. 03古い優先項目の削除

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/terrylica/cc-skills --skill encourage

インストール後、Claude Code で/encourageを入力して読み込まれたか確認します。

同梱ファイルreferences/evolution-log.md

詳細

RU: 推奨

アクティブなループセッション中に、推奨リストに項目を追加します。 推奨項目は、機会の発見で優先され、禁止パターンより優先されます。

実行時に設定可能:アクティブなループの有無にかかわらず動作します。変更は次のイテレーションで適用されます。

自己進化型スキル:このスキルは使用を通じて改善されます。指示に誤りがある、パラメーターがずれている、または回避策が必要だった場合は、後回しにせず、すぐにこのファイルを修正してください。実際に再現可能な問題がある場合のみ更新してください。

使用方法

  • /ru:encourage test coverage - 「test coverage」を推奨リストに追加します
  • /ru:encourage --list - 現在の推奨項目を表示します
  • /ru:encourage --clear - 推奨項目をすべてクリアします
  • /ru:encourage --remove <phrase> - フレーズに一致する項目を削除します(あいまい検索)

実行

/usr/bin/env bash << 'RALPH_ENCOURAGE_SCRIPT'
PROJECT_DIR="${CLAUDE_PROJECT_DIR:-$(pwd)}"
CONFIG_FILE="$PROJECT_DIR/.claude/ru-config.json"

# Get arguments
ARGS="${ARGUMENTS:-}"

# Ensure config file exists with guidance structure
if [[ ! -f "$CONFIG_FILE" ]]; then
    echo '{"guidance": {"forbidden": [], "encouraged": []}}' > "$CONFIG_FILE"
fi

# Ensure guidance structure exists
if ! jq -e '.guidance' "$CONFIG_FILE" >/dev/null 2>&1; then
    jq '. + {guidance: {forbidden: [], encouraged: []}}' "$CONFIG_FILE" > "$CONFIG_FILE.tmp" && mv "$CONFIG_FILE.tmp" "$CONFIG_FILE"
fi

# Handle commands
case "$ARGS" in
    "--list"|"-l")
        echo "Current encouraged items:"
        jq -r '.guidance.encouraged[]?' "$CONFIG_FILE" | while read -r item; do
            echo "  + $item"
        done
        COUNT=$(jq -r '.guidance.encouraged | length' "$CONFIG_FILE")
        echo ""
        echo "Total: $COUNT items"
        ;;
    "--clear"|"-c")
        jq '.guidance.encouraged = []' "$CONFIG_FILE" > "$CONFIG_FILE.tmp" && mv "$CONFIG_FILE.tmp" "$CONFIG_FILE"
        echo "Cleared all encouraged items"
        ;;
    --remove\ *)
        PHRASE="${ARGS#--remove }"
        MATCH=$(jq -r --arg phrase "$PHRASE" \
            '.guidance.encouraged[] | select(. | ascii_downcase | contains($phrase | ascii_downcase))' \
            "$CONFIG_FILE" | head -1)
        if [[ -z "$MATCH" ]]; then
            echo "No encouraged item matches: $PHRASE"
            exit 1
        fi
        TS=$(date -u +%Y-%m-%dT%H:%M:%SZ)
        jq --arg match "$MATCH" --arg ts "$TS" \
            '.guidance.encouraged |= map(select(. != $match)) | .guidance.timestamp = $ts' \
            "$CONFIG_FILE" > "$CONFIG_FILE.tmp" && mv "$CONFIG_FILE.tmp" "$CONFIG_FILE"
        echo "Removed from encouraged list: $MATCH"
        ;;
    "")
        echo "Usage: /ru:encourage <phrase> | --list | --clear | --remove <phrase>"
        echo ""
        echo "Current encouraged items:"
        jq -r '.guidance.encouraged[]?' "$CONFIG_FILE" | while read -r item; do
            echo "  + $item"
        done
        ;;
    *)
        TS=$(date -u +%Y-%m-%dT%H:%M:%SZ)
        jq --arg item "$ARGS" --arg ts "$TS" \
            '.guidance.encouraged = ((.guidance.encouraged // []) + [$item] | unique) | .guidance.timestamp = $ts' \
            "$CONFIG_FILE" > "$CONFIG_FILE.tmp" && mv "$CONFIG_FILE.tmp" "$CONFIG_FILE"
        echo "Added to encouraged list: $ARGS"
        echo ""
        echo "Current encouraged items:"
        jq -r '.guidance.encouraged[]?' "$CONFIG_FILE" | while read -r item; do
            echo "  + $item"
        done
        ;;
esac
RALPH_ENCOURAGE_SCRIPT

上記の bash スクリプトを実行して、推奨項目を管理します。

仕組み

  1. 設定ファイル:変更は .claude/ru-config.json に書き込まれます
  2. 次のイテレーションで適用:Stop フックは各イテレーションで設定を読み込みます
  3. 優先順位の上書き:推奨項目は禁止パターンより優先されます
  4. テンプレートのレンダリング:推奨項目は ## USER GUIDANCE セクションに表示されます

トラブルシューティング

問題原因解決方法
追加時に jq エラーが発生する設定ファイルの形式が不正/ru:settings reset を実行して再作成します
項目が表示されない入力ミスまたは大文字・小文字の違い--list を使って正確なテキストを確認します
推奨項目が適用されないRU が実行されていない/ru:start で開始します
フレーズによる削除に失敗する一致する項目が見つからない--list を使って正確な項目名を確認します
設定ファイルが見つからない.claude ディレクトリがないmkdir -p .claude で作成します

実行後の振り返り

このスキルの実行後、終了する前に確認してください。

  1. コマンドは成功しましたか? — 成功しなかった場合は、失敗の原因となった指示またはエラーテーブルを修正してください。
  2. パラメーターや出力に変更はありましたか? — 基盤となるツールのインターフェースに変更があった場合は、使用例とパラメーターテーブルを更新して一致させてください。
  3. 回避策が必要でしたか? — 別のフラグや追加手順など、工夫が必要だった場合は、次回同じ回避策が不要になるよう、この SKILL.md を更新してください。

問題が実際に発生し、再現可能な場合のみ更新してください。推測に基づく更新はしないでください。

コメント