コンテンツにスキップ

CLI リファレンス

tako CLI は、ターミナルの画面操作(ペイン分割・テキスト送信・レイアウト変更など)をコマンドとして実行するためのツールです。シェルスクリプトからの自動化にも、AI エージェントからの操作にも使われます。

トップレベルのコマンドは 97 種で、その多くがさらにサブコマンドを持ちます。ほぼすべてが同名の MCP ツールと 1:1 で対応しており(MCP ツール一覧)、人ができる操作は AI も同じ経路で実行できます。

  • tako の中のターミナルで実行するのが基本です。tako の外(通常のターミナル)で実行すると、接続情報が見つからない旨のエラーになります(tako setup / tako setup-mcp / tako platform / tako recover / tako migrate など一部はアプリ未起動でも動作します)
  • ペイン ID の自動特定: tako のペイン内から実行すると、環境変数 TAKO_PANE_ID から「自分がいるペイン」が自動で分かります。--pane を省略したときの対象は呼び出し元ペインです
  • ペイン ID の調べ方: tako list で全ペインの ID・タイトル・作業ディレクトリが JSON で確認できます
  • 困ったら --help: すべてのコマンド・サブコマンドで使えます
Terminal window
tako --help
tako split --help
tako orchestrator spawn --help

やりたいことから引くための全 97 コマンドの一覧です。詳細のあるものはリンクから飛べます。

コマンド何をするか
split隣に新しいペインを生やす
sendペインへテキスト・コマンドを送る
clickペインの画面のセルを左クリックする(マウスを使う TUI だけ)
readペインの画面内容を読む
links画面のリンク(Cmd+クリック / Windows は Ctrl+クリックで開けるもの)を列挙する
lsp言語サーバ(LSP)の状態と起動・停止・編集中のコードの診断・定義ジャンプ・整形(編集モードで自動的に起きる)
listタブ・ペインの構成を JSON で得る
focusフォーカスを移す
scrollスクロールバックを動かす
closeペインを閉じる
titleタイトル・役割ラベルを設定する
resizeペインの取り分を変える
equalize全ペインを均等化する
tabタブの作成・切替・改名・ペイン移動
window複数ウィンドウの操作
menuメニューバーの構成取得・開閉・項目の実行
collapseサイドバーのタブ枠を折りたたむ
pinプレビューをフローティング化する
コマンド何をするか
openファイルをプレビューペインで開く
jump行を指定して開いた位置を戻る・進む(ジャンプ履歴)
searchワークスペースのファイルを横断して文字列を探す
previewPDF・画像のズーム / ページ / パン
preview-outlineMarkdown 見出し・PDF 目次へジャンプ
preview-link-listPDF 内リンクの一覧
preview-follow-linkPDF 内リンクをたどる
preview-copy-codeMarkdown コードブロック全文をコピーする
preview-reloadライブリロードの ON/OFF
preview-cache画像キャッシュ上限の確認・変更
preview-changeloggit 履歴ビューへの切替
editプレビュー上での軽量編集
fileパスコピー / Finder / リネーム / ゴミ箱
treeファイルツリーへフォルダを追加・削除
video動画の再生・一時停止・シーク
webWeb ビューペインの操作
runファイルを実行する(Code Runner)
run-default拡張子ごとの実行コマンド既定
run-configファイル / プロジェクトごとに実行環境・プロファイル・引数・環境変数・実行先などを覚える
run-interactive入力が要るコマンドを可視ペインへ委譲
run-interactive-status委譲したコマンドの完了確認
コマンド何をするか
backgroundペインを退避する(プロセスは維持)
foreground退避中ペインを戻す
backgrounded退避中ペインの一覧
tmuxtmux セッションの一覧・kill・取り込み
persistセッション永続化の ON/OFF
recoverレイアウトをバックアップ世代から復旧
logsペインの平文ログの参照・設定
scrollbackスクロールバック保持行数の確認・変更
redraw-limitフォーカスの無いペインの再描画の上限(fps)の確認・変更
mouseマウスを使う TUI へのクリックの転送の確認・切替
paste-guard貼り付け・入力に API キー・パスワードらしきものがあれば送る前に確かめる機能の確認・切替・判定・許可リスト
sessions会話セッションの発見と復元
usage利用制限(5h / 7d)の観測と、どのプロジェクト・Issue・会話が利用制限の何 % とトークンをどれだけ使ったか
コマンド何をするか
git log / diff / show履歴・差分・コミット詳細を JSON で得る
git stage / unstage / commitステージング・コミット
git push / pullリモートとの同期
git checkout / branch / merge切替・作成・マージ
git conflicts / abort / resolveコンフリクトの確認・中止・AI 解消
コマンド何をするか
master司令塔の AI を起動する
solo1 対 1 の AI を起動する
orchestratorworker の起動・監視・回収など
taskタスクチェックポイントと受け入れゲート
todoユーザー向けタスク(人がやること)の起票・一覧・返答
mcp serveMCP stdio ブリッジ
agentsエージェント共通ルールの同期
show-commandコピー / 実行ボタンつきのコマンド提案カードを出す
コマンド何をするか
ui-modeかんたん表示(GUI モード)とターミナル表示の切替
chat copyかんたん表示の会話本文をコピーする
themeテーマ・色・フォント
langUI 表示言語(日本語 / 英語)
settings設定画面を開く
panelサイドバーの表示・幅・ビュー
autosuggest入力予測(ゴーストテキスト)
autorenameタブ・ペインの AI 自動リネーム
portdetectポート検知と提案チップ
confirm-close閉じる確認ダイアログ
session-restartエージェントを会話ごと引き継いで再起動
limit-resume利用上限後の自動復帰(ペイン単位)
limit-service利用制限表示のサービス切替
welcome初回起動バナーの状態・次にやること・再表示
コマンド何をするか
open-inディレクトリ / リポジトリ を新タブで、SSH をいまのタブの新ペインで開く
recent最近開いた項目の一覧・クリア
ssh-hosts~/.ssh/config の Host 一覧

リモート・セットアップ・診断

Section titled “リモート・セットアップ・診断”
コマンド何をするか
remoteスマホ等からの接続サーバー
remote-folderSSH 先のフォルダをワークスペースとして開く
setup質問ゼロの自動セットアップ
setup-mcpMCP 登録だけ行う
updateアプリの更新確認・実行
migrate設定・データファイルの形式確認と自動移行
configAI 系設定のデバイス間共有(git ベース)
platformこの環境で使える機能の一覧
check-health環境の健全性診断(tako setup --check と同じ項目を JSON でも返す)
queuePC のメモリ・CPU と、重い処理(ビルド・テスト等)がどのペインで動いてどれだけ食っているか
agent-supportエージェント系統ごとの能力差
shell-integrationシェル統合(cwd 追従・コマンド状態)の確認・配置(tako setup が自動で通る)
modtako mod(Claude Code の mod 連携)の状態と切替。ペインの claude から ctx・使用制限・ターンの報告が届いているかを見る。Claude Code の画面の帯の表示切替(band on / off)
context-budget起動時ロードの予算の確認と作業ログの自動移送
test-residueテスト・検証が残した一時 dir の掃除
fdaフルディスクアクセスの状態確認
sleep-guardスリープ防止
telemetryエラーレポート送信の ON/OFF
stale-binary古い claude バイナリの検知・張り直し

AI 連携に必要な設定を質問ゼロでまとめて行います。claude / codex / agy の認証・プランを検出し、前回値、安全な既定値の順で不足を補い、値の由来と最終サマリを表示します。CLI が 1 つ・認証済みの標準ケースは人間の入力なしで完走します。tako アプリが起動していなくても実行できます。詳しくはセットアップガイドを参照してください。

Terminal window
# 自動セットアップ(標準ケースは質問ゼロ)
tako setup
# 標準入力を一切読まずに自動セットアップ
tako setup --yes
# 全回答を JSON、ファイル、標準入力のいずれかで指定
tako setup --answers '{"selected_agent":"codex","provider_plans":{"gpt":"plus"}}'
tako setup --answers @setup-answers.json
generate-answers | tako setup --answers -
# 前回設定を AI と個別に見直す
tako setup --review
# 環境チェックだけ実行(CLI の有無・認証・プラン・依存・シェル統合・tako CLI の PATH・
# MCP・セットアップ状態・アップデート追従・リモート公開・CLI / MCP の受け口を表示)
tako setup --check
# アップデート追従状況を表示(前回セットアップ以降に setup へ入った変更の一覧)
tako setup --changes
tako setup --changes --json
# セットアップ状態をリセットして最初からやり直す
tako setup --reset

tako setup はシェル統合(ペインの作業ディレクトリ追従・コマンドの実行状態・入力予測)のスクリプトも用意します。どの OS も設定ファイルには何も書かず、状態が 1 行出るだけです。macOS / Linux は tako が開くシェルへ環境変数を渡すだけで効き、Windows は tako がペインの PowerShell を開くときに読み込ませます($PROFILE は書き換えず、実行ポリシーが Restricted の PC でも効き、tako の外の PowerShell には影響しません)。以前の版が $PROFILE に足した管理ブロックは自動の移行が取り除きます(他の行はそのまま)。用意できなかったときも setup は最後まで走り、tako shell-integration install を「残り」として案内します。状態だけ見たいときは tako shell-integration または tako setup --check です。

tako setup の最後には、スマホから使えるかを スマホからの接続: … の 1 行で出します。Tailscale の導入・ログイン・証明書・公開の状態を読むだけで(何も入れず何も起動しません)、その状態で次に打つコマンドを添えます。Tailscale が未導入なら tako setup deps install(依存チェックの段で出るものと同じ案内)、入っていて途中まで済んでいるなら tako remote setup、公開まで済んでいれば接続先の URL です。Tailscale が入っているのに実行できないときは「未導入」とは言わず Tailscale を実行できませんでした と出します。Tailscale が応答しないときは [確認できません] tailscale status --json(10 秒応答なし) と出して先へ進むので、setup が止まることはありません。

tako setup --check が出す診断の項目は tako check-health と同じ 1 つの実装から出ています。人が読むなら tako setup --check、AI や監視から読むなら tako check-health --json(diagnostics.items[].key が安定した項目名、diagnostics.remaining が人の操作が要るぶん)で、どちらも同じ状態には同じ答えを返します。

--answers は selected_agent、provider_plans、instruction_content、profile、projects、orchestrator、sleep_guard を受け取ります。同じ JSON は MCP tako_setup でも使えるため、AI に日本語で希望を伝えてセットアップを代行させられます。projects は指定時に全登録を置き換えます。

エージェント CLI(claude / codex / agy)がまだ入っていない環境で、導入から認証までを案内・実行します。tako setup が「1 つも使える系統が無い」ことを見つけたら自動でこの段を通るので、普段このコマンドを直接叩く必要はありません。AI から段ごとに操作したいときや、状態だけ確認したいときに使います。

Terminal window
tako setup bootstrap # 状態確認(既定。読み取り専用)
tako setup bootstrap status-all # 3 系統ぶんをまとめて確認(読み取り専用)
tako setup bootstrap install --dry-run # 何をどこに入れるかだけ表示
tako setup bootstrap install # 公式インストーラを実行
tako setup bootstrap install --agent codex # 系統を選んで入れる
tako setup bootstrap path # claude をどのターミナルからも使えるようにする
tako setup bootstrap undo-path # path で入れた設定を取り除く
tako setup bootstrap handoff # 別のエージェントへ導入を頼む

--agent を省略すると claude が対象です。claude / codex / agy から選べます (それ以外の名前は、間違って別の系統を入れないよう選択肢つきで拒否します)。

系統ごとの導入手順は次のとおりです(すべて公式のもの)。

系統macOS の公式コマンドコマンドの置き場所以後の更新
claudecurl -fsSL https://claude.ai/install.sh | bash~/.local/bin/claudeClaude Code が自分でバックグラウンド更新
codexcurl -fsSL https://chatgpt.com/codex/install.sh | sh~/.local/bin/codex新しい版が出ると知らせるだけ(codex update で更新)
agycurl -fsSL https://antigravity.google/cli/install.sh | bash~/.local/bin/agy実行のたびに自分で背景更新

次の一歩(next_step)は 4 つのいずれかです。

値意味
installその CLI がまだ入っていない
path入っているが、ターミナルからコマンドが呼べない
auth入っているが、アカウントにログインしていない
ready導入は済んでいる

ログインのコマンドは系統ごとに違います(claude auth login / codex login / 引数なしの agy)。 どれもブラウザ操作が必要なので tako は代行せず、コマンドを案内するところまでです。

インストール前には必ず「実行するコマンド・取得元・置き場所・以後の更新」を表示します。管理者権限は使わず、ホームディレクトリの中だけで完結します。

「どのターミナルからも使えるようにする」のやり方は OS で違います。macOS / Linux はログインシェルの設定ファイル(zsh なら ~/.zprofile)へ 1 ブロック追記し、Windows はユーザー環境変数 Path へ追記します(Windows 版の公式インストーラは PATH を自動では通さず、手作業を案内して終わるためです)。どちらも undo-path で元に戻せます。macOS では 3 系統とも同じ場所(~/.local/bin)に入るので、追記されるブロックは 1 つだけです。

Windows では、ユーザー環境変数 Path の変更はすでに開いているタブには届きません。tako の新しいタブはユーザー環境変数を読み直してから起動するので、セットアップのあとは tako で新しいタブを開けば、tako を再起動しなくてもそのまま使えます。tako setup もこの状態を見分けて「新しいタブを開いてから打ってください」と案内します(tako setup bootstrap status --json では needs_new_tab が true になります)。

