ワークスペースとは?

ワークスペースは Alius のコアとなる組織単位です。1つのワークスペースが1つのプロジェクトディレクトリにマッピングされます。すべての AI Agent アクティビティ — セッション、プラン、メモリ、トレース — はこのワークスペーススコープ内で行われます。

Alius のワークスペースは単なるチャットインターフェースではなく、プラン駆動の Agent ランタイムワークスペースです。目標の理解、計画の生成、制御された実行、結果のレビューを中心に設計されています。

your-project/
├── .alius/
│   ├── config/         # プロジェクト設定
│   ├── memory/         # プロジェクトメモリストレージ
│   ├── workspace/      # ワークスペースドキュメント
│   └── runtime/        # ランタイム状態(初期化進捗など)
├── src/
└── ...

なぜワークスペースベースなのか?

従来の AI ツールは会話を中心に整理されます。Alius は実際のプロジェクトを中心に整理します:

従来の AI CLIAlius
会話を中心に整理実際のプロジェクトを中心に整理
解釈が必要なテキストを返すプラン、ラン、トレース、復元可能なコンテキストを生成
設定が各マシンに散在すべて .alius/ に保存
ハードコードされたモデル前提プロバイダー、モデル、API Key、Soul を設定可能
単一モードプラン駆動 + バイパスのデュアルモード
セキュリティ境界なしShell Gate リスク分析と承認制御

ワークスペースの初期化

alius init

.alius/ ディレクトリ構造を作成し、初期化ウィザードを起動します。ウィザードは再開可能なステートマシンで、以下を案内します:

  1. 言語選択 — ワークスペースのインターフェース言語を選択
  2. モデルプール設定 — 対応プロバイダーからモデルをインポート
  3. モデル割り当て — Plan/Execute/Review ロールにモデルを指定
  4. 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 を起動でき、自動的にプロジェクトルートを見つけます。