ワークスペースとは?
ワークスペースは Alius のコアとなる組織単位です。1つのワークスペースが1つのプロジェクトディレクトリにマッピングされます。すべての AI Agent アクティビティ — セッション、プラン、メモリ、トレース — はこのワークスペーススコープ内で行われます。
Alius のワークスペースは単なるチャットインターフェースではなく、プラン駆動の Agent ランタイムワークスペースです。目標の理解、計画の生成、制御された実行、結果のレビューを中心に設計されています。
your-project/
├── .alius/
│ ├── config/ # プロジェクト設定
│ ├── memory/ # プロジェクトメモリストレージ
│ ├── workspace/ # ワークスペースドキュメント
│ └── runtime/ # ランタイム状態(初期化進捗など)
├── src/
└── ...
なぜワークスペースベースなのか?
従来の AI ツールは会話を中心に整理されます。Alius は実際のプロジェクトを中心に整理します:
| 従来の AI CLI | Alius |
|---|---|
| 会話を中心に整理 | 実際のプロジェクトを中心に整理 |
| 解釈が必要なテキストを返す | プラン、ラン、トレース、復元可能なコンテキストを生成 |
| 設定が各マシンに散在 | すべて .alius/ に保存 |
| ハードコードされたモデル前提 | プロバイダー、モデル、API Key、Soul を設定可能 |
| 単一モード | プラン駆動 + バイパスのデュアルモード |
| セキュリティ境界なし | Shell Gate リスク分析と承認制御 |
ワークスペースの初期化
alius init
.alius/ ディレクトリ構造を作成し、初期化ウィザードを起動します。ウィザードは再開可能なステートマシンで、以下を案内します:
- 言語選択 — ワークスペースのインターフェース言語を選択
- モデルプール設定 — 対応プロバイダーからモデルをインポート
- モデル割り当て — Plan/Execute/Review ロールにモデルを指定
- Soul 選択 — Agent ロールアイデンティティを選択
.alius/が既に存在する場合、/initは再初期化するか終了するかを尋ねます。再初期化するとモデルプール、ロール選択、言語上書きがクリアされます。初期化の進捗は.alius/runtime/init-state.tomlに保存され、中断後に再開できます。
ワークスペーススコープ
すべての AI 操作はワークスペーススコープ内で行われます:
- ファイルアクセスはワークスペースディレクトリに制限(
resolve_within_workspaceが絶対パス、../トラバーサル、シンボリックリンクエスケープをブロック) - メモリはプロジェクトごとに保存
- セッションはワークスペースに属する
- シェルコマンドは Shell Gate のリスク分析と承認を経る
ワークスペースを超える操作には明示的な認可が必要であり、そうでない場合は直接拒否されます。
TUI ワークスペースレイアウト
インタラクティブワークスペースには以下の主要エリアがあります:
| エリア | 目的 |
|---|---|
| トップバー | バージョン、Soul、モード、ネットワークステータス |
| セッションエリア | ワークフロー会話ブロック(Request, Understanding, Plan Proposal, Execution, Prompt, Output, Error) |
| プランパネル | プランノード、ステータス、受入基準、証拠(プランモード承認後のみ表示) |
| インタラクションエリア | テキスト入力、オプション選択、承認コントロール |
| ステータスバー | 現在のワークスペース、Git ステータス、ランタイムステータス |
ウェルカム画面
ワークスペースを起動するたび、セッションエリアにウェルカムブロックが表示され、バージョン番号、現在の Soul、モデル割り当て、Enter プロンプトが含まれます。ウェルカムブロックはターミナルサイズに応じて4つのレイアウトバリアント(Wide / Medium / Compact / Tiny)を持ち、異なるターミナル寸法でも読みやすさを確保します。
会話ブロック
ワークスペースは従来の User/Assistant 形式ではなく、ワークフロー言語を使用します:
| ブロックタイプ | 説明 |
|---|---|
| Request | ユーザーリクエスト |
| Understanding | タスクに対するモデルの理解 |
| Plan Proposal | プラン提案 |
| Execution | 実行プロセス |
| Prompt | インタラクティブプロンプト |
| Status | ステータス更新 |
| Output | 出力結果 |
| Error | エラーメッセージ |
長い会話ブロック(3行を超える)は自動的に折りたたまれます。クリックで展開、Ctrl+O でグローバルに切り替えできます。
設定構造
.alius/config/
├── config.toml # メイン設定(ランタイムメタデータ、デフォルトモデル/プロバイダー、UI、セッション、ログ)
├── providers.toml # プロバイダー定義、互換ルーティング層、ローカルモデルライブラリ、Base URL と API Key
├── model.toml # Plan/Execute/Review モデル割り当て
├── soul.toml # Agent アイデンティティ(Agent Card 互換設定)
├── tools.toml # 内蔵/MCP/プラグイン/ワークフローツール、タイムアウト、確認、登録設定
├── permissions.toml # ファイルシステム、シェル、ネットワーク、メモリ、プロジェクトドキュメント、リモート A2A 権限
├── protocol.toml # プロトコルインターフェースの有効化とイベント/コマンド設定
└── mcp.json # MCP サーバー宣言
プロジェクト検出
Alius は現在のディレクトリから上方向に .alius/ ディレクトリを検索してプロジェクトルートを発見します。プロジェクトの任意のサブディレクトリから alius を起動でき、自動的にプロジェクトルートを見つけます。