Windows で tako が実際にインストーラを走らせるのは claude だけです。codex / agy は状態の確認と公式コマンドの案内までで、実行は行いません(Windows 実機での確認が済んでいないためです)。表示される公式コマンドをご自身で実行すれば、そのあとの PATH 通しと状態確認は tako が引き継げます。詳しくは Windows 対応状況 をご覧ください。

tako が使う任意の外部ツール(ターミナルの永続化に使う tmux / psmux、git パネルの git、リモート接続の tailscale)の状態を確認し、その場で導入します。どれも無くても tako 自体は動きますが、欠けるとその機能が使えません。

Terminal window
tako setup deps # 状態確認(既定。読み取り専用)
tako setup deps install # 未導入のものを導入
tako setup deps install --dep tmux # 1 つだけ導入
tako setup deps install --dry-run # 何を入れるかだけ表示

導入済みのものには触りません(何度実行しても同じ結果になります)。導入を代行できるのは macOS の Homebrew(brew install)で、Windows は打つべき winget のコマンドを表示します。

Tailscale は入っているのに応答しない(tailscale --version が返らない・失敗する)ときは [OK] ではなく [警告] tailscale: 在りますが実行できません と出し、入れ直しは勧めません(2 つ目の Tailscale を入れると、リモート接続がつながらなくなることがあります)。Dock から起動した tako でも、ログインシェルの PATH にある Tailscale(MacPorts や nix で入れたもの)を見つけます。

標準の tako setup は質問をしないので、足りないツールがあっても状態と tako setup deps install の 1 行だけを表示します。1 つずつ「今すぐ入れますか?」と聞いてほしいときは tako setup --review を使ってください。

エージェント CLI に tako の MCP サーバーを登録します。対話なしで登録だけしたいときに使います。

Terminal window
tako setup-mcp # claude + 導入済みの codex / agy へまとめて登録(既定)
tako setup-mcp --agent codex # codex だけに登録
tako setup-mcp --project # 現在のディレクトリだけに登録(claude のみ)

引数なしのときは claude と、この環境に導入済みの codex / agy をまとめて対象にします。未導入の CLI は理由つきで skip するだけでエラーになりません。--agent で明示指定したときだけ、その CLI が未導入なら分類済みエラー(理由 + 次の一手)で止まります。

エージェント書き込み先手段
claude~/.claude.json(--project 時は <cwd>/.mcp.json)claude mcp add(無ければ JSON を直接マージ)
codex~/.codex/config.toml の [mcp_servers.tako]codex mcp add + env_vars の追記
agy~/.gemini/config/mcp_config.json の mcpServers.takoagy mcp add

codex / agy は各 CLI の mcp add に書き込みを任せています。自分で TOML / JSON を書くと CLI 側の正規化と二重にずれるため、利用者が手で codex mcp add を打ったのと同じ結果になる経路へ寄せてあります。何度実行しても設定は同じ内容に収束します(--project は codex / agy が対応していないので、明示指定すると理由を出して止まります)。

アプリのアップデートを確認・実行します。Homebrew / ZIP(macOS)・インストーラー(Windows)のどれでインストールしたかを自動判別します。Windows はインストーラーを配布元の sha256 で確かめてから無言で実行し、tako を終了して入れ替え、終わると起動し直します(ポータブル版はアプリ内では更新しません)。更新チェックは「自分の OS 向けのアセットを含む最新リリース」を探すため、他 OS 版だけが先に出ている状況で「更新はあるが入れられない」通知が出ることはありません。

Terminal window
tako update status # 配布系統・現在バージョン・PATH 上の重複 CLI を診断
tako update check # 新しいバージョンがあるか確認(更新はしない)
tako update apply # 更新を実行(レイアウト保存 → 更新 → 自動再起動)
# brew での更新が失敗して詰まったときの復旧
tako update repair # Homebrew の管理情報を修復
tako update apply-zip # zip 経由で強制更新(macOS)

ペインを分割して新しいペインを作ります。新しいペインの ID が出力されるので、続けて send や read の対象にできます。

Terminal window
tako split --right # 右に分割(既定)
tako split --down # 下に分割
tako split --right -- npm run dev # 分割してコマンドを実行
tako split --right --ratio 0.3 -- htop # 新ペインの取り分を 30% に
tako split --down --cwd ~/Documents/webapp --focus
オプション説明
--right / --down / --up / --left分割方向(省略時は右)
--ratio <0.0–1.0>新ペイン側の取り分(省略時は等分)
--cwd <パス>新ペインの作業ディレクトリ
--focus新ペインにフォーカスを移す
--pane <ID> / --tab <ID>分割元の指定(省略時は呼び出し元ペイン)
-- <コマンド>シェルの代わりに実行するコマンド

-- <コマンド> で実行するコマンドは、普通にペインを開いたときと同じ環境(ログインシェル + ~/.zshrc などの設定ファイルを読んだ後の PATH)で動きます。nodebrew / fnm / Homebrew で入れた npm や node も、ターミナルで打つときとまったく同じように見つかります。

コマンドが失敗したときだけ、ペインは閉じずに「[tako] 終了コード N / Enter でこのペインを閉じます」の案内を残して止まります(tako run の実行ペインと同じ表示です)。Enter を押すとペインが閉じます。止まっているあいだの終了コードは tako run-interactive-status <ペイン ID> で読めます。成功したコマンドは今までどおり終わった時点でペインごと閉じるので、そのときの出力は tako logs show <ペイン ID> で後から読めます。

ペインにテキストを送信します。既定で末尾に改行(Enter)が付くので、コマンドはそのまま実行されます。

Terminal window
tako send --pane 3 "echo hello"
tako send --pane 3 --no-newline "yes"
tako send --pane 3 --await-prompt "テストを実行して結果を教えて"
オプション説明
--pane <ID>送信先ペイン(省略時は呼び出し元)
--no-newline末尾に改行を付けない
--await-prompt入力欄が表示されるのを待ってから送信

ペインの画面の 1 セルを左クリックします(押して離す)。座標は tako read の行・桁で、どちらも 0 始まりです。 全画面の Claude Code の「Jump to bottom」や tako mod の帯のボタンなど、マウスで押す前提の場所を エージェントから押すための口です。GUI のクリックと同じ経路を通ります。

Terminal window
tako click --pane 3 --row 20 --col 41
オプション説明
--pane <ID>対象ペイン(誤ったペインを押さないよう必須)
--row <N> / --col <N>押すセル(0 始まり)

画面のアプリがマウスを使わない(シェルなど)ときは何も送らずにエラーを返します。MCP では tako_send_input の click: {"row": N, "col": N} が同じ操作です。

ペインの画面内容をテキストとして取得します。

Terminal window
tako read --pane 3
tako read --pane 3 --lines 50

画面の中で Cmd+クリック(Windows は Ctrl+クリック)で開けるもの(URL・実在するパス)を列挙します。GUI のクリック判定と同じ経路を通るので、「この画面のこのパスはリンクになるのか」を人手のクリック無しに確かめられます。--text を渡すと画面の代わりにその文字列を材料にするため、画面の写しを貼って判定を再現できます。

Terminal window
tako links # 呼び出し元ペインの画面
tako links --pane 3
tako links --text "$(cat out.txt)" # 画面の写しで判定を再現する

タブ・ペインの構成を JSON で出力します。各ペインの ID・タイトル・作業ディレクトリ(cwd)・実行状態・listen 中のポートなどが含まれます。ペイン ID を調べる出発点です。

Terminal window
tako list

指定ペインにフォーカス(入力先)を移します。

Terminal window
tako focus 3 # ID 指定
tako focus --right # 方向指定

ペインのスクロール位置を動かします。

Terminal window
tako scroll --pane 3 --delta 100 # 100 行分過去へ
tako scroll --pane 3 --to 0 # 最下部(最新)に戻る

ペインを閉じます(中のプロセスも終了します)。タブ最後の 1 ペインを閉じるとタブごと閉じます。

Terminal window
tako close --pane 3
tako close --pane 3 --force # 実行中の worker でも強制的に閉じる

ペインの表示タイトルと役割ラベルを設定します。

Terminal window
tako title --pane 3 "dev server"
tako title --pane 3 --role worker-1 "修復係"
tako title --pane 3 "" # 空文字でクリア(自動リネームに戻る)

コードプレビューを編集モードにすると、拡張子に合う言語サーバ(Rust = rust-analyzer / C・C++ = clangd / TypeScript・JavaScript = typescript-language-server / Python = pyright / LaTeX = texlab / TOML = tombi / Swift = sourcekit-lsp / Dart = dart / CSS・SCSS・Less = vscode-css-language-server / HTML = vscode-html-language-server / Arduino のスケッチ(.ino)= arduino-language-server)が自動的に起きます。入っていなければ、tako がその場で取ってきて起こします(pyright / typescript-language-server / rust-analyzer / texlab / tombi。置き場は tako のデータフォルダで、npm や brew のグローバルには入れません。Node.js が要るサーバは、足りる Node.js が無ければそれも取ります。PATH に入っている版があればそちらを使います)。エディタのタイトルに「取得中 / 起動中 / 読み込み中 / 動作中」が出て、取れなかったときはタイトルの下に理由と「もう一度取得」のボタンが出ます。tako lsp はその状態を見たり、起こし直したり、診断(エラー・警告)を一覧したりするコマンドです。診断は画面でも、コードの波線(エラー = 赤 / 警告 = 黄 / 情報 = 青 / ヒント = 灰)と右パネルの diagnostics ビューに出ます。定義ジャンプは下の「定義へ飛ぶ」、整形は「コードを整形する」、補完は「補完の候補を読む」を参照してください。

Terminal window
tako lsp status # 状態(稼働中か・pid・診断の件数)。未導入なら理由と導入コマンド
tako lsp servers # 対応している言語サーバと、入っているかどうか
tako lsp restart # 起こし直す(tako の外のターミナルでサーバを入れた後はこれ)
tako lsp install # 前もって取っておく / 取れなかったものを取り直す(tako が起動していなくても動く)
tako lsp stop # 止める(restart するまで起こさない)
tako lsp logs # サーバが出したエラー出力の直近
tako lsp diagnostics # 編集中のコードの診断(言語サーバにつながった文書すべて)
tako lsp diagnostics --pane 7 --severity warning # そのペインの、警告以上(エラーと警告)

--name rust-analyzer のように 1 つだけを指定できます。MCP では tako_lsp_server(action 引数)が同じ操作です。

Arduino のスケッチ(.ino)は基板を選ぶまで言語サーバを起こしません。そのあいだ tako lsp status の state は unconfigured で、理由と選ぶコマンド(setup_command = arduino-cli board attach -b <基板> <スケッチのフォルダ>)が返ります。tako のターミナルで選べばそのまま起き、外で選んだときは tako lsp restart です。

Rust のプロジェクトでは、rust-analyzer が起きた直後にプロジェクト全体の確認(build script と cargo check)を走らせます。tako はこれを target/rust-analyzer で走らせるように rust-analyzer へ伝えるので、そのあいだに自分で cargo build しても Blocking waiting for file lock で待たされません(そのぶん build script と proc-macro の成果物は 2 か所に置かれます)。言語サーバへ渡すこうした初期設定は tako lsp options で見たり変えたりできます。

Terminal window
tako lsp options # 既定・上書き・いま動いているサーバへ渡した値
tako lsp options --name rust-analyzer --set cargo.targetDir=false # 分けずに同じ target を使う(ディスクを節約したいとき)
tako lsp options --name rust-analyzer --set cargo.targetDir=null # tako の既定へ戻す

変えた値は tako のデータフォルダの settings.json(lsp_init_options)に保存され、次に言語サーバを起こしたときから効きます(今すぐなら tako lsp restart)。値は JSON として読めればその値(true / 3 / "文字列")、読めなければ文字列のまま渡ります。MCP では tako_lsp_server の action=options(set にキー → 値)が同じ操作です。

tako lsp servers の答え(入っているか・どこに在るか)は覚えておくので、2 回目からはすぐ返ります。探し直すのは tako lsp restart のときと、tako のターミナルでコマンドを実行したり cd したりしたとき(PATH が変わりうるため)です。同じファイルを 2 つのペインで編集しても、言語サーバには 1 つの文書として届き、診断は両方のペインに出ます。

tako lsp diagnostics は 1 件 1 行で 行:桁-行:桁 重大度 メッセージ (出所 コード) を出します。位置は tako edit replace-range と同じ(行は 1 始まり・桁は 0 始まりのバイト)なので、そのまま範囲編集へ渡せます。--severity は error / warning / info / hint で、その重大度以上に絞ります。--json を付けると重大度ごとの数(counts)と、tako が保持している診断の総数(retained)も返ります。MCP では tako_lsp(action=diagnostics)が同じ操作です。

コードプレビューで識別子を ⌘+クリック(Windows は Ctrl+クリック)すると、その定義へ飛びます。⌘ を押しながら識別子の上に乗せると下線が出ます。C / C++ の #include "foo.h" の上ならヘッダが開きます。編集モードでなくても使えます(そのときだけ言語サーバを起こします)。

  • 定義が同じファイルにあれば、同じペインのままその行へ
  • 定義のあるファイルを同じタブの別のペインが開いていれば、そのペインを使い回す(同じ定義へ何度飛んでもペインは増えません)
  • それ以外は新しいペイン(右)で開く
  • 候補が複数あれば一覧が出るので、選んだ場所へ飛ぶ

飛んだあとは tako jump back(macOS は ⌃-)で元の場所へ戻れます。同じことを CLI からも行えます。位置は tako edit replace-range と同じ(行は 1 始まり・桁は 0 始まりの行内バイト)です。

Terminal window
tako lsp definition --pane 3 --line 12 --column 8 # 定義へ飛ぶ
tako lsp definition --pane 3 --line 12 --column 8 --open none # 飛ばずに場所だけ知る
tako lsp definition --pane 3 --line 12 --column 8 --choice 2 # 候補が複数のとき 2 番目へ
tako lsp implementation --pane 3 --line 12 --column 8 # 実装へ(declaration / type-definition も同じ引数)

--open で新しいペインの置き場所(right / down / new-tab)を選べます。見つからない・言語サーバが応答しない・入っていないときは、それぞれ別の理由と次の一手を返します。MCP では tako_lsp(action = definition 等)が同じ操作です。

コードを整形する(tako lsp format)

Section titled “コードを整形する(tako lsp format)”

編集メニューの「コードを整形」(⇧⌘I。Windows は Ctrl+Shift+I)で、言語サーバ(Rust なら rust-analyzer 経由の rustfmt)がコードを整形します。選択した範囲だけを整形するときは「選択範囲を整形」です。整形は編集の 1 回として入るので、undo 1 回で整形の前に戻せます。10 万行の大きなファイルを整形しても、その前に打った編集の undo は消えません。言語サーバによってはファイル全体を 1 回で書き換える形で答えますが、tako が行ごとの変更に分けて当てるので、undo の履歴は実際に変わった所の分だけで済み、カーソルも同じ行に留まります。範囲の整形は範囲の外を 1 文字も変えません。

Terminal window
tako lsp format --pane 3 # そのペインのコード全体を整形する
tako lsp format --pane 3 --range 10:0-24:0 # 10 行目から 24 行目の頭までだけ整形する
tako lsp format-on-save on # 保存時整形を ON にする(既定は off)

保存時整形は、自分で保存したとき(⌘S・tako edit save)だけ整形してから保存します。自動保存では整形しません(打っている途中で勝手に整形されないように)。整形できなかったとき(言語サーバが入っていない・応答しない)も保存は行い、理由を出します。設定画面の「保存時に整形」でも切り替えられます。MCP では tako_lsp(action=format / format-on-save)が同じ操作です。

補完の候補を読む(tako lsp completion)

Section titled “補完の候補を読む(tako lsp completion)”

コードを編集モードで打つと、打っている語の真下に補完の候補が出ます(↑↓ で選び、Enter / Tab で入れ、Esc で閉じる)。開いた直後など、言語サーバがまだプロジェクトを読み込んでいるあいだに打つと、候補の代わりに「言語サーバが読み込み中です」の 1 行が出て、読み込みが済むと打ち足さなくても候補に差し替わります。同じことを CLI からも行えます。位置は tako edit replace-range と同じ(行は 1 始まり・桁は 0 始まりの行内バイト)です。

Terminal window
tako lsp completion --pane 3 --line 12 --column 8 # その位置の候補(既定 50 件)
tako lsp completion --pane 3 --line 12 --column 8 --choice 2 # 2 番目の候補を入れる(undo 1 回で戻る)

読み込み中に頼んだときは、済むのを待ってから答え、答えに待った時間(waited_for_loading_ms)が載ります。待っても読み込みが終わらないときは status: loading と次の一手を返します(読み込み中かは tako lsp status の loading でも分かります)。MCP では tako_lsp(action=completion)が同じ操作です。

編集中のコードの識別子にマウスを乗せると、少し待ってから(0.3 秒)その型と説明(doc)のカードが出ます。中身は言語サーバが返したものをそのまま描くので、見出し・コード・リンクも元の見た目で出ます(リンクは押すとブラウザで開きます)。カードの上へマウスを動かしても閉じないので、長い説明はカードの中でスクロールできます。語からもカードからも離れる・打つ・Esc で閉じます。ウィンドウの下の方では語の上に、右端では左へずらして出るので、端で見切れません。

言語サーバがまだプロジェクトを読み込んでいる最中に乗せると、語の下に「読み込み中」と出て、読み込みが済んだらそのままカードに替わります(マウスを乗せ直す必要はありません)。

閲覧しているだけのファイル(編集モードでない)では、乗せただけで言語サーバを起こさないためにカードは出ません。⇧⌘H(Windows は Ctrl+Shift+H)・編集メニューの「ホバー情報を表示」なら、編集カーソル(か選んだ文字)の位置で出せます。コードの語を右クリックしたメニューにも「ホバー情報を表示」があります。同じことを CLI からも行えます。位置は tako edit replace-range と同じ(行は 1 始まり・桁は 0 始まりの行内バイト)です。

Terminal window
tako lsp hover --pane 3 --line 12 --column 8 # その位置の型・doc(本文はそのまま出す)
tako lsp hover --pane 3 --line 12 --column 8 --show # 画面のその位置にカードも出す
tako lsp hover --pane 3 --line 12 --column 8 --full # 長い doc も切らずに全文を出す

説明は既定で 16,000 字まで(カードと同じ)で、それより長いと切ったことと全文の字数を添えます。全文は --full、字数を決めるなら --limit 2000 のように指定します。何も無い位置・言語サーバが入っていない・応答しない・読み込みが終わらないときは、それぞれ別の理由と次の一手を返します。MCP では tako_lsp(action=hover。全文は limit を 0)が同じ操作です。

参照・呼び出し階層・型階層を見る(tako lsp references)

Section titled “参照・呼び出し階層・型階層を見る(tako lsp references)”

コードの語を右クリックしたメニューの「参照を検索」で、その関数や型が使われている場所を一覧にできます。「呼び出し元を表示」「呼び出し先を表示」は関数の呼び出しの木、「スーパータイプを表示」「サブタイプを表示」は型の親子の木です(言語サーバが対応しているものだけがメニューに出ます)。結果は右パネルの references タブに出ます。一覧はファイルごとにまとまり、行を押す(⌘クリックも同じ)とその位置を開きます。別のファイルは新しいペインで開き、同じファイルならそのペインのまま移動します(定義へ移動と同じ)。木は行の左の印で開け閉めでき、まだ読んでいない段は開いたときに言語サーバへ問い合わせます。呼び出し元の行を押すと、呼んでいる位置へ移動します。

結果は検索したペインごとに 1 つ持ち、同じペインでもう一度検索すると置き換わり、ペインを閉じると消えます。同じことを CLI からも行えます。位置は tako edit replace-range と同じ(行は 1 始まり・桁は 0 始まりの行内バイト)です。

Terminal window
tako lsp references --pane 3 --line 12 --column 8 # 参照の一覧(右パネルにも出すなら --show)
tako lsp incoming-calls --pane 3 --line 12 --column 8 # 呼び出し元の木(outgoing-calls / supertypes / subtypes も同じ形)
tako lsp results # 右パネルに出ている結果を読み直す(retained = 持っている結果の数)
tako lsp expand --item 2 # 木の 2 番の段を開く(collapse で閉じる)
tako lsp open-result --item 3 # 3 番の行を開く(右パネルの行を押したのと同じ)

一覧と木の各行には番号(id)が付き、--item へそのまま渡せます。参照は既定で 100 行まで出し(--limit 0 で全部)、持つのは 2,000 件までです(それより多いときは全件数を添えます)。見つからない・言語サーバが対応していない・入っていない・応答しないときは、それぞれ別の理由と次の一手を返します。MCP では tako_lsp(action = references / incoming-calls / outgoing-calls / supertypes / subtypes / results / expand / collapse / open-result / clear-results)が同じ操作です。

コードの語を右クリックしたメニューの「名前の変更…」で、変数・関数・型の名前を変えられます。タイトルの下に今の名前が入った欄が出るので、新しい名前を打って Enter で書き換えます(Esc でやめる)。言語サーバが構文を見て書き換えるので、value を item に変えても Value::new() や values は変わりません。書き換えは編集の 1 回として入るので、undo 1 回で戻せます(保存はしません)。

Terminal window
tako lsp rename --pane 3 --line 12 --column 8 --new-name item # 書き換えずに「N ファイル・M 箇所」と場所を出す
tako lsp rename --pane 3 --line 12 --column 8 --new-name item --yes # そのペインのコードへ当てる(undo 1 回で戻る)

既定では何も書き換えず、書き換える場所の一覧だけを返します(確かめてから --yes)。今はそのペインで開いているファイルの中だけを書き換えます。別のファイルにも及ぶ名前(ほかのファイルから使われている関数など)は、--yes を付けても書き換えず、どのファイルの何箇所に及ぶかと理由を返します。キーワードやコメントの中など変えられない位置、その言語で使えない名前のときも理由を返します。MCP では tako_lsp(action=rename。当てるのは confirm=true)が同じ操作です。

ペインの取り分(画面に占める割合)を調整します。

Terminal window
tako resize --pane 3 --dx 0.1 # 横方向に 10% 広げる
tako resize --pane 3 --dy -0.1 # 縦方向に 10% 縮める
tako resize --pane 3 --share-x 0.6 # 横の取り分を 60% ぴったりに
オプション説明
--dx / --dy相対変更(正 = 広げる、負 = 縮める)
--share-x / --share-y絶対指定(0.0〜1.0)

タブ内の全ペインを均等サイズに整えます。

Terminal window
tako equalize
tako equalize --tab 2
Terminal window
tako tab new # 新しいタブを作成
tako tab new --title "API Server"
tako tab rename --tab 2 "フロントエンド" # タブ名を変更
tako tab rename "" # 手動指定を解除(自動リネームに戻る)
tako tab select 2 # タブを切り替え
tako tab move-pane 2 --pane 5 # ペインを別タブの末尾へ移動
tako tab move-pane --pane 5 --target 3 --down # 同タブ内で並べ替え

複数ウィンドウを扱います。タブバーは全ウィンドウ共通で全タブを表示し、タブをクリックするとそのウィンドウに表示が移ります(1 つのタブが同時に 2 つのウィンドウに出ることはありません)。

Terminal window
tako window list # ウィンドウ一覧
tako window new # 新規タブ付きで新しいウィンドウ
tako window new --tab 3 # 既存タブ 3 を分離して新ウィンドウへ
tako window move-tab --tab 3 --window 2 # タブを別ウィンドウへ移動
tako window focus 2 # ウィンドウを前面化
tako window close 2 # 閉じる(タブは残存ウィンドウへ合流)
tako window move 300 200 # 窓を動かす(ディスプレイ内の座標)
tako window resize 1600 1000 # 窓の寸法を変える(位置は動かない)

move / resize の座標はそのディスプレイの左上を原点とする位置です(--window W を省略するとアクティブウィンドウが対象)。現在の矩形は tako window list の bounds、置き先のディスプレイは同じ応答の display で読めます。最小寸法(200x150)未満や画面からはみ出す指定は理由つきで断ります。

起動時から位置を決めたいときは環境変数 TAKO_WINDOW_BOUNDS を使います。

Terminal window
TAKO_WINDOW_BOUNDS=100,50,1400,900 tako # 位置と寸法
TAKO_WINDOW_BOUNDS=1400,900 tako # 寸法だけ(画面の中央へ)

メニューバーの構成取得・開閉・項目の実行を行います。開閉は Windows 限定です(macOS のメニューは OS 側のメニューバーに載るため、tako から開閉できません)。項目の実行はどちらの OS でも使えます。

Terminal window
tako menu list # メニュー構成と開閉状態(項目名とショートカット付き)
tako menu invoke ファイル/新規タブ # 項目を実行する(項目名だけでもよい)
tako menu open 表示 # メニューを開く(Windows のみ)
tako menu close # 閉じる(Windows のみ)

サイドバーのタブ枠を折りたたみ / 展開します(配下のバックグラウンド行を隠します)。

Terminal window
tako collapse --tab 2 on # 折りたたむ
tako collapse --tab 2 off # 展開
tako collapse --tab 2 # トグル

ファイルをプレビューペインで開きます。コードはシンタックスハイライト付き(210 以上の形式)、.md はレンダリング表示、画像・PDF・動画にも対応します。

Terminal window
tako open src/main.rs
tako open README.md --mode code # Markdown をソース表示で
tako open src/app.tsx --right # 右に分割して開く
オプション説明
--mode <code|markdown|image|pdf|video>表示モードの明示指定
--right / --down / --up / --left分割して新しいプレビューペインで開く
--pane <ID>基準ペイン(相対パスの解決と表示先に使う)
--line <行> / --column <桁>開いた直後にその行へ飛ぶ(1 始まり。表示はソースになる)。ジャンプ履歴に積まれる

行を指定して開くと(tako open <file> --line <行>、MCP の tako_open_file の line)、開く前にいた場所と着地点がジャンプ履歴に積まれます。定義へ飛んだあとで元の場所へ戻るための機能です。GUI では ⌃- で戻り ⌃⇧- で進みます(Windows は Ctrl+Alt+← / Ctrl+Alt+→。Ctrl+- は縮小に使っているため)。

Terminal window
tako jump back # 1 つ戻る
tako jump forward # 1 つ進む
tako jump list # 履歴の全項目と現在位置(> が現在位置)
  • 行を渡さない tako open(ファイルツリーで眺めるなど)は積みません
  • 同じファイルの同じ行へ続けて飛んでも 1 つにまとまります。履歴は最大 100 件で、古いものから消えます
  • 閉じたペインの項目へ戻ると、そのファイルを開き直します(同じタブのプレビューを使い回し、無ければ右に分割)
  • 消えたファイルの項目は読み飛ばして履歴から消します
  • 端まで来たら何もしません(「これより前の履歴は無い」)
  • --focus で着地したペインへフォーカスを移します(GUI のキーは常に移します)

MCP では tako_jump(action = back / forward / list)が同じ操作です。履歴は tako を終了すると消えます。

ワークスペース(タブのファイルツリーのルート)のファイルを横断して、文字列がどのファイルの何行目にあるかを探します。GUI では ⇧⌘F(Windows は Ctrl+Shift+G。Ctrl+Shift+F はファイルの中の検索)か編集メニューの「ファイル横断検索…」で右パネルの search ビューを開き、検索欄に打って Enter を押します。結果の行を押すとその行を開きます(開いていないファイルは新しいペイン、同じタブで開いているファイルはそのペイン)。

Terminal window
tako search TODO # タブのファイルツリーのルートから探す
tako search 'fn \w+_land' --regex # 正規表現
tako search Needle --case-sensitive # 大文字小文字を区別する(既定は区別しない)
tako search helper --path crates/tako-core
tako search helper --show # 右パネルの search ビューにも出す
tako search --results # 右パネルの結果を読む
tako search --open 3 # 右パネルの 3 番目の行を開く(行を押すのと同じ)
tako search --clear # 右パネルの結果を閉じる

出力は grep と同じ パス:行:桁: 抜粋 で、最後に件数の 1 行が付きます(パスはターミナルのリンクとして開けます)。

  • .gitignore の対象は探しません(git のリポジトリの中で効きます)。.git の中・バイナリ(先頭に NUL があるファイル)・8 MB を超えるファイルも探さず、数だけを最後の行に出します
  • 隠しファイル(.github など)は探します。シンボリックリンクはファイルだけを辿り、フォルダは辿りません
  • 保持するのは 2000 行まで、かかる時間は 30 秒までです。超えたら打ち切って理由を出します(検索語や --path で絞ってください)
  • 範囲を省いたとき、ホームフォルダ(とディスクのルート)は探しません(新しいタブはホームで開くため、うっかり全体を探さないように)。ホームしか無いときはフォルダへ cd するか tako tree add <フォルダ> / --path で範囲を渡してください
  • --show を付けない検索は結果を返すだけで、画面の検索結果を上書きしません
  • 表示する行は既定で 100 まで(--limit 0 で全部)。--json で応答をそのまま出します

MCP では tako_search(action = search / results / open / clear)が同じ操作です。

開いているプレビューを外から操作します。

Terminal window
# PDF・画像のズーム / ページ / パン(引数なしで現在状態)
tako preview
# Markdown 見出し・PDF 目次のアウトライン(1 始まりの項目番号でジャンプ)
tako preview-outline
tako preview-outline --item 4
# Markdown / PDF のリンク(開くのは http / https のみ)
tako preview-link-list
tako preview-follow-link
# Markdown のコードブロックを装飾なしでコピー(出現順 0 始まり・省略で先頭)
tako preview-copy-code
tako preview-copy-code 2
# ファイルが書き換わったら自動で反映(既定 ON)
tako preview-reload # 現在値
tako preview-reload off
# デコード済み画像キャッシュの上限(既定 512 MiB、256〜8192)。上限は天井で、
# 実際に効かせる上限は見えているプレビューの量から決まる。裏のタブ・退避中の
# プレビューは 30 秒で画像を手放し、表に戻すと作り直す
tako preview-cache # 上限・使用量・件数・実効上限・ペインごとの持ち分
tako preview-cache 1024
# コード表示 ⇔ git 履歴(チェンジログ)表示の切替
tako preview-changelog

コードプレビュー上での軽量編集です。開始 → 全文適用 → 保存の 3 段階で、外部から書き換えられていた場合は保存を拒否します。

Terminal window
tako edit --help # 開始 / 全文適用 / 保存のサブコマンドを確認

編集中のファイルがディスク側で書き換わる(別のエディタ・git checkout・フォーマッタ等)と、保存は書かずに断り、プレビューの上に「差分 / 上書き保存 / ディスクから読み直す」の帯が出ます。自動保存はそのあいだ止まり、知らせは 1 回だけです。同じことを CLI からも選べます。

Terminal window
tako edit diff # ディスク → 編集中の差分(何も変えない)
tako edit save --force # 自分の変更で上書きする(消されていたら作り直す。--overwrite も同じ)
tako edit reload # ディスクから読み直す(自分の変更は tako edit undo 1 回で戻せる)

MCP では tako_preview_save の action で同じ操作になります。

CLIMCP tako_preview_save
tako edit saveaction 省略(または save)
tako edit save --force(別名 --overwrite)action=overwrite
tako edit reloadaction=reload
tako edit diffaction=diff

編集していないあいだにディスク側が変わったときは、帯を出さずにそのまま追従します。未保存の変更があるプレビューへ別のファイルを開くと、差し替えずに右へ分割して開きます。

読み直した直後に tako edit undo(⌘Z、Windows は Ctrl+Z)で読み直しを取り消すと、本文はディスクの外部変更より前の版に戻ります。自動保存が ON なら、そのまま保存すると外部変更を上書きしてしまうので、自動保存を止めて同じ帯を出します。上書きするなら tako edit save --force、外部変更を採るなら tako edit reload か tako edit redo です。

SSH 先のファイル(tako remote-folder open-file)は、開いた後にリモート側が変わっていると書き戻しを断り、同じ帯と応答の conflict(remote: true)に載ります。自分の変更で上書きするなら tako edit save --force、リモートの中身を採るならもう一度 tako remote-folder open-file で取り直します(編集は閉じて開き直しになります)。

検索と置換は大文字小文字を区別するのが既定です(value で探しても Value には当たりません)。区別しないときは -i、単語単位で探すときは -w を付けます。

Terminal window
tako edit search value # 区別する(既定)
tako edit search value -i # 区別しない
tako edit search value -w # 単語単位(values / _value には当たらない)
tako edit search --direction prev # 次へ / 前へ(条件は今の検索のまま)
tako edit replace value item --all # 全置換(区別するので Value は残る)

画面の検索欄(⌘F、Windows は Ctrl+Shift+F)は --open / --close で開け閉めできます。開いた欄で探すと、Markdown もヒットをコード表示の行の上に描きます。閉じると元の描画(目次つき)へ戻ります。

Terminal window
tako edit search --open # 検索欄を開く
tako edit search value # 開いた欄で探す(ヒットが画面に出る)
tako edit search --close # 閉じる(閲覧中の Markdown は描画へ戻る)

カーソルの隣の括弧と、それと対になる括弧(画面で色が付く 2 文字)の位置は、編集系の応答の document.bracket_match で読めます。bracket がカーソルの隣の括弧、match がその対で、位置は tako edit replace-range と同じ(行は 1 始まり・桁は 0 始まりの行内バイト)です。対が無いとき・選択しているときは null です。

Terminal window
tako edit cursor 12:8 # 12 行目の 8 桁目へ置く → 応答の document.bracket_match を見る

文字をキーボードで打つのと同じ形で入れるときは tako edit type です。1 文字ずつ打鍵として入るので、開き括弧は閉じ括弧も入れ、自動で入った閉じ括弧の手前の閉じ括弧は飛び越します(1 回 1000 文字まで。長い本文は tako edit replace-range)。括弧を自動で閉じるかは tako edit auto-close で切り替えます(既定 on。Markdown とテキストは on でも閉じません)。効いているかは応答の document.auto_close で読めます。

Terminal window
tako edit type "f(x" # → f(x) の ) の手前にカーソル
tako edit type ")" # → ) を飛び越す(二重にならない)
tako edit auto-close off # 括弧を自動で閉じない

tako edit newline は Enter と同じで、Python の return などの行の後ろは 1 段浅く、Markdown のリストの行は印を引き継ぎます(印だけの行では印を消して抜けます)。

ファイルツリーの右クリックメニューに相当する操作群です。

Terminal window
tako file copy-path src/main.rs # 絶対パスを出力(--relative で相対)
tako file reveal src/main.rs # Finder で表示
tako file open-terminal ~/Documents/webapp # ペイン内で cd
tako file rename old.txt new.txt
tako file move notes.md docs # 別のフォルダへ移す(ツリーの D&D と同じ。同名・自分の配下・別のボリュームは断る。最近使った項目のフォルダも追う)
tako file move a.md b.md docs # まとめて移す(最後が移動先。1 件でも断られたら終了コード 1)
tako file copy notes.md src docs # 複製(最後が貼り付け先。同名は「名前 のコピー」等の別名で置き上書きしない。複数でも 1 つのコピー)
tako file clipboard copy notes.md # ツリーのコピーと同じ(Finder / エクスプローラーへも貼れる)
tako file clipboard cut notes.md # 切り取り(貼ると移動)
tako file paste docs # 貼り付け(フォルダならその中・ファイルならそのフォルダ。省略時はカレントディレクトリ)
tako file clipboard # 中身と、ここへ貼ったときの貼り付け先を表示
tako file clipboard copy a.md b.md # まとめてコピー(ツリーの複数選択と同じ)
tako file paste --move docs # 移動として貼る(ツリーの ⌥⌘V。コピーしたものも移す)
tako file progress # 走っているコピーの進み具合(id・件数・バイト・残り時間の目安 eta_secs)
tako file cancel 3 # id 3 のコピーを取り消す(省略で全部。作りかけは消す)
tako file create src helper.ts # path 配下に name で作成
tako file mkdir src components
tako file trash old-notes.md # ゴミ箱へ移動(複数渡すとまとめて)

ファイルツリーに表示するフォルダを明示的に追加・削除します。AI が作業対象プロジェクトを提示するのに使います。

Terminal window
tako tree add ~/Documents/webapp
tako tree remove ~/Documents/webapp
tako tree list

git-status で、ファイルツリーに色とバッジで出ている git の状態をそのまま取得できます(画面と同じ分類)。

Terminal window
tako tree git-status # タブのワークスペースフォルダ全部
tako tree git-status ~/Documents/webapp # フォルダを 1 つに絞る
tako tree git-status --limit 50

応答の entries[] は 1 行ぶんの状態です。

  • state — modified / added / deleted / renamed / untracked / conflicted / ignored
  • staged / unstaged — git の XY(git status --short と同じ記号)。ステージ済みと未ステージを分けて持ちます
  • propagated — true ならディレクトリ行で、changed が配下の変更ファイル数です

selection で、ユーザーがファイルツリーで選んでいる行を読み、選び、キーと同じに動かせます(画面のキーと同じ処理を通ります)。

Terminal window
tako tree selection # いま選んでいる行(paths / lead / anchor)
tako tree selection src/main.rs # その行だけを選ぶ(開かない。ツリーに見えている行だけ)
tako tree selection --key down # ↓ を押したのと同じ
tako tree selection --key extend_bottom # ⇧⌘↓(Windows は Shift+Ctrl+End)と同じ = 末尾まで伸ばす

--key は up / down / left / right / enter / extend_up / extend_down / extend_top / extend_bottom です。応答の changed は選択・開閉・開いたかどうか、expanded はフォルダを開閉したとき、opened はファイルを開いたときに載ります。

プレビューペインで動画を開いているときの再生操作です。

Terminal window
tako video play --pane 4
tako video pause --pane 4
tako video toggle --pane 4
tako video seek 90 --pane 4 # 90 秒地点へ

URL をネイティブ Web ビューペイン(macOS = WKWebView)として開きます。ペイン内ではクリック・スクロール・文字入力を普通のブラウザ同様に行えます。hide でページを生かしたまま dock へ退避し、show で呼び戻せます。

Terminal window
tako web open http://localhost:5173 --right
tako web list # 一覧
tako web hide # dock へ退避(ページは生きたまま)
tako web show 3
tako web nav back # 戻る(forward / reload / URL も可)
tako web eval 'document.title' # JS 評価
tako web eval-result <token> # 評価結果の回収
tako web read # URL・タイトル・読み込み状態
tako web close

Code Runner。ファイル内の tako:run 宣言、プロジェクト既定(Cargo.toml / package.json / pyproject.toml / go.mod などを上へ辿り、そのルートで cargo run / npm run 等を走らせる)、または拡張子ごとの既定コマンドで、新しいペインを分割して実行します。プレビューヘッダの再生ボタンと同じ経路です。--list(--dry-run)はどのプロジェクトとして解決したか(project)も返します。.py はプロジェクトの .venv / uv / poetry / conda / pyenv を設定なしで使い、--list の runtime(選ばれた環境)と runtimes(候補)で確認できます。--list --refresh は uv などの場所や Python の版を調べ直します。Arduino のスケッチ(.ino)はスケッチのフォルダで arduino-cli compile を走らせ(--profile upload で書き込み)、arduino-cli は PATH に無ければ Arduino IDE に同梱のものを使います。基板が選ばれていない・フォルダ名と .ino の名前が違う・arduino-cli が無いときは、直し方の案内が実行ペインと --list の project.notes に出ます。

同じタブに同じファイル・同じプロファイルの実行ペインがあれば、分割せずにその位置で差し替えて走らせ直します(何度押してもペインは 1 枚のまま。前の実行がまだ走っていれば止めてから走らせ直し、応答の stopped_running が true になります)。別々に並べたいときだけ --new-pane を付けます(毎回並べたいファイルは tako run-config <file> --target new で覚えておけます)。終わると画面に「[tako] 終了コード N / Enter でこのペインを閉じます」が出て、ペインのタイトルバーに「完了」「失敗 (N)」のバッジが付きます(実行中は「実行中」)。同じ状態は tako list の各ペインの run(status / exit_code / outcome)でも読めます。

プレビューに保存していない編集があれば、走らせる前に保存します(再生ボタンと同じ。保存したペインは応答の saved_panes に載ります。読み取り専用などで保存できないときは走らせずにエラーを返します)。--auto-close success / always は --wait を付けなくても効き、終わった時点でペインを閉じます(閉じたあとも tako run-interactive-status <pane> で終了コードを読めます)。--wait は最長 600 秒待ち、超えると「まだ実行中」(応答の timed_out: true)を返して終了コード 124 で終わります(timeout コマンドと同じ値です。実行は止めません)。コマンド自身が失敗したときの終了コードは 1 なので、「失敗した」と「待ちきれなかった」を終了コードで見分けられます。上限は環境変数 TAKO_RUN_WAIT_TIMEOUT_SECS で変えられます(0 は既定の 600 秒)。--auto-close で閉じたペインは、ペインログ(tako logs show <ペイン ID>)のクローズの記録が close:auto になり、手で閉じたものと見分けられます。

Terminal window
tako run script.py # 実行(同じファイルの実行ペインがあれば差し替える)
tako run script.py --profile test # プロファイルを指定
tako run script.py --list # 使えるプロファイルと実行環境の一覧
tako run script.py --wait # 完了まで待って終了コードを返す(最長 600 秒。超えたら 124)
tako run script.py --auto-close success # 成功したらペインを閉じる
tako run script.py --new-pane # 差し替えずに新しいペインで走らせる
tako run-default # 拡張子ごとの既定コマンド一覧
tako run-default py "python3" # 既定を設定
tako run-default py --remove # 既定を削除
tako run-config script.py # 実行設定(選ばれる実行環境・候補・覚えた値)を見る
tako run-config script.py --runtime .venv # 実行環境を選んで覚える(既定でプロジェクト単位)
tako run-config script.py --profile test # プロファイルを選んで覚える(既定でこのファイルだけ)
tako run-config script.py --reset runtime # 自動選択へ戻す(--reset だけなら全項目)
tako run-config script.py --args "--verbose" # 引数を覚える(既定でこのファイルだけ)
tako run-config script.py --env APP_ENV=dev # 環境変数を覚える(--unset-env APP_ENV で消す)
tako run-config script.py --cwd .. --before "make build" # 作業ディレクトリと実行前コマンド
tako run-config script.py --target new # 毎回新しいペインで走らせる(reuse で同じペインへ戻す)

tako run-config で選んだ実行環境・プロファイルは、tako run と再生ボタンが自動で使います(--profile を付けた実行はそちらが優先)。覚える先は <data_dir>/run-configs.json で、中身がこのマシンのパスなので設定の共有(tako config)には載りません。--runtime には --list の runtimes の id、ディレクトリ名や版などの短い名前、interpreter のパスを渡せます。短い名前が複数の候補に当たる(例: 2 つの階層にある .venv)ときは選ばずに候補を並べて止まるので、id で選び直してください。覚えた環境を消した(.venv を作り直す前に消した等)ときは、別の Python へ黙って切り替えずにエラーで止まり、tako run-config <file> --reset runtime で自動選択へ戻せます。

引数(--args)は 1 本の文字列のままシェルへ渡るので、--args "--name 'a b'" のように書けます。コマンドに ${args} があればその位置へ、無ければ末尾へ入ります(cargo run に渡すなら --args "-- x")。環境変数(--env K=V)の値は書いたとおりに渡り、${fileDir} などの tako の変数だけが展開されます。作業ディレクトリ(--cwd)を移すと、python3 ${fileBase} のような既定のコマンドはファイルを絶対パスで指すので、移った先からでも走ります。実行前コマンド(--before)が失敗すると本体は走らず、実行ペインの終了コードはその失敗の値になります。

実行先(--target)は、再生ボタンと tako run を同じペインで走らせ直す(reuse。既定)か、毎回新しいペインに分割する(new)かです。一回だけ変えたいときは tako run --new-pane が覚えた値より優先されます。

ユーザーの入力が必要なコマンド(パスワードや対話ログインを伴うものなど)を、見えるペインへ委譲します。分割 → タイトル設定 → コマンド投入をまとめて行い、ペイン ID を返します。AI が「自分では答えられない対話」を人間に渡すための経路です。

Terminal window
tako run-interactive --help
tako run-interactive-status --help

バックグラウンド退避(たまり場)

Section titled “バックグラウンド退避(たまり場)”

tako background / foreground / backgrounded

Section titled “tako background / foreground / backgrounded”

「処理は動かしたまま、画面からだけ消す」操作です。詳しくはたまり場を参照してください。

Terminal window
tako background --pane 3 # 退避(プロセスは生きたまま)
tako backgrounded # 退避中ペインの一覧(JSON)
tako foreground 3 # 画面へ復帰(省略時は元いたタブへ)
tako foreground 3 --target 5 --direction down

作業ディレクトリの git リポジトリを操作します。GUI の git パネルと同じ経路です。詳しくは git 連携を参照してください。

Terminal window
tako git log # 履歴・ブランチ・変更状態(--max-count、既定 200)
tako git diff # 差分(既定は未ステージ)
tako git diff --target staged
tako git diff --target a1b2c3d
tako git show a1b2c3d # コミット詳細(メタ情報 + 変更ファイル一覧)
tako git show a1b2c3d --file src/main.rs # そのファイルの diff も含める
Terminal window
tako git stage src/main.rs # パス省略で全変更をステージ
tako git unstage src/main.rs # パス省略で全アンステージ
tako git commit -m "[修正] ログイン失敗を直す"
tako git push
tako git pull

破壊的になりうる操作は、既定では実行しません。「何が起きるか」を先に出し、--yes を付けたときだけ実行します。

Terminal window
# 切替: 未コミット変更があると、持ち越すもの / 衝突するものを出して止まる
tako git checkout main
tako git checkout main --yes
# 作成して切り替え
tako git branch fix/login
tako git branch fix/login --from main --no-checkout
# マージ: 作業ツリーに触れずにコンフリクトを事前予測して出す
tako git merge feature/x
tako git merge feature/x --yes --no-ff
Terminal window
tako git conflicts # 未解決ファイル・進行中の操作を JSON で
tako git abort # merge / rebase / cherry-pick / revert を中止
tako git resolve # 解消エージェントを同じタブに起動
tako git resolve --agent codex

tako git resolve は、リポジトリ・未解決ファイル・マージ元 / 先を含む解消プロンプトを自動で投入します。文面は <データディレクトリ>/orchestrator/conflict-resolver.md を置けば差し替えられます。

tako は tmux セッションの「見える化と片付け」もできます。詳しくは tmux バックエンドを参照してください。

Terminal window
tako tmux list # 全セッション一覧(tako のペインとの対応付き)
tako tmux cleanup # 取り残されたセッションの一括掃除
tako tmux kill --session my-session
tako tmux kill --session my-session --window 1
tako tmux open my-session --right # 外部セッションを現在のタブへ取り込む
tako tmux select-window 1 --pane 3
tako tmux resize --session my-session --cols 80 --rows 24
tako tmux resize --session my-session --reset

ペインが遡れる行数(スクロールバック保持上限)です。既定は 10,000 行で、範囲は 100〜100,000。

Terminal window
tako scrollback # 現在値・既定・下限・上限・適用中のペイン数・飽和時の見積り
tako scrollback 2000 # 2,000 行に下げる

履歴が飽和したペインは 行数 × 桁数 × 24 バイト を保持します(119 桁 10,000 行で約 29 MB / ペイン)。 下げるとその場で既存ペインの履歴も切り詰められるので、メモリはすぐ戻ります。

フォーカスの無いペイン(同じタブに並べた別のペイン・裏のタブのタイトルの変化)の出力で 画面を描き直す回数の上限です。既定は 30 fpsで、範囲は 1〜60。フォーカス中のペインは 常に 60 fps のままなので、打鍵の反応は変わりません。

Terminal window
tako redraw-limit # 現在値・既定・範囲と、起動からの再描画回数(フォーカス中 / それ以外)
tako redraw-limit 20 # 20 fps に下げる(開いているペインにもすぐ効く)

エージェントの出力を流しっぱなしにしているとき、tako 自身の CPU のほとんどはこの描き直しです。 下げるほど CPU が減り、見た目の滑らかさだけが落ちます。設定は settings.json に残り、 MCP では tako_scrollback の unfocused_fps が同じ操作です。

マウスを使う全画面のアプリ(既定の全画面の Claude Code・vim・htop など)へ、左クリックとドラッグを 渡すかどうかです。既定は ON で、そうしたアプリの上ではクリックがアプリへ届きます。 tako で文字を選んでコピーしたいときは Option(⌥)か Shift を押しながらドラッグします。 Cmd+クリック(Windows は Ctrl+クリック)のリンクは今までどおり tako が開きます。

Terminal window
tako mouse # 現在状態と、最後に押したクリックがどこへ行ったか(理由つき)
tako mouse off # 渡さない(常に tako の選択 = 以前の挙動)
tako mouse on

マウスを使わないシェルなどの上では、設定にかかわらず今までどおり tako の選択になります。 別のペインを選ぶためのクリック(フォーカスを移すだけのクリック)はアプリへ渡しません。 「クリックしても押せない」ときは tako mouse の last.reason を見ると理由が分かります。 設定は settings.json に残り、設定画面の「一般」タブにも同じスイッチがあります。MCP では tako_scrollback の mouse_forward が同じ操作です。

⌘V(Windows は Ctrl+V・Shift+Insert)やメニューの「貼り付け」で貼った文字に API キー・ パスワード・秘密鍵らしきものがあると、ペインへ送る前に「送る / やめる」を確かめます。 既定は ON で、claude・codex・素のシェル・SSH 先のどのペインでも同じように効きます。 やめた貼り付けはペインへ 1 文字も届きません。Enter と Esc は「やめる」側なので、貼り付けの直後に 送信のつもりで Enter を押しても鍵は送られません(送るときはボタンを押します)。

Terminal window
tako paste-guard # 現在状態・確認待ち(伏せ字の要約)・許可リスト・累計
tako paste-guard off # 確かめずに貼る(以前の挙動)
tako paste-guard warn # 止めずに送って警告だけ出す
tako paste-guard on # 送る前に確かめる(既定)
pbpaste | tako paste-guard check # 判定だけ試す(本文は標準入力から読む)
tako paste-guard send # 確認待ちの貼り付けを送る(cancel でやめる)
pbpaste | tako paste-guard allow # その値を許可リストへ(公開鍵・テスト用の鍵など)
tako paste-guard unallow <ID> # 許可リストから外す(ID は tako paste-guard の allow。all で全部)
tako paste-guard rule high_entropy off # 規則ごとに切る(名前は rule_names)

判定は「既知の形」(Anthropic・OpenAI・GitHub・AWS・Google・Slack などのキー、秘密鍵、JWT、 URL に埋め込んだパスワード)と、password=… / api_key: "…" のような代入の値、形の分からない ランダムな文字列の 3 段です。空白で区切られた普通の文章、git の SHA・UUID・URL・ファイルパス・ base64 の画像は当たりません。画面と応答に出すのは規則の名前と伏せ字(sk-ant-…ABCD のような 先頭と末尾の数文字)だけで、本文はログにも残しません。巨大な貼り付けは先頭 64 KB だけを確かめます。 check / allow に鍵を引数で渡すとシェルの履歴に残るので、標準入力から渡してください。 許可リストが持つのは値の指紋(SHA-256)と伏せ字だけで、値そのものは設定ファイルに書きません。 許可した値と別の鍵が 1 回の貼り付けに混ざっていれば、別の鍵だけで確かめます。

同じ確認は貼り付け以外の入力にも効きます。

  • Claude Code の入力欄(打ち込んだ・tako を通さずに貼った文字): tako mod が送信の直前に確かめ、 Claude Code の選択ダイアログで「やめる / 送る」を聞きます(warn ならトーストだけ)。 tako が流したプロンプトや、確認で「送る」を選んだ値は二度聞きません
  • スマホ(tako remote)からの入力: 送る前に確認シートが出ます(warn なら送って通知)
  • tako send / MCP tako_send_input(AI・スクリプトの送信): 確認には答えられないので止めずに送り、 応答の paste_guard に規則名と伏せ字を載せます

設定は settings.json に残り、設定画面の「一般」タブにも同じスイッチ(on / off)があります。MCP では tako_settings の action: "paste_guard"(enabled / mode / text / pane / respond / allow / unallow / rules)が同じ操作です。

タブ・ペインが大量に消えてしまったときの復旧です。tako を終了してから 適用します。

Terminal window
tako recover # layout.json とバックアップ世代の一覧
# ここで tako を終了する
tako recover --apply 1 # 世代 1〜3 を指定して復元
tako recover --apply good # 最後に復元へ成功した「良品」へ戻す
# tako を再起動する

バックアップより後に作ったタブも合流させます(復旧に使っているエージェントのタブまで消えないように。 tmux セッションの終わった master / worker のペインしか無いタブだけは外します)。合流したタブと、 合流しなかったタブとその理由は --apply の出力に並びます。再起動したとき、master / worker のペインで tmux セッションがもう無いもの (片付け済みの worker など)は開き直さずに外し、その数を tako persist の last_restore と restore_pruned に出します。自分で開いたペインは、閉じたときに終わっていても同じ作業フォルダの 新しいシェルで開き直します。

設定・データファイルの形式を確認します。普段は呼ぶ必要がありません: 形式が変わったときは tako setup の実行時と、GUI / master / CLI の起動時に自動で移行されます(tako は手動の移行作業を 要求しません)。

Terminal window
tako migrate # 全永続ファイルの形式を確認するだけ(何も書き換えない)
tako migrate run # 旧形式があればその場で移行する(冪等)
tako migrate run --schema profiles # 種別を 1 つに絞る

旧内容は <ファイル名>.pre-v<版数>.bak、解釈できなかった内容は <ファイル名>.unreadable.bak へ退避されるので消えません。そのあと別の中身でまた壊れたときは <ファイル名>.unreadable.2.bak から番号付きで順に積まれます(同じ中身は 1 本だけ。上限の本数を 超えたら、最初の 1 本を残して古いほうから詰めます)。応答の files[].state が unreadable のものは「設定が壊れているので既定値で動いている」という意味です。

files[].state が proposed のものは、あなたの判断が要るので自動では当てない案です (例: 個人ルール local-rules.md の「いつも読む部分」が上限を超えたので、区切りを どの見出しの前へ上げるか)。中身は files[].proposal に出ます。それでよければ tako migrate run で当たります(tako setup や起動時の自動移行では当たりません)。

設定が壊れて GUI が起動しないときの復旧手段なので、tako recover と同じく アプリが動いていなくても実行できます。

ペインが死んだ後でも出力を遡ったり、過去の会話を呼び戻したりできます。

Terminal window
tako logs list # ログファイル一覧
tako logs show 3 --lines 500 # 末尾を表示(クローズ済みペインも可)
tako logs status # ON/OFF・上限・保存先
tako logs set --enabled true --max-mb 5 --total-max-mb 200
tako sessions list # 会話カタログ(新しい順)
tako sessions list --role worker
tako sessions show <session-id> # メタ情報と会話冒頭
tako sessions resume <session-id> # 記録された cwd で復元(claude のみ)
tako usage # ログインごとの 5h / 7d と、今の 7d の窓のプロジェクトの上位(7d / 5h の % つき)
tako usage --by issue # Issue ごと(ほかに task-type / session / model / account / day / role)
tako usage --window 5h # 期間(ほかに day / week / month / all)
tako usage --project tako --by issue # そのプロジェクトの Issue ごと
tako usage --issue 2203 --by session # その Issue の会話ごと(Issue なしは --issue none)
tako usage --show # 同じ内容を右パネルの usage ビューでも開く

tako usage は claude の会話記録から使用量のメタデータだけ(トークン数・モデル・時刻)を読んで索引を作り、 トークン(入力・出力・キャッシュの作成と読み出し)・API 換算の金額・会話数を出します。API 換算はモデル別の単価で 計算した目安で、サブスクリプションの請求額ではありません。会話の本文は読みません。初回は会話記録を全部読むので 数十秒かかります(次からは増えた分だけ)。

段の行の左の 2 列は、利用制限の % のうちその段が使った分です。tako mod が観測した 5h / 7d の % の増え方を、 観測と観測の間にどの段がどれだけ使ったか(API 換算の比)で配るので、段の合計 + 「tako の外」は観測した % と一致します。既定(今の 7d の窓)と --window 5h では、それぞれの枠の今の窓の %、day / week / month / all では期間に重なる窓の延べ(窓をまたぐと 100% を超えることがあります)です。

  • tako の外 — 観測の間にこの PC の会話記録の使用が無いのに % が増えた分(claude.ai・別の PC など)
  • + の付いた値(推定) — 最後の観測より後や、観測の無い窓の使用量を、直近 7 日の「1% あたりの API 換算」で 割った目安です。観測が無いログイン(tako mod の報告が無い)は % を出しません

同じものは画面でも見られます。ステータスバーの 5h / 7d のメーターを押すと、右パネルの usage ビューがその期間で 開きます(mod が Claude Code の画面にバーを描いていてメーターが出ていないときは、サービス名を押したメニューの 「利用制限の使い道を開く」から)。表示メニューの「パネル」→「usage ビュー」からも開けます。行を押すと 「プロジェクト → Issue → 会話」と掘り下げられ、上のパンくずを押すと戻れます。数値は tako usage と同じ計算・ 同じ書式です。いま画面に出ている段は tako usage の --by / --project / --issue に 1:1 で対応し、--show を付けるとその段を画面で開けます(--project の project:<キー> / profile:<名前> / none は、同じ名前のプロジェクトとプロファイル・未分類を分けて選ぶ書き方です)。

codex を使っていれば、codex のログインも同じ形で並びます(見出しに codex・ が付きます)。codex が PC に残す rollout(~/.codex/sessions/)から、トークン数の累積と利用制限の % を過去の分まで読むので、tako mod の 観測を待たずに過去の窓の % も配れます。codex のモデルは API 換算の単価表に無いので、API 換算は出ず、% は トークン数の比で配ります。rollout はどのアカウントで使ったかを持たないので、過去の分も今 codex login している アカウントへまとめます。codex の % には推定(+)は付きません(使用量と % が同じ記録に載るため)。

Terminal window
# 右サイドバーの情報パネル(--view の値は GUI のタブ表示名と同じ)
tako panel --show --view fleet # fleet = 全ペイン + tmux セッション
tako panel --view orch # orch = master + ワーカーツリー
tako panel --view git # git = ブランチ・変更・履歴・diff
tako panel --view tasks # tasks = 人がやること(承認・レビュー・投稿)
tako panel --view diagnostics # diagnostics = 言語サーバの診断(LSP の文書があるときだけタブが出る)
tako panel --view references # references = 参照・呼び出し階層・型階層の結果(ふだんは結果があるときだけタブが出る)
tako panel --view search # search = ワークスペース横断検索(⇧⌘F と同じ。ふだんは結果があるときだけタブが出る)
tako panel --view usage # usage = 利用制限の使い道(ステータスバーの 5h / 7d と同じ。ふだんは開いたときだけタブが出る)
tako panel --hide
tako panel --filetree on # 左のファイルツリー
tako panel --width 360
tako panel --show-hidden on # ツリーにドット項目も並べる(既定 off)
# プレビューのピン留め(フローティングウィンドウ化)
tako pin --pane 3 on
tako pin --pane 3 off
# セッション永続化(tmux バックエンド)
tako persist # 現在状態
tako persist on
tako persist off
# ポート検知(「プレビューを開く?」チップ)
tako portdetect on
tako portdetect off
# タブ・ペイン名の AI 自動リネーム
tako autorename on
tako autorename off
# 閉じる確認ダイアログ(エージェント・実行中プロセスのあるペインのみ確認)
tako confirm-close on
tako confirm-close off
# ステータスバーの利用制限表示をどのサービスにするか
tako limit-service # 現在値
tako limit-service codex

かんたん表示(GUI モード)とターミナル表示を切り替えます。既定は terminal(従来どおりの表示)です。詳しくはかんたん表示(GUI モード)を参照してください。

Terminal window
tako ui-mode # 現在のモードと、各ペインに出ている表示種別
tako ui-mode gui # かんたん表示へ
tako ui-mode terminal # ターミナル表示へ
tako ui-mode toggle
tako ui-mode release --pane 3 # そのペインだけターミナル表示に戻す(揮発)
tako ui-mode restore --pane 3 # 戻した指定を解除する

応答の pane_display が、いま各ペインに出ているもの(terminal / starter / chat / preparing)を返します。AI はこれを見てから案内できます。

tako mod がチャット風の描画を受け持つペイン(tako mod ui set chat.place mod)は terminal になり、pane_display_reason の reason が mod_chat です(Claude Code の画面そのものを出しています)。

かんたん表示の会話本文をクリップボードへコピーします。UI のコピーボタンと同じ経路です。

Terminal window
tako chat copy # 最後の AI 発話(画面と同じプレーンテキスト)
tako chat copy --list # 添字・role・文字数・コードブロック数の下見
tako chat copy --message 3 # 添字 3 の発話(0 始まり)
tako chat copy --message 3 --code 0 # その発話の 1 つ目のコードブロックだけ(0 始まり)
tako chat copy --markdown # Markdown ソースのまま

ターミナル領域を縮めて作った専用の帯に、コピー・実行ボタンつきのコマンドカードを出します。AI が会話本文に書いたコマンドは折り返しでコピーが壊れるため、実行を頼むコマンドはこれで提示します(カードは永続化されません)。

Claude Code のペインで tako mod が動いているときは、カードを Claude Code の画面の中(会話の行と入力欄の上の帯)に出し、ペイン下の帯は作りません(画面が縮まない)。会話の行のカードの [ run ] をクリック 1 回で新しいペインで実行し、[ copy ] でコピーします(同じコマンドを続けて押しても 2 本は走りません)。キーで押すなら、帯の card N の横の y: copy / r: run を ctrl+x → Tab でフォーカスしてから押します。クリックを渡していない(tako mouse off)・main screen の claude では会話の行にボタンを置かず、帯のキーで押します。どちらに出ているかは tako show-command --list の各カードの owner.drawn_by(mod / tako)で分かり、ペイン下の帯へ戻すなら tako mod ui set cards.place tako です。

Terminal window
tako show-command "cargo test --workspace" --label "テストを流す"
tako show-command --list # 出ているカードの一覧
tako show-command --copy --index 1 # コマンド番号は 1 始まり
tako show-command --run --index 1 # 新しいペインで実行する(既定はフォーカスを移さない)
tako show-command --dismiss
Terminal window
tako theme # 現在のテーマを表示
tako theme dark
tako theme light
tako theme toggle
tako theme colors # 色キーの一覧と現在値
tako theme colors --target light # ライトの色(いまのテーマに依らない)
tako theme preset save mytheme # 現在の配色をプリセットとして保存

tako theme --help に色キー・プリセット・フォント指定の全オプションが出ます。

