Files
cc-switch/docs/user-manual/ja/5-faq/5.3-deeplink.md
Jason bbed2a1fe1 docs: restructure user manual for i18n and add EN/JA translations
Reorganize docs/user-manual/ from flat structure to language subdirectories
(zh/, en/, ja/) with shared assets/. Move existing Chinese docs into zh/,
fix image paths, add multilingual navigation README, and translate all 23
markdown files (~4500 lines each) to English and Japanese.
2026-03-03 08:40:52 +08:00

257 lines
8.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 5.3 ディープリンクプロトコル
## 機能説明
CC Switch は `ccswitch://` ディープリンクプロトコルをサポートしており、リンクからワンクリックで設定をインポートできます。
**使用シーン**
- チーム内での設定共有
- チュートリアルでのワンクリック設定
- デバイス間の素早い同期
## オンライン生成ツール
CC Switch はオンラインのディープリンク生成ツールを提供しています:
**アクセス先**[https://farion1231.github.io/cc-switch/deplink.html](https://farion1231.github.io/cc-switch/deplink.html)
### 使用方法
1. 上記の Web ページを開く
2. インポートタイプを選択(プロバイダー/MCP/Prompt
3. 設定情報を入力
4. 「リンクを生成」をクリック
5. 生成されたディープリンクをコピー
6. 他の人に共有するか、別のデバイスで使用
## プロトコル形式
### V1 プロトコル
URL パラメータ形式で、読みやすく生成しやすい形式です:
```
ccswitch://v1/import?resource={type}&app={app}&name={name}&...
```
**共通パラメータ**
| パラメータ | 必須 | 説明 |
|------|------|------|
| `resource` | はい | リソースタイプ:`provider` / `mcp` / `prompt` / `skill` |
| `app` | はい | アプリタイプ:`claude` / `codex` / `gemini` / `opencode` / `openclaw` |
| `name` | はい | 名前 |
**プロバイダーパラメータ**resource=provider
| パラメータ | 必須 | 説明 |
|------|------|------|
| `endpoint` | いいえ | API エンドポイントアドレス(カンマ区切りで複数 URL 対応) |
| `apiKey` | いいえ | API キー |
| `homepage` | いいえ | プロバイダー公式サイト |
| `model` | いいえ | デフォルトモデル |
| `haikuModel` | いいえ | Haiku モデルClaude のみ) |
| `sonnetModel` | いいえ | Sonnet モデルClaude のみ) |
| `opusModel` | いいえ | Opus モデルClaude のみ) |
| `notes` | いいえ | メモ |
| `icon` | いいえ | アイコン |
| `config` | いいえ | Base64 エンコードされた設定内容 |
| `configFormat` | いいえ | 設定形式:`json` / `toml` |
| `configUrl` | いいえ | リモート設定 URL |
| `enabled` | いいえ | 有効にするかどうか(ブール値) |
| `usageScript` | いいえ | 使用量クエリスクリプト |
| `usageEnabled` | いいえ | 使用量クエリを有効にするか(デフォルト true |
| `usageApiKey` | いいえ | 使用量クエリ専用 API Key |
| `usageBaseUrl` | いいえ | 使用量クエリ専用アドレス |
| `usageAccessToken` | いいえ | 使用量クエリアクセストークン |
| `usageUserId` | いいえ | 使用量クエリユーザー ID |
| `usageAutoInterval` | いいえ | 自動クエリ間隔(分) |
**プロンプトパラメータ**resource=prompt
| パラメータ | 必須 | 説明 |
|------|------|------|
| `content` | はい | プロンプト内容 |
| `description` | いいえ | 説明 |
| `enabled` | いいえ | 有効にするかどうか(ブール値) |
**MCP パラメータ**resource=mcp
| パラメータ | 必須 | 説明 |
|------|------|------|
| `apps` | はい | アプリリスト(カンマ区切り、例:`claude,codex,gemini,opencode` |
| `config` | はい | MCP サーバー設定JSON 形式) |
| `enabled` | いいえ | 有効にするかどうか(ブール値) |
**Skill パラメータ**resource=skill
| パラメータ | 必須 | 説明 |
|------|------|------|
| `repo` | はい | リポジトリ(形式:`owner/name` |
| `directory` | いいえ | ディレクトリパス |
| `branch` | いいえ | Git ブランチ |
**例**
```
ccswitch://v1/import?resource=provider&app=claude&name=My%20Provider&endpoint=https%3A%2F%2Fapi.example.com&apiKey=sk-xxx
```
## インポートタイプの例
### プロバイダーのインポート
```
ccswitch://v1/import?resource=provider&app=claude&name=My%20Provider&endpoint=https%3A%2F%2Fapi.example.com&apiKey=sk-xxx
```
### MCP サーバーのインポート
```
ccswitch://v1/import?resource=mcp&apps=claude,codex&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22mcp-server-fetch%22%5D%7D&name=mcp-fetch
```
### Prompt プリセットのインポート
```
ccswitch://v1/import?resource=prompt&app=claude&name=%E4%BB%A3%E7%A0%81%E5%AE%A1%E6%9F%A5&content=%23%20%E8%A7%92%E8%89%B2%0A%E4%BD%A0%E6%98%AF%E4%B8%80%E4%B8%AA%E4%B8%93%E4%B8%9A%E7%9A%84%E4%BB%A3%E7%A0%81%E5%AE%A1%E6%9F%A5%E4%B8%93%E5%AE%B6
```
### Skill のインポート
```
ccswitch://v1/import?resource=skill&name=my-skill&repo=owner/repo&directory=skills/my-skill&branch=main
```
## ディープリンクの生成
### 手動生成
1. パラメータを準備
2. V1 プロトコル形式で URL を組み立て
3. 特殊文字を URL エンコード
**例**
```javascript
const params = new URLSearchParams({
resource: 'provider',
app: 'claude',
name: 'My Provider',
endpoint: 'https://api.example.com',
apiKey: 'sk-xxx'
});
const url = `ccswitch://v1/import?${params.toString()}`;
```
### オンラインツール
CC Switch 公式のオンラインディープリンク生成ツールを使用するとより便利です。
## ディープリンクの使用
### リンクのクリック
ブラウザや他のアプリでディープリンクをクリック:
1. システムが CC Switch を開くかどうかを確認
2. 確認後、CC Switch が起動
3. インポート確認ダイアログを表示
4. インポートを確認
### インポートの確認
インポート前に確認ダイアログが表示され、以下が含まれます:
- インポートタイプ
- 設定のプレビュー
- 確認/キャンセルボタン
**セキュリティ上の注意**:信頼できるソースからの設定のみインポートしてください。
## プロトコルの登録
### 自動登録
CC Switch のインストール時に `ccswitch://` プロトコルが自動登録されます。
### 手動登録
プロトコルが正しく登録されていない場合:
**macOS**
アプリを再インストールするか、以下を実行:
```bash
/usr/bin/open -a "CC Switch" --args --register-protocol
```
**Windows**
アプリを再インストールするか、レジストリを確認:
```
HKEY_CLASSES_ROOT\ccswitch
```
**Linux**
`.desktop` ファイルの `MimeType` 設定を確認。
## セキュリティに関する考慮事項
### 機密情報
ディープリンクには機密情報API Key など)が含まれる場合があります:
- API Key を含むリンクを公開の場で共有しない
- 共有前に機密情報を削除または置換
- 安全なチャネルでリンクを送信
### ソースの確認
インポート前に CC Switch は以下を実行します:
1. データ形式の検証
2. 設定のプレビュー表示
3. ユーザーの確認を要求
### 悪意のあるリンクからの防護
CC Switch は以下を確認します:
- データ形式が正当か
- 必須フィールドが揃っているか
- 設定値が妥当な範囲内か
## サンプルリンク
### 例Claude プロバイダーのインポート
```
ccswitch://v1/import?resource=provider&app=claude&name=Test%20Provider&apiKey=sk-xxx&endpoint=https%3A%2F%2Fapi.example.com
```
### 例MCP サーバーのインポート
```
ccswitch://v1/import?resource=mcp&name=mcp-fetch&apps=claude,codex,gemini&config=%7B%22command%22%3A%22uvx%22%2C%22args%22%3A%5B%22mcp-server-fetch%22%5D%7D
```
## トラブルシューティング
### リンクが開けない
**確認事項**
1. CC Switch がインストールされているか
2. プロトコルが正しく登録されているか
3. リンクの形式が正しいか
### インポートに失敗する
**考えられる原因**
- Base64 エンコードのエラー
- JSON 形式のエラー
- 必須フィールドの不足
**解決方法**
1. 元の JSON 形式を確認
2. Base64 エンコードをやり直す
3. すべての必須フィールドが存在することを確認