mergegate/docs/USER_MANUAL.md
Shunsuke Hayashi aa2651465f docs: Add comprehensive user manual in Japanese
Create detailed USER_MANUAL.md covering:
- Installation and setup
- Basic usage and commands
- TUI mode with keybindings
- Agent mode with examples
- Session management
- Configuration options
- Project rules (.miyabirules)
- Troubleshooting guide

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-23 01:55:38 +09:00

571 lines
12 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.

# Miyabi CLI ユーザーマニュアル
**Version**: 0.1.0
**Last Updated**: 2025-11-23
---
## 目次
1. [はじめに](#はじめに)
2. [インストール](#インストール)
3. [初期設定](#初期設定)
4. [基本的な使い方](#基本的な使い方)
5. [TUIモード](#tuiモード)
6. [Agentモード](#agentモード)
7. [セッション管理](#セッション管理)
8. [設定ファイル](#設定ファイル)
9. [プロジェクトルール](#プロジェクトルール)
10. [トラブルシューティング](#トラブルシューティング)
---
## はじめに
Miyabi CLIは、ターミナルで動作するAIアシスタントです。Claude APIを使用して、対話型のチャットや自律的なタスク実行が可能です。
### 主な機能
- **TUIモード**: 美しいターミナルUIでの対話
- **Agentモード**: ファイル操作やコマンド実行を含む自律実行
- **セッション管理**: 会話履歴の保存・再開
- **プロジェクトルール**: .miyabirulesによるカスタムルール
---
## インストール
### 必要要件
- Rust 1.70以上
- Anthropic APIキー
### ビルド手順
```bash
# 1. リポジトリをクローン
git clone https://github.com/ShunsukeHayashi/miyabi-cli-standalone.git
cd miyabi-cli-standalone
# 2. リリースビルド
cargo build --release
# 3. バイナリの確認
ls -la target/release/miyabi
```
### パスを通す(オプション)
```bash
# ~/.bashrc または ~/.zshrc に追加
export PATH="$PATH:/path/to/miyabi-cli-standalone/target/release"
# 設定を反映
source ~/.bashrc # または source ~/.zshrc
```
---
## 初期設定
### 1. 設定ファイルの生成
```bash
./target/release/miyabi init
```
これにより `~/.miyabi/config.toml` が作成されます。
### 2. APIキーの設定
**方法1: 環境変数(推奨)**
```bash
export ANTHROPIC_API_KEY="sk-ant-api03-..."
```
永続化する場合は `~/.bashrc``~/.zshrc` に追加:
```bash
echo 'export ANTHROPIC_API_KEY="sk-ant-api03-..."' >> ~/.zshrc
```
**方法2: 設定ファイル**
```bash
vim ~/.miyabi/config.toml
```
```toml
[api]
api_key = "sk-ant-api03-..."
```
### 3. 設定の確認
```bash
./target/release/miyabi status
```
出力例:
```
Miyabi Status: Ready
Config: /Users/you/.miyabi/config.toml
Sessions: /Users/you/.miyabi/sessions
Model: claude-sonnet-4-5-20250929
Rules: 0 rules loaded
```
---
## 基本的な使い方
### コマンド一覧
| コマンド | 説明 |
|---------|------|
| `miyabi tui` | TUIモードを起動 |
| `miyabi agent <prompt>` | Agentモードで実行 |
| `miyabi status` | ステータス表示 |
| `miyabi version` | バージョン情報 |
| `miyabi init` | 設定ファイル生成 |
| `miyabi sessions` | セッション一覧 |
| `miyabi rules` | プロジェクトルール表示 |
### グローバルオプション
| オプション | 説明 |
|-----------|------|
| `-m, --model <MODEL>` | 使用するモデルを指定 |
| `--max-tokens <N>` | 最大トークン数 |
| `--thinking` | Extended Thinking有効化 |
| `-c, --config <PATH>` | 設定ファイルパス |
| `-s, --session <ID>` | セッションID指定 |
### 使用例
```bash
# バージョン確認
./target/release/miyabi version
# ステータス確認
./target/release/miyabi status
# モデル指定でTUI起動
./target/release/miyabi tui --model claude-sonnet-4-5-20250929
# Extended Thinking有効でTUI起動
./target/release/miyabi tui --thinking
```
---
## TUIモード
### 起動
```bash
./target/release/miyabi tui
```
### キーバインド
#### 基本操作
| キー | 動作 |
|------|------|
| `Enter` | メッセージ送信 |
| `Ctrl+C` | 終了 |
| `Esc` | オーバーレイを閉じる / キャンセル |
| `F1` | ヘルプ表示 |
#### ナビゲーション
| キー | 動作 |
|------|------|
| `j` / `↓` | 下にスクロール |
| `k` / `↑` | 上にスクロール |
| `Page Down` | ページ下へ |
| `Page Up` | ページ上へ |
| `g` | 先頭へ |
| `G` | 末尾へ |
#### コマンド
| キー | 動作 |
|------|------|
| `Ctrl+P` | コマンドパレット |
| `Ctrl+N` | 新規セッション |
| `Ctrl+O` | セッションを開く |
| `Ctrl+S` | セッション保存 |
### Vimモード
設定で有効化できます:
```toml
[ui]
vim_mode = true
```
有効にすると、テキスト入力でVimキーバインドが使用可能になります。
---
## Agentモード
Agentモードは、プロンプトに基づいて自律的にタスクを実行します。
### 基本使用
```bash
./target/release/miyabi agent "タスクの説明"
```
### オプション
| オプション | 説明 | デフォルト |
|-----------|------|-----------|
| `--max-iterations <N>` | 最大イテレーション数 | 10 |
| `--auto-approve` | ツール実行を自動承認 | false |
| `--format <FORMAT>` | 出力形式 (text/json) | text |
| `--system <PROMPT>` | システムプロンプト | なし |
### 使用例
```bash
# 基本的な実行
./target/release/miyabi agent "Create a Python script that prints hello world"
# 自動承認モード(注意して使用)
./target/release/miyabi agent --auto-approve "List all .rs files in src/"
# イテレーション数を増やす
./target/release/miyabi agent --max-iterations 20 "Refactor the utils module"
# JSON出力
./target/release/miyabi agent --format json "Show current directory"
# カスタムシステムプロンプト
./target/release/miyabi agent --system "You are an expert Rust developer" "Review main.rs"
```
### 利用可能なツール
Agentモードでは以下のツールが使用可能です
- **Bash**: シェルコマンドの実行
- **Read**: ファイルの読み取り
- **Write**: ファイルの書き込み
- **Edit**: ファイルの編集
- **Glob**: ファイルパターン検索
- **Grep**: テキスト検索
### セキュリティ
- デフォルトでは危険な操作は承認を求められます
- `--auto-approve` は信頼できるタスクのみに使用してください
- `--max-iterations` で無限ループを防止
---
## セッション管理
### セッション一覧の表示
```bash
./target/release/miyabi sessions
```
出力例:
```
ID Title Messages Tokens Updated
------------------------------------------------------------------------------------------
133b91bf-99c9-4097-974c-c60c9abd2495 test 6 246 2025-11-22 14:36
19af5958-183f-4b39-be2e-b14b0809181c test 2 21 2025-11-22 14:03
```
### セッションの操作
```bash
# セッションを削除
./target/release/miyabi sessions -d <session-id>
# JSONにエクスポート
./target/release/miyabi sessions -e <session-id>
# Markdownにエクスポート
./target/release/miyabi sessions -m <session-id>
```
### セッションの再開
```bash
# 特定のセッションからTUIを起動
./target/release/miyabi tui -s <session-id>
```
### 保存場所
セッションは `~/.miyabi/sessions/` に保存されます。
---
## 設定ファイル
### 設定ファイルの場所
```
~/.miyabi/config.toml
```
### 完全な設定例
```toml
[api]
# Anthropic APIキー環境変数ANTHROPIC_API_KEYでも設定可能
api_key = "sk-ant-api03-..."
# 使用するモデル
model = "claude-sonnet-4-5-20250929"
# 最大トークン数
max_tokens = 8192
# Extended ThinkingClaude 4.5+
thinking = false
# システムプロンプト
system_prompt = "You are a helpful AI assistant."
# リクエストタイムアウト(秒)
timeout_secs = 120
# 最大リトライ回数
max_retries = 3
[ui]
# サイドバー表示
show_sidebar = false
# ステータスバー表示
show_status_bar = true
# パンくずリスト表示
show_breadcrumb = true
# カラーテーマ
theme = "tokyo-night"
# Vimモード
vim_mode = false
# コードブロックの行番号
show_line_numbers = true
[session]
# セッションの自動保存
auto_save = true
# 自動保存間隔(秒)
auto_save_interval = 30
# 最大セッション数
max_sessions = 100
[tools]
# Bashツールを有効化
enable_bash = true
# ファイルツールread/write/editを有効化
enable_file_tools = true
# 検索ツールglob/grepを有効化
enable_search_tools = true
# 低リスクツールの自動承認
auto_approve_low_risk = false
# Bashコマンドのタイムアウト
bash_timeout = 120
```
### 環境変数による上書き
| 環境変数 | 説明 |
|---------|------|
| `ANTHROPIC_API_KEY` | APIキー |
| `MIYABI_MODEL` | モデル名 |
| `MIYABI_MAX_TOKENS` | 最大トークン数 |
| `MIYABI_THINKING` | Extended Thinking (true/false) |
---
## プロジェクトルール
### .miyabirulesファイル
プロジェクトルートに `.miyabirules` ファイルを作成することで、プロジェクト固有のルールを定義できます。
### ファイル形式
```yaml
version: 1
rules:
- name: "no-unwrap"
pattern: ".unwrap()"
suggestion: "Use ? operator or proper error handling"
file_extensions: ["rs"]
severity: "warning"
- name: "no-println-debug"
pattern: "println!"
suggestion: "Use tracing macros for logging"
file_extensions: ["rs"]
severity: "info"
agent_preferences:
codegen:
style: "functional"
error_handling: "result"
min_score: 80
review:
min_score: 70
```
### ルールの確認
```bash
./target/release/miyabi rules
```
### 重要度レベル
| レベル | 説明 |
|--------|------|
| `error` | 重大な問題(赤) |
| `warning` | 警告(黄) |
| `info` | 情報(青) |
---
## トラブルシューティング
### "API key not found" エラー
```bash
# 環境変数を確認
echo $ANTHROPIC_API_KEY
# 設定されていない場合
export ANTHROPIC_API_KEY="sk-ant-..."
```
### "Device not configured" エラー
ターミナルがTUIをサポートしていない可能性があります
```bash
# 別のターミナルを試すiTerm2, Alacritty等
# または明示的にTERM設定
TERM=xterm-256color ./target/release/miyabi tui
```
### ビルドエラー
```bash
# Rustを最新版に更新
rustup update
# クリーンビルド
cargo clean
cargo build --release
```
### セッションが保存されない
```bash
# ディレクトリの確認
ls -la ~/.miyabi/sessions/
# なければ作成
mkdir -p ~/.miyabi/sessions
```
### デバッグモード
詳細なログを表示:
```bash
RUST_LOG=debug ./target/release/miyabi tui
```
### ネットワークエラー
```bash
# タイムアウトを延長
# ~/.miyabi/config.toml
[api]
timeout_secs = 300
max_retries = 5
```
---
## サポート
### ヘルプの確認
```bash
# 全体のヘルプ
./target/release/miyabi --help
# サブコマンドのヘルプ
./target/release/miyabi agent --help
./target/release/miyabi sessions --help
```
### 問題報告
GitHub Issues: https://github.com/ShunsukeHayashi/miyabi-cli-standalone/issues
### TUIでのヘルプ
TUI起動中に `F1` キーでヘルプを表示できます。
---
## 付録
### 対応モデル
- `claude-sonnet-4-5-20250929` (デフォルト)
- `claude-haiku-4-5-20251001`
- `claude-sonnet-4-20250514`
### ファイル構成
```
~/.miyabi/
├── config.toml # 設定ファイル
└── sessions/ # セッションデータ
├── xxx.json
└── yyy.json
```
### ショートカット早見表
| 操作 | キー |
|------|------|
| 送信 | Enter |
| 終了 | Ctrl+C |
| ヘルプ | F1 |
| コマンドパレット | Ctrl+P |
| 新規セッション | Ctrl+N |
| セッションを開く | Ctrl+O |
| 保存 | Ctrl+S |
---
**Built with Rust, Ratatui, and Claude API**