---
name: ufret
description: Ufretからコード譜を取得・参照する
argument-hint: "<URL or 'login' or 'list'>"
allowed-tools:
  - Bash
  - Read
  - Write
  - Edit
  - Glob
---

# Ufret コード譜取得

Ufret (www.ufret.jp) からギターコード譜を取得して `.info/ref/ufret/` に保存・参照する。

## コマンド

### ログイン（初回 or セッション切れ時）

```bash
uv run python scripts/fetch_ufret.py login
```

ブラウザが開くので、ユーザーに手動ログインしてもらう。
auth state が `.info/ufret_auth.json` に保存される。

### コード譜の取得

```bash
uv run python scripts/fetch_ufret.py fetch "https://www.ufret.jp/song.php?data=12345"
```

### 保存済み一覧

```bash
uv run python scripts/fetch_ufret.py list
```

## 引数の解釈

- `$ARGUMENTS` が `login` → ログインフロー
- `$ARGUMENTS` が `list` → 一覧表示
- `$ARGUMENTS` が URL を含む → fetch として処理
- `$ARGUMENTS` が曲名やアーティスト名 → WebSearch で Ufret の該当ページを探してから fetch

## 取得後の活用

コード譜を取得したら、ユーザーの学習に活かす:

1. **コード進行の分析**: 使われているコードを分析し、キーやコード機能を解説
2. **難しいコードの特定**: ユーザーのレベル (`.info/level.md`) と照らし合わせ、難しそうなコードを特定
3. **練習メニューへの組み込み**: `/train` で使う練習素材として活用
4. **理論との紐付け**: コード進行パターンを理論的に解説

## 保存先

- `.info/ref/ufret/{song_id}.md` - コード譜テキスト
- `.info/ref/ufret/{song_id}.json` - 構造化データ（コード配列、カポ情報等）

## 注意

- ログインしていなくても基本的なコード譜は取得可能
- プレミアム機能（キー変更等）が必要な場合は login を案内
- 取得済みの曲は `.info/ref/ufret/` から直接読む（再取得しない）
