> ## Documentation Index
> Fetch the complete documentation index at: https://docs.tiro.ooo/llms.txt
> Use this file to discover all available pages before exploring further.

# インストールと認証

> npm から CLI をインストールし、ブラウザ OAuth で認証して、ヘッドレス / CI 環境をセットアップします。

CLI は npm に `@theplato/tiro-cli` として提供され、Node.js 20+ で動作します。macOS、Linux、Windows に対応しています。

## 1. インストール

<CodeGroup>
  ```bash npm theme={"system"}
  npm install -g @theplato/tiro-cli
  ```

  ```bash pnpm theme={"system"}
  pnpm add -g @theplato/tiro-cli
  ```

  ```bash yarn theme={"system"}
  yarn global add @theplato/tiro-cli
  ```

  ```bash bun theme={"system"}
  bun add -g @theplato/tiro-cli
  ```
</CodeGroup>

インストールを確認します:

```bash theme={"system"}
tiro --version
# → 0.3.1 (or later)
```

<Note>
  **システム要件**: Node.js 20 以降。同梱されるバイナリは ESM 専用です。Node 18 では import 時にエラーになります。
</Note>

## 2. サインイン

```bash theme={"system"}
tiro auth login
```

これにより、デフォルトのブラウザで Tiro の OAuth Authorization Code + PKCE フローが開きます。CLI は `http://127.0.0.1:<random-port>/callback` でワンショットのローカル HTTP サーバーを起動し、リダイレクトを受け取ります。サインインすると、JWT は OS ネイティブの認証情報ストアに保存されます:

* **macOS** — Keychain
* **Linux** — Secret Service（`gnome-keyring` または `kwallet` が必要）
* **Windows** — Credential Manager

確認します:

```bash theme={"system"}
tiro auth status
# ✓ Signed in
#   source:     keychain
#   hostname:   https://api.tiro.ooo
#   user:       <userId>
#   expires at: <ISO datetime>
#   token:      tk__...***
```

表示されるのはトークンのプレフィックスのみです。完全なベアラートークンが keychain の外に出ることはありません。

## 3. サインアウト

```bash theme={"system"}
tiro auth logout
```

keychain のエントリと、キャッシュされた Dynamic Client Registration ID をクリアします。次回の `tiro auth login` では、新しい DCR クライアントが登録されます。

## 4. Tiro MCP をエージェントに接続する（任意）

Claude Code（または任意の MCP 互換クライアント）をお使いの場合、CLI は `https://mcp.tiro.ooo/mcp` でホストされる Tiro MCP 向けのワンライナーインストーラーを提供します:

```bash theme={"system"}
tiro mcp install
# → claude mcp add --transport http tiro https://mcp.tiro.ooo/mcp
```

出力をそのままシェルにパイプするか、コマンドを MCP クライアントの設定にコピーしてください。構造化されたビュー（transport、URL、docs リンク）を得るには `tiro mcp info --json` を実行します。CLI は読み取り中心のフロー（ブラウズ、ディスクへの保存）を担い、MCP はエージェントループ内のインタラクティブなツール呼び出しを担います。完全なエージェントコントラクトについては、パッケージに同梱される [`AGENTS.md`](https://github.com/plato-corp/tiro-cli/blob/main/AGENTS.md) をご覧ください。

## ヘッドレス、CI、エージェント環境

ブラウザを開けない環境（CI、SSH、サンドボックス化されたエージェント、Docker）もあります。その場合は `TIRO_TOKEN` を直接設定してください。ここで指定した値は keychain よりも優先されます。

```bash theme={"system"}
export TIRO_TOKEN="$(security find-generic-password -s 'io.tiro.cli' -a default -w 2>/dev/null \
  | jq -r '.accessToken')"
tiro notes list --json
```

GitHub Actions の場合:

```yaml theme={"system"}
- name: Run tiro
  env:
    TIRO_TOKEN: ${{ secrets.TIRO_TOKEN }}
  run: |
    tiro notes search "release notes" --since 1d --json > recent.jsonl
```

<Warning>
  完全なベアラートークンを CI シークレットに格納することは、180 日間有効な Personal Access Token と同等です。ローテーションするには、信頼できるマシンで `tiro auth logout && tiro auth login` を実行し、新しいトークンをシークレットストアにコピーしてください。
</Warning>

## 設定のオーバーライド

| Variable          | 用途                                                 |
| ----------------- | -------------------------------------------------- |
| `TIRO_TOKEN`      | ベアラートークン — keychain を上書き                           |
| `TIRO_HOSTNAME`   | API ベース URL（デフォルトは `https://api.tiro.ooo`）         |
| `TIRO_OUTPUT_DIR` | export コマンドのデフォルト `--output-dir`（v0.3+）            |
| `NO_COLOR`        | ANSI カラーを無効化（[no-color.org](https://no-color.org)） |

呼び出しごとのオーバーライド:

```bash theme={"system"}
tiro --hostname https://api.tiro-ooo.dev notes list      # dev environment
tiro notes get <guid> --json --no-color                  # script-friendly
```

## CLI の更新

<CodeGroup>
  ```bash npm theme={"system"}
  npm update -g @theplato/tiro-cli
  ```

  ```bash pnpm theme={"system"}
  pnpm update -g @theplato/tiro-cli
  ```

  ```bash yarn theme={"system"}
  yarn global upgrade @theplato/tiro-cli
  ```

  ```bash bun theme={"system"}
  bun update -g @theplato/tiro-cli
  ```
</CodeGroup>

→ 実践的な例については [Quickstart](/ja/developers/cli/quickstart) へ進んでください。