settings.json の色の上書きに読めない値(#赤色 など)があると、その色だけ既定へ戻して使います。そのあいだは tako theme(dark / light / toggle も)の応答に warnings が載り、無視した色と理由が "accent: 不正な色値: …" の形で並びます。persist.log に残る行と同じ内容です。tako theme colors では、その色の source が ignored(既定の色を使っている)になり、同じ形の warnings も載ります。上書きの無い色は builtin、効いている上書きは override です。

tako theme colors --target <dark|light|プリセット名> は、いまのテーマに依らず、そのテーマの色と出どころ・warnings を返します(応答の theme もそのテーマの名前)。ダークで使いながらライトの配色を確かめる、といった使い方ができます。知らない名前はエラーになります。

色の上書きを書く tako theme color <キー> <値> --target <名前>・tako theme color <キー> --reset --target <名前>・tako theme reset-colors --target <名前> も同じ名前を受け取ります。知らない名前は何も書かずにエラーになるので、打ち間違えた名前でいまのテーマの色が書き換わることはありません。

Terminal window
tako lang # 現在の表示言語
tako lang en # 英語
tako lang ja # 日本語
tako lang system # OS のロケールに追従

設定画面(独立ウィンドウ)を開きます。Cmd+, と同じです。一般・外観・Code Runner・プロファイル・セットアップ・スリープ防止・リモート・高度の 8 タブがあります。

Terminal window
tako settings
tako settings --tab appearance

--tab は英語スラッグ(general / appearance / runner / profiles / setup / sleep / remote / advanced)だけを受け付けます。日本語のタブ名を渡すと一般タブが開きます。

tako 内の zsh に出る入力予測(履歴ベースのゴーストテキスト)です。既定は ON。tako が開いたシェルの中だけで効き、~/.zshrc は書き換えません。確定は → または Tab です。

Terminal window
tako autosuggest # 現在状態
tako autosuggest off # 予測そのものを止める
tako autosuggest on
tako autosuggest tab off # Tab での確定だけ無効化(→ キーは残る。既定 ON)
tako autosuggest hint off # 確定キーの案内を今すぐ止める(既定は 10 回で自動終了)

エージェントのペインを会話を失わずに建て直します。ペインを右クリックしても 同じ 2 つを選べます。引数なしで実行すると「いま何ができるか」だけを返し、何も起こしません。

Terminal window
tako session-restart # 下見(できること + できない理由)
tako session-restart --mode harness # 会話を保ったまま CLI を建て直す
tako session-restart --mode handoff # 引き継ぎを書かせて交代(master のみ)
tako session-restart --mode harness --pane 12 # 別のペインを指定

--mode harness はエージェント CLI のプロセスだけを終わらせ、落ちたことを確かめてから claude --resume <会話 ID> を投入します。会話はそのまま続き、アカウント・モデル・ 思考の深さも元のまま戻ります。claude を自動更新したのに古い版のまま動いているペイン (ヘッダに「claude X が利用可能です」が出ているもの)を、会話を捨てずに新しい版へ 載せ替えるための操作です。

--mode handoff は master ペイン専用で、引き継ぎファイルを書き直してから後任へ交代させます (コンテキストの使用率が高くなったときに tako が自動でやることを、任意のタイミングで 起こせるようにしたものです)。

利用上限(5 時間制限・週次制限)でエージェントが止まったとき、リセット時刻を過ぎたら tako が作業を再開させます。ペイン単位のオプトインで、既定は OFF。 ペインを右クリックしても同じ設定を切り替えられます。

Terminal window
tako limit-resume # 今のペインの状態
tako limit-resume on # 有効にする
tako limit-resume off
tako limit-resume on --pane 12 # 別のペインを指定
tako limit-resume --all # 全ペインの状態を一覧

発動するのは上限で止まったときだけです。上限の対処ダイアログが出ていれば 「解除まで待つ」相当の選択肢をラベルで選び(Upgrade … や Continue with usage credits のような課金・モデル変更を伴う選択肢は選びません)、 ダイアログが無ければ継続を促すメッセージを送ります。

初回起動時にタブバー直下へ出る案内バナーと、初回起動の導線(自動の初期設定 → 次にやること)の操作です。

Terminal window
tako welcome # 表示状態と次にやること(onboarding.step.command が打つべき 1 行)
tako welcome next # 次にやることを進める(バナーのボタンと同じ。入れる・ログインは新しいタブで実行)
tako welcome auto # 自動の初期設定をもう一度(インターネットからの導入はしない)
tako welcome show # もう一度出す
tako welcome hide # その回だけ閉じる
tako welcome dismiss # 以後出さない
Terminal window
tako open-in dir ~/Documents/webapp # 新タブで開く(ファイルツリーにも追加)
tako open-in repo ~/Documents/webapp # git root を自動検出して開く
tako open-in remote myserver # SSH 接続(いまのタブに新ペイン)
tako recent # 最近開いた項目
tako ssh-hosts # ~/.ssh/config の Host 一覧

一覧は Include の取り込み先(Include config.d/* のような相対パスは ~/.ssh/ 起点・glob 対応)まで 辿るので、ssh で繋げるホストが一覧から漏れません。Host web1 web2 のように 1 行へ複数書いた場合は 両方が別のエントリとして並びます。Match ブロックの中の設定(Match host bastion 配下の User / Port など)は、その直前の Host には付きません(ssh 自身と同じ扱い)。ワイルドカード (* / ?)や否定(!host)のパターンは繋ぎ先が決まらないので一覧に出ません。

SSH の開き先は --target で選べます(省略時 split)。

Terminal window
tako open-in remote myserver # いまのタブに新ペイン(既定)
tako open-in remote myserver --target tab # 新しいタブ
tako open-in remote myserver --target pane # いまのペイン自体を SSH にする
tako open-in remote myserver --target pane --pane 3 # ペイン 3 を SSH にする
tako open-in remote myserver --remote-dir /srv/app # 接続後にそのフォルダへ cd

--target pane は ペインを増やさずそのペイン自体を SSH セッションにします(ペイン ID は 変わりません)。素のシェルのペインだけが対象で、全画面 TUI が動いている・コマンド実行中・ AI エージェントのペイン・プレビューは理由と次の一手つきで断られます。接続に失敗しても そのペインのシェルのプロンプトへ戻るので、やり直しはその場でできます。

GUI では **ペインの右クリック →「このペインでリモート接続…」**が同じ操作です (ファイルメニューの「リモート接続…」は新しいペインを作る側)。

スマホなど外部デバイスから tako の画面を見る・操作するための機能です。仕組みと安全性の詳細はリモートアクセスを参照してください。

transport は Tailscale Serve のみです。あなたの tailnet 内限定の恒久固定 URL https://<ホスト名>.<tailnet>.ts.net で公開され、通信は WireGuard でエンドツーエンド暗号化されます。URL は public internet には存在しません。

Terminal window
# 初回だけ: 対話ウィザード(Tailscale 導入 → ログイン → HTTPS → serve 設定 → QR 生成)
tako remote setup
tako remote setup --yes
# 起動・停止・状態
tako remote start
tako remote status # 恒久固定 URL・登録端末数(secret は含まれない)
tako remote stop
# ペアリング済み端末の一覧・失効(失効すると接続中の端末は即座に切断)
tako remote devices list
tako remote devices revoke <device-id>
# 中身を覗く
tako remote agents # 動作中の AI エージェント一覧
tako remote messages <session-id> --tail 30 # 会話ログ末尾
tako remote scrollback <pane-id> --lines 1000

SSH 先のフォルダをワークスペースとして開くのは別コマンド(tako remote-folder)です。ファイルツリーにリモートのディレクトリが並び、ファイルはプレビューで開いて編集・保存できます。認証は ~/.ssh/config・鍵・ControlMaster をそのまま使うので追加設定は要りません。

Terminal window
tako remote-folder open myhost # リモートのホームをツリーへ(SSH 済みのターミナルも用意される)
tako remote-folder open myhost /srv/app # パス指定
tako remote-folder open myhost --no-terminal # ツリーへ開くだけ
tako remote-folder list # 開いているリモートフォルダ
tako remote-folder ls myhost /srv # ツリーを開かずに覗く
tako remote-folder close myhost # 閉じる(省略で全ホスト)

Tailscale が未セットアップの場合、tako remote start は不足項目を列挙して tako remote setup を案内します。ステータスバーのリモートチップからも同じ起動ができます。

複数の AI エージェントを親子で連携させる機能です。考え方はオーケストレーションとは、使い方は tako master 実践ガイドを参照してください。

このうち、日常であなたが打つのは tako master(または tako solo)だけです。それ以外の tako orchestrator 系コマンドは、通常は master(AI)自身が内部で実行するもので、手動操作やスクリプトからの自動化用に公開されています。

司令塔となる AI を起動します。以後はこの master に自然言語で作業を依頼するだけで、子 worker の起動・監視・検収・回収が自動で回ります。

既定では今いるペインでそのまま起動します(新しいタブは作りません)。

Terminal window
tako master # default プロファイル、今のペインで
tako master --tab # 新しいタブを作って起動
tako master -fast # プロファイル指定(profiles/fast.yaml)
tako master dev # 旧形式のサフィックス指定(-dev と同じ)

タブには担当プロジェクトの名前が付きます(tako / my-site など)。その後は master が作業の主題に合わせて付け直します(1 つのリポジトリで複数の授業を扱うなら科目名)。あなたが手で付けたタブ名は上書きしません。

worker を使わず、AI と 1 対 1 で作業するモードです。worker の spawn をあえて禁止し、その AI 自身が手を動かします。既定の思考量は high で、Pro プランでも運用しやすい設計です。master と同じプロファイル引数が使えます。

Terminal window
tako solo
tako solo --tab
tako solo -fast

タブには作業しているフォルダのリポジトリ名が付きます(my-app など)。その後は solo が作業内容に合わせて付け直します。あなたが手で付けたタブ名は上書きしません。--tab で作る新しいタブは、コマンドを打ったフォルダで開きます。

master が作業対象にできるプロジェクトの登録・管理です。通常は master に「◯◯のリポジトリを追加して」と頼むだけで済みます。登録内容は ~/Library/Application Support/tako/orchestrator/projects.yaml に保存されます。

Terminal window
tako orchestrator projects list
tako orchestrator projects add --key webapp --cwd ~/Documents/webapp --description "Web アプリ"
tako orchestrator projects remove --key webapp

add はそのプロジェクト専用のプロファイル(profiles/webapp.yaml)も同時に作ります。中身は default を引き継ぎ、管轄(projects)と起動フォルダ(cwd)だけがそのプロジェクトのものに なります。既にあるプロファイルには触りません。登録済みのプロジェクトは tako setup や次回の アプリ起動でまとめて揃います。

worker は tako の MCP だけを持って起動します。 あなたが Claude Code に登録した MCP サーバー (user scope。playwright や github など)は、worker 1 本ごとに数百 MB を使うので持ち込みません。 codex の worker も同じで、~/.codex/config.toml に登録した MCP は持ち込みません。 そのリポジトリの .mcp.json(codex は .codex/config.toml)に書いた MCP は今までどおり使えます。worker にも使わせたい MCP は プロジェクトごとに足します。

Terminal window
tako orchestrator projects mcp webapp # 今の設定と、持ち込む / 止める MCP を見る(codex の分も)
tako orchestrator projects mcp webapp add playwright # このプロジェクトの worker に持ち込む
tako orchestrator projects mcp webapp remove playwright

更新した直後は、直近 30 日の Claude Code の会話で実際に使っていた MCP が各プロジェクトに自動で足されています。

素の tako master で始めた会話を、その場でプロジェクト専用 master に切り替えます。 セッションは立て直さないので、会話もコンテキストもそのまま残ります(トークンを使い直しません)。

master は対象プロジェクトを見つけた時点でこれを自分で呼ぶので、通常ユーザーが打つことはありません。

Terminal window
tako orchestrator adopt webapp # プロファイル名 / プロジェクトキーのどちらでもよい
tako orchestrator adopt default # 汎用(どのプロジェクトにも属さない状態)へ戻す

切り替わるのは tako 側の状態です。

切り替わるもの中身
ペインの役割ラベルorchestrator-master:<key> になり、画面でも見分けがつく
tako orchestrator selfprofile / 引き継ぎファイルの宛先 / 管轄プロジェクトがそのプロファイルの値になる
worker の既定以後 spawn する worker がそのプロファイルのモデル・思考量・エージェントで立つ
引き継ぎtako orchestrator handoff と自動ハンドオフが tako master -<key> で後任を立てる

プロファイルがまだ無いプロジェクトキーを渡すと、その場で default から引き継いで作ります (tako orchestrator projects add の時点でも作られます)。

master・worker が使うモデルや思考量(effort)の設定です。

Terminal window
tako orchestrator profiles list
tako orchestrator profiles show
tako orchestrator profiles set default --model claude-opus-4-6 --effort max
tako orchestrator profiles set default --clear-model # claude 既定モデルに戻す
tako orchestrator profiles set sol --master-agent codex --model gpt-5.6-sol --effort xhigh
tako orchestrator profiles set default --ctx-threshold 55 # 自動ハンドオフの閾値(50〜60)
tako orchestrator profiles set takodev --cwd ~/dev/tako # master をこのフォルダで起動する
set の主なオプション説明
--master-agent / --clear-master-agentmaster のエージェント CLI(claude / codex。agy は master 非対応)
--model / --clear-modelmaster のモデル指定 / 解除
--effortmaster の思考量
--worker-model / --clear-worker-model子 worker 用の固定モデル / 解除
--worker-effort子 worker の思考量
--worker-agent / --clear-worker-agentworker の既定エージェント CLI(claude / codex / agy)
--worker-model-policyinherit / fixed / delegate
--cwd / --clear-cwdmaster・solo を起動するフォルダ / 解除(絶対パスか ~/ 始まり。存在しないパスはエラー)
--ctx-threshold / --clear-ctx-threshold自動ハンドオフを始めるコンテキスト使用率(%。50〜60。既定 60)
--auto-handoff閾値を超えたら tako が引き継ぎを促すか(既定 true)

--cwd を設定すると、引き継ぎ(tako orchestrator handoff)で立つ後任 master もそのフォルダで起動します。未設定なら前任 master と同じフォルダを引き継ぎます(フックや direnv のようにフォルダに依存する設定が後任だけ効かなくなるのを防ぐため)。引き継ぎの応答には実際に使ったフォルダ(cwd)と決め手(cwd_source)が載ります。

master のエージェント CLI を codex にすると、tako master -<プロファイル名> で codex が tako の MCP ツールに接続された状態で立ち上がります。master が claude 以外のとき、プロファイルの model / effort は claude worker へ継承されません。

worker ごとに別アカウントを使い分けるためのレジストリです。既定の資格情報をそのまま使うアカウントは --inherit で登録します(既定パスを明示指定すると警告が出ます)。

Terminal window
tako orchestrator accounts list
tako orchestrator accounts show work
tako orchestrator accounts add work --inherit
tako orchestrator accounts remove work

子 worker をペインに起動し、プロンプトを渡します。

Terminal window
tako orchestrator spawn --project webapp --prompt "ログインページを実装して" --label login
tako orchestrator spawn --project webapp --prompt "..." --account work
tako orchestrator run --project webapp --prompt "テストを実行して失敗があれば直して"
spawn のオプション必須説明
--project○プロジェクトキー(登録済みのもの)
--prompt○worker に渡す初期プロンプト
--labelペインタイトルに付けるラベル
--accountこの worker だけ別アカウントで動かす
--model / --effortモデル・思考量(省略時はプロファイル設定)
--pane / --tabworker ペインをどこに出すか

run は spawn して run_id を返す非同期実行です。進捗と結果は次で回収します。

Terminal window
tako orchestrator run-status # 全 run の一覧
tako orchestrator run-status <run_id>
tako orchestrator run-result <run_id>
run のオプション説明
--timeout <秒>完了待ちの上限(既定 1800 秒)
--auto-close <true|false>完了後にペインを自動で閉じるか(既定 true)
--output-lines <N>回収する出力の末尾行数(既定 200)

worker の状態確認・完了待ち・報告取得です。

Terminal window
tako orchestrator status --pane 5
tako orchestrator watch --pane 5 # 完了までブロック
tako orchestrator watch --worker <ID> # ペインが消えても追跡できる
tako orchestrator watch --pane 5 --timeout 600
tako orchestrator report --pane 5 --lines 2000
tako orchestrator report --pane 5 --messages 3 # 直近の発話だけ

watch は WORKER_IDLE(完了)/ WORKER_ERROR(異常停止)/ WORKER_GONE(消滅)などを 1 行で出力します。status はエラー時に種別(api_error / usage_limit など)と推奨アクションも返します。

自動ハンドオフ(コンテキストが埋まる前に master を交代させる)

Section titled “自動ハンドオフ(コンテキストが埋まる前に master を交代させる)”

master のコンテキスト使用率が閾値(既定 60%)を超えると、tako が master へ引き継ぎ開始を指示します。master は引き継ぎファイルを最新化して handoff を呼び、後任 master が引き継ぎ内容と実態を確認してから前任のペインを閉じます(後任の起動に失敗しても前任は残ります)。ユーザーの操作は要りません。

閾値は 50〜60% の範囲でプロファイルごとに変えられます。自動で促されるのが煩わしい場合は通知だけ切れます(handoff の手動実行は使えます)。

Terminal window
tako orchestrator profiles set default --ctx-threshold 55
tako orchestrator profiles set default --auto-handoff false

引き継ぎファイルは 2 つの節に分かれます。知識(マシン非依存) には決定事項・方針・残タスクの意図を、実行状態(このマシン限定) には worker とそのペイン番号や実行中のものを書きます。ペイン番号はそのパソコンでしか意味を持たないので、設定を別のパソコンと共有したとき(tako config)に知識だけが役に立つ形にしておくためです。節分けの無い古い引き継ぎファイルもそのまま読めます(後任には「番号は実際の画面で確認するように」が伝わり、次に更新されるときに 2 節へ書き直されます)。

引き継ぎはプロジェクトごとに 1 ファイル(handoff/projects/<プロジェクトキー>.md)です。交代のときに渡るのは、その master が担当しているプロジェクトの分だけなので、同じプロファイルを別のミッションで使っている master の話が混ざりません。プロジェクトに紐付かない運用知識だけを handoff/<プロファイル>.md(プロファイル運用メモ)に置きます。

古い形式(プロファイル単位の 1 ファイル)は自動で移行されます。 tako setup を実行したときと、master が引き継ぎを読むときの 2 か所で移行がかかり、何度実行しても壊れません。移行前のファイルは消さずに handoff/archive/ へ退避します。手で分割する作業は要りません。

tako orchestrator workers / respond / self / handoff / handoffs

Section titled “tako orchestrator workers / respond / self / handoff / handoffs”
Terminal window
tako orchestrator workers # spawn 済み worker の一覧(ペインの生死と無関係)
tako orchestrator workers --all
tako orchestrator respond --pane 5 # 権限確認ダイアログへ応答(不在時はエラー)
tako orchestrator self # master/solo が自分の pane・tab・コンテキスト残量と引き継ぎ閾値を知る
tako orchestrator handoff # master のバトンを新しい master へ渡す
tako orchestrator handoff --projects tako,hero-cpp # 渡すプロジェクトを明示する
tako orchestrator handoffs list # 引き継ぎファイルの一覧(行数・書式・肥大警告)
tako orchestrator handoffs show --project tako # 1 件を読む
tako orchestrator handoffs write --project tako --content "..." # 1 件を書く(標準入力も可)
tako orchestrator handoffs migrate # 古い形式を移行する(通常は自動で走る)
tako orchestrator layout --policy master-reserved --master-ratio 0.5
tako orchestrator supervisor # worker 自動復旧 supervisor の操作
tako orchestrator ledger # 委任台帳の操作

タスクのチェックポイントと受け入れゲート(完了条件)です。クラッシュや利用上限からの再開に使います。

Terminal window
tako task checkpoint <task_id> # チェックポイントを記録・更新
tako task list
tako task resume <task_id> # チェックポイントから worker を再開
tako task update <task_id> # フェーズを手動で変更
# 受け入れゲート: 「これが通ったら完了」を機械で判定する
tako task gate set <task_id> --command "cargo test" --pr-merged 620
tako task gate check <task_id>
tako task gate show <task_id>

ユーザー(人)がやることの一覧です。AI の承認待ち・生成物のレビュー・権限の確認・宣伝投稿のようにあなたの手が要るものを tako が溜めて促します。tako task(AI 自身のタスク)とは別物です。

返答(respond)は起票した master の入力欄へ届きます。master が閉じていれば、同じプロファイルの master を新しいタブで起動して初回メッセージとして渡します。配送の結果は tako todo show の 配送: 行で読めます。

同じことは PC の画面からもできます(右パネルの tasks ビュー = tako panel --show --view tasks)。一覧・詳細・返答フォーム・配送状態が 1 枚に並びます。詳しくは 人がやること(ユーザータスク)を参照してください。

Terminal window
tako todo # (サブコマンド一覧)
tako todo list # 未完了の一覧 + 件数
tako todo list --all --json # 完了・却下も含めて機械可読で
tako todo show u-1 # 本文・添付・返答・配送状態
# 起票(ふつうは master / worker が MCP から行う)
tako todo add "解説動画 v6 を YouTube へ投稿" \
--kind post \
--body "サムネは docs/thumb.png。タイトルと説明は copy-text から貼れます" \
--attach out/v6.mp4 \
--copy-text "タイトル=tako v0.9 の解説" \
--copy-text "説明=AI エージェントを 1 画面で監視する OSS ターミナル" \
--link https://github.com/takushio2525/tako
# 返答する(起票した master へ届く)
tako todo respond u-1 --decision needs_change --comment "サムネの文字を大きく"
tako todo respond u-1 --decision approve
tako todo done u-1 # 片付いた
tako todo dismiss u-1 # やらない
# 画面を動かす(AI が「これを見てください」と言うとき)
tako todo expand u-1 # 右パネルの tasks ビューでその 1 件を開く
tako todo collapse # 開いているものを閉じる

expand は右パネルが閉じていれば開いて tasks ビューへ切り替え、その行の中身をその場に展開します(開くのは常に 1 件)。無い id を渡すとエラーになり、画面は動きません。いまどれが開いているかは tako todo list --json の expanded(画面が無ければ null)で読めます。

判断意味タスクの状態
approve承認したdone(閉じる)
reject却下したdismissed(閉じる)
needs_change直してほしいopen のまま(AI の作業が続く)
answered質問に答えたopen のまま

エージェント共通ルールを、各 CLI のグローバル指示ファイルへマーカーブロックで同期します。ブロックの外は書き換えません。

Terminal window
tako agents status
tako agents sync-rules

AI 系の設定を git リポジトリ 1 本でデバイス間共有します(任意機能)。claude のグローバル指示(CLAUDE.md / snippets / commands / templates)と tako の宣言的設定(profiles / projects / accounts / local-rules / settings)が対象です。

Terminal window
tako config # 配線状態と push / pull 待ちの差分
tako config list # 何を共有し何を共有しないかの分類表
# はじめる(どちらか)
tako config init # 新しく作る(~/tako-config-sync)
tako config init --remote [email protected]:you/tako-config.git
tako config link [email protected]:you/tako-config.git # 2 台目: clone して配線
tako config link ~/dotfiles/tako # 既存リポジトリに繋ぐ
# 同期
tako config push -m "[改善] プロジェクトを追加"
tako config pull
tako config unlink # 配線を外す(リポジトリは残る)

秘匿情報とマシン固有の状態は、除外リストではなくホワイトリストで構造的に外れます。カタログに載っていないファイルは共有されません。

共有される共有されない
CLAUDE.md / snippets / commands / templates.claude.json / credentials / 会話履歴
profiles / projects / accounts の宣言部 / local-rulestoken / control.json / layout.json / sessions.yaml / workers.yaml / ペインログ
settings.json(表示設定)アカウントの config_dir、profile の env、「バナーを閉じた」等の操作履歴

設定内の絶対パスは、ホーム配下なら ~/… に正規化して保存され、取り込み時にそのデバイスのホームへ戻ります。mac と Windows でホームの位置が違っても同じリポジトリを使えます。

tako setup は質問を増やしません。完了サマリと tako setup --check に現在の状態(未配線 / 配線済み / 既に dotfiles などの git で管理されている)と次の一手が出るだけです。配線済みなら状態が 1 行出るだけで、設定を勧める案内は出ません。

設定したいときは、tako setup の最後に起動する対話アシスタントへ「別の PC でも同じ設定を使いたい」と頼めば、リポジトリの用意から配線まで代行してもらえます。

  • 既に ~/.claude を dotfiles リポジトリで管理している場合は、二重管理にならないようそのリポジトリへの相乗り(tako config link <リポジトリ>)を先に提案します。別のリポジトリを新しく作ると、同じ CLAUDE.md が 2 か所で管理され、tako config pull の書き込みが symlink を実ファイルへ置き換えて既存の配線を壊すことがあります
  • 何も無い場合は、gh にログイン済みならプライベートリポジトリの作成から配線まで代行できます。リポジトリの作成と push は必ず同意を取ってから行われ、tako setup --yes や非対話実行では一切起こりません

この環境でどの機能が使えるか / 縮退しているか / 未実装かを表示します。GUI 不要のローカル処理です。

Terminal window
tako platform # 現在の環境の対応状況
tako platform --platform windows # Windows 側の状況を macOS から確認
tako platform --status pending # 未実装のものだけ
tako platform --json

エージェント系統(claude / codex / agy / ローカル LLM)ごとに、どの機能が claude 同等に使えるか・縮退しているか・まだ使えないかを表示します。worker を codex / agy で立てる前と、その worker が期待どおり動かないときに引くコマンドです。

Terminal window
tako agent-support # 全系統ぶんの表
tako agent-support --agent codex # 系統を 1 つに絞る
tako agent-support --status unsupported # 上流の CLI に手段が無いものだけ
tako agent-support --json
Terminal window
tako fda status # フルディスクアクセスの付与状況
tako fda open # システム設定を開く
tako sleep-guard status
tako sleep-guard set --mode while-agents-running --power-condition ac-only
tako sleep-guard install-lid-sleep # 蓋を閉じても動かし続ける(初回登録)
tako sleep-guard set --lid-power-condition always # バッテリー駆動でも継続する(既定は AC のみ)
tako sleep-guard set --lid-battery-floor 30 # 残量の下限(既定 20%。ここまで下がると自動解除)
tako telemetry status # エラーレポート自動送信(既定 OFF)
tako telemetry on
tako telemetry off
tako stale-binary # 稼働中セッションの claude バイナリの鮮度確認・張り直し
tako check-health # 環境の健全性診断(`tako setup --check` と同じ項目)
tako check-health --json # 生の JSON(`diagnostics` に項目・状態・残り作業、`fd_limit` に fd の使用数と上限、`fd_limit.container` に器の tmux サーバーの使用数と上限が入る)
tako queue # PC のメモリ(使用・圧縮・空き)・swap・メモリ圧・CPU% と、重い処理がどのペインで動いているか
# (順番待ちの実行中・待ち・上限・待ちごとの理由も。メモリの逼迫で起動を待っている agent も)
tako queue --json # 生の JSON(tako が起動していなければ機の状態だけを返す)
tako queue cargo build # 重い処理を順番待ちで走らせる(同時数・空きメモリ・メモリ圧で割り当て。
# 終了コードはコマンドのまま。tako が起動していなければ待たずに走る)
tako queue cancel 12345 # 受付番号(= 待っている tako queue の pid)の処理を取り消す
tako queue limits # 上限(同時数・空けておくメモリ・swap の警戒線・待ちの上限)を読む
tako queue limits --max-jobs 2 # 同時に走らせる数を変える(--reset で機に合わせた既定へ)
tako queue limits --jobserver off # tako のペインの cargo が共有する札を配らない(既定 on。on で戻す)
# 札は論理 CPU 数ぶん。tako queue を通さない cargo も、並ぶと全体でこの数 + 並んだ本数までに
# 絞られる(tako queue の 1 行「cargo の札: 空き X / N」で見える)
tako queue start 12 # メモリの逼迫で起動を待っている agent(spawn / run / 再起動後の復元)を今すぐ起こす
# (番号はペイン。逼迫しているあいだは spawn の応答の launch_gate が waiting になり、
# 圧が戻ると自動で起きる。再起動後の復元は master から 1 本ずつ時差で起きる)
tako shell-integration # シェル統合(cwd 追従・コマンド実行状態)が効いているか
tako shell-integration install # スクリプトを書き出し直す(tako setup が自分で通るので普段は不要)
tako shell-integration uninstall # 以前の版が $PROFILE に足したブロックだけを外す(普段は自動の移行が済ませる)
tako mod # tako mod(Claude Code の mod)の状態。ペインごとの ctx・使用制限・ターンの報告と、届かない理由
tako mod off # 次に作るペインから mod を読ませない(動いている claude には効かない)
tako mod on # 戻す(既定 ON。claude 2.1.294 以上のペインにだけ読ませる)
# 届いた報告はコンテキスト残量・使用制限・作業状態の一次ソースになる
# (orchestrator self / status の ctx_source が mod。報告が無ければ画面へ落ち、理由は ctx_mod_reason)
tako mod band off # Claude Code の画面のプロンプトの上の帯(tako | ペイン名 | タブ | worker 数・要注意)を隠す
tako mod band on # 戻す(動いている claude へ次の報告 = 最大 15 秒で届く。Claude Code の中では /tako band on|off)
# 帯は 1 行。ctx / 使用制限は 80% を超えたときだけ出す。/tako でサイドバーに詳細
tako context-budget # 起動時ロードの予算の確認(何も書き換えない)
tako context-budget fix # 積もった作業ログを archive へ移送する
tako test-residue # テスト・検証が残した一時 dir の下見(1 つも消さない)
tako test-residue --apply # 実際に削除する(生きているプロセスの置き場には触らない)

MCP の stdio ブリッジ(AI エージェントと tako をつなぐ中継役)として動作します。通常は手で実行するものではなく、tako setup-mcp で登録するとエージェント側が自動的に起動します。tako の外で起動された場合は安全のためツールを公開しません(0 ツールで応答)。

Terminal window
tako mcp serve