概要
Personal AI AssistantのOpenClawの概要説明とMacBook Proへのインストール方法を紹介します。
OpenClawの概要
OpenClawは、個人のAIアシスタントで、自然言語処理や機械学習を活用して、ユーザーのタスクを効率化するためのツールです。ここでは、個人用のMacBook Proにインストールすることで、日常の作業や情報検索をよりスムーズに行うことができることを検証します。

環境構築
準備(npmpのインストール)
Buy Credit of Claude
まず$5のクレジットをチャージしました。
pnpmのインストール
OpenClawのインストールに必要なNode.jsのパッケージマネージャーであるpnpmをインストールします。pnpmは、npmやyarnと同様にNode.jsのパッケージ管理を行うツールですが、より高速で効率的な依存関係の管理が特徴。
% sudo corepack enable
% corepack prepare pnpm@latest --activate
% pnpm --version
10.33.0
openclawのクローン
% mkdir -p ~/Projects/openclaw-test
% cd openclaw-test
% git clone https://github.com/openclaw/openclaw.git
% cd openclaw
依存関係のインストール
- コマンド
% pnpm install - ログ
! Corepack is about to download https://registry.npmjs.org/pnpm/-/pnpm-10.32.1.tgz ? Do you want to continue? [Y/n] Y Scope: all 79 workspace projects Lockfile is up to date, resolution step is skipped Packages: +1235 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ╭───────────────────────────────────────────────╮ │ │ │ Update available! 10.32.1 → 10.33.0. │ │ Changelog: https://pnpm.io/v/10.33.0 │ │ To update, run: corepack use [email protected] │ │ │ ╰───────────────────────────────────────────────╯ Downloading [email protected]: 28.99 MB/28.99 MB, done Downloading [email protected]: 10.31 MB/10.31 MB, done Downloading @napi-rs/[email protected]: 13.37 MB/13.37 MB, done Downloading [email protected]: 18.25 MB/18.25 MB, done Downloading @napi-rs/[email protected]: 13.33 MB/13.33 MB, done Downloading @node-llama-cpp/[email protected]: 8.31 MB/8.31 MB, done Downloading @img/[email protected]: 8.27 MB/8.27 MB, done Downloading @typescript/[email protected]: 10.15 MB/10.15 MB, done Downloading @oxlint-tsgolint/[email protected]: 13.03 MB/13.03 MB, done Downloading @rolldown/[email protected]: 8.05 MB/8.05 MB, done Downloading @rolldown/[email protected]: 8.83 MB/8.83 MB, done Downloading @tloncorp/[email protected]: 25.17 MB/25.17 MB, done Packages are cloned from the content-addressable store to the virtual store. Content-addressable store is at: /Volumes/ST500LT/<user_name>/Library/pnpm/store/v10 Virtual store is at: node_modules/.pnpm Downloading [email protected]: 6.87 MB/6.87 MB, done Downloading [email protected]: 5.89 MB/5.89 MB, done Downloading @wasm-audio-decoders/[email protected]: 6.39 MB/6.39 MB, done Progress: resolved 0, reused 0, downloaded 1187, added 1235, done node_modules/protobufjs: Running postinstall script, done in 164ms node_modules/esbuild: Running postinstall script, done in 3.2s node_modules/sharp: Running install script, done in 19.4s node_modules/@matrix-org/matrix-sdk-crypto-nodejs: Running postinstall script, done in 2.3s node_modules/@tloncorp/tlon-skill: Running postinstall script, done in 176ms node_modules/node-llama-cpp: Running postinstall script, done in 15.6s node_modules/libsignal/node_modules/protobufjs: Running postinstall script, done in 169ms node_modules/@whiskeysockets/baileys: Running preinstall script, done in 89ms . prepare$ command -v git >/dev/null 2>&1 && git rev-parse --is-inside-work-tree >/dev/null 2>&1 && git config core.hooksPath git-hook… └─ Done in 133ms Done in 4m 20.7s using pnpm v10.32.1 786 [@My MBP(main):~/Projects/openclaw-test/openclaw] % ls AGENTS.md assets patches vendor CHANGELOG.md docker-compose.yml pnpm-lock.yaml vitest.channel-paths.mjs CLAUDE.md docker-setup.sh pnpm-workspace.yaml vitest.channels.config.ts CONTRIBUTING.md docs pyproject.toml vitest.config.ts Dockerfile docs.acp.md render.yaml vitest.e2e.config.ts Dockerfile.sandbox extensions scripts vitest.extensions.config.ts Dockerfile.sandbox-browser fly.private.toml setup-podman.sh vitest.gateway.config.ts Dockerfile.sandbox-common fly.toml skills vitest.live.config.ts LICENSE git-hooks src vitest.pattern-file.ts README.md knip.config.ts test vitest.performance-config.ts SECURITY.md node_modules test-fixtures vitest.scoped-config.ts Swabble openclaw.mjs tsconfig.json vitest.unit-paths.mjs VISION.md openclaw.podman.env tsconfig.plugin-sdk.dts.json vitest.unit.config.ts appcast.xml package.json tsdown.config.ts zizmor.yml apps packages ui
インタラクティブ・セットアップの開始
- コマンド
% pnpm dev - ログ
\> [email protected] dev /Volumes/ST500LT/<user_name>/Projects/openclaw-test/openclaw \> node scripts/run-node.mjs [openclaw] Building TypeScript (dist is stale). 🦞 OpenClaw 2026.3.24 (2a40612) — Your .zshrc wishes it could do what I do. Usage: openclaw [options] [command] Options: --container <name> Run the CLI inside a running Podman/Docker container named <name> (default: env OPENCLAW_CONTAINER) --dev Dev profile: isolate state under ~/.openclaw-dev, default gateway port 19001, and shift derived ports (browser/canvas) -h, --help Display help for command --log-level <level> Global log level override for file + console (silent|fatal|error|warn|info|debug|trace) --no-color Disable ANSI colors --profile <name> Use a named profile (isolates OPENCLAW_STATE_DIR/OPENCLAW_CONFIG_PATH under ~/.openclaw-<name>) -V, --version output the version number Commands: Hint: commands suffixed with * have subcommands. Run <command> --help for details. acp * Agent Control Protocol tools agent Run one agent turn via the Gateway agents * Manage isolated agents (workspaces, auth, routing) approvals * Manage exec approvals (gateway or node host) backup * Create and verify local backup archives for OpenClaw state browser * Manage OpenClaw's dedicated browser (Chrome/Chromium) channels * Manage connected chat channels (Telegram, Discord, etc.) clawbot * Legacy clawbot command aliases completion Generate shell completion script config * Non-interactive config helpers (get/set/unset/file/validate). Default: starts guided setup. configure Interactive configuration for credentials, channels, gateway, and agent defaults cron * Manage cron jobs via the Gateway scheduler daemon * Gateway service (legacy alias) dashboard Open the Control UI with your current token devices * Device pairing + token management directory * Lookup contact and group IDs (self, peers, groups) for supported chat channels dns * DNS helpers for wide-area discovery (Tailscale + CoreDNS) docs Search the live OpenClaw docs doctor Health checks + quick fixes for the gateway and channels gateway * Run, inspect, and query the WebSocket Gateway health Fetch health from the running gateway help Display help for command hooks * Manage internal agent hooks logs Tail gateway file logs via RPC mcp Manage embedded Pi MCP servers memory * Search and reindex memory files message * Send, read, and manage messages models * Discover, scan, and configure models node * Run and manage the headless node host service nodes * Manage gateway-owned node pairing and node commands onboard Interactive onboarding for gateway, workspace, and skills pairing * Secure DM pairing (approve inbound requests) plugins * Manage OpenClaw plugins and extensions qr Generate iOS pairing QR/setup code reset Reset local config/state (keeps the CLI installed) sandbox * Manage sandbox containers for agent isolation secrets * Secrets runtime reload controls security * Security tools and local config audits sessions * List stored conversation sessions setup Initialize local config and agent workspace skills * List and inspect available skills status Show channel health and recent session recipients system * System events, heartbeat, and presence tui Open a terminal UI connected to the Gateway uninstall Uninstall the gateway service + local data (CLI remains) update * Update OpenClaw and inspect update channel status webhooks * Webhook helpers and integrations Examples: openclaw models --help Show detailed help for the models command. openclaw channels login --verbose Link personal WhatsApp Web and show QR + connection logs. openclaw message send --target +15555550123 --message "Hi" --json Send via your web session and print JSON result. openclaw gateway --port 18789 Run the WebSocket Gateway locally. openclaw --dev gateway Run a dev Gateway (isolated state/config) on ws://127.0.0.1:19001. openclaw gateway --force Kill anything bound to the default gateway port, then start it. openclaw gateway ... Gateway control via WebSocket. openclaw agent --to +15555550123 --message "Run summary" --deliver Talk directly to the agent using the Gateway; optionally send the WhatsApp reply. openclaw message send --channel telegram --target @mychat --message "Hi" Send via your Telegram bot. Docs: docs.openclaw.ai/cli ELIFECYCLE Command failed with exit code 1.
Geminiに聞いたら、上記のようなログが出たのは、エラーで落ちたのではなく、「オプションなしで実行されたので、ヘルプ(使い方)を表示して正常終了した」、あるいは「初期設定が未完了なので、まずセットアップしてほしい」という状態だそう。
OpenClawを動かすための初期設定(APIキーの登録など)を対話形式で行う必要がある。
- コマンド
% pnpm dev setup - ログ
\> [email protected] dev /Volumes/ST500LT/<user_name>/Projects/openclaw-test/openclaw \> node scripts/run-node.mjs setup 🦞 OpenClaw 2026.3.24 (2a40612) — Finally, a use for that always-on Mac Mini under your desk. Wrote ~/.openclaw/openclaw.json Workspace OK: ~/.openclaw/workspace Sessions OK: ~/.openclaw/agents/main/sessions - コマンド
% pnpm dev configure - ログ
\> [email protected] dev /Volumes/ST500LT/<user_name>/Projects/openclaw-test/openclaw \> node scripts/run-node.mjs configure 🦞 OpenClaw 2026.3.24 (2a40612) — You had me at 'openclaw gateway start.' ┌ OpenClaw configure │ ◇ Existing config detected ─────────╮ │ │ │ workspace: ~/.openclaw/workspace │ │ gateway.mode: local │ │ │ ├────────────────────────────────────╯ │ ◇ Where will the Gateway run? │ Local (this machine) │ ◇ Select sections to configure │ Model │ ◇ Model/auth provider │ Anthropic │ ◇ Anthropic auth method │ Anthropic API key │ ◇ Enter Anthropic API key │ \<API key\> │ ◇ Model configured ─────────────────────────────────╮ │ │ │ Default model set to anthropic/claude-sonnet-4-6 │ │ │ ├────────────────────────────────────────────────────╯ │ ◇ Models in /model picker (multi-select) │ 1 items selected Config overwrite: /Volumes/ST500LT/<user_name>/.openclaw/openclaw.json (sha256 47b11455f907e76e79043c13b2bb18e522f85a922f39a711e3a5d858816a2868 -> 7a02861eceafea713eb586884cd4528089b542370382848afcc999a72abe2688, backup=/Volumes/ST500LT/<user_name>/.openclaw/openclaw.json.bak) Updated ~/.openclaw/openclaw.json │ ◇ Select sections to configure │ Continue Control UI assets missing; building (ui:build, auto-installs UI deps)… │ ◇ Control UI ─────────────────────────────────────────────────────────────────╮ │ │ │ Web UI: http://127.0.0.1:18789/ │ │ Gateway WS: ws://127.0.0.1:18789 │ │ Gateway: not detected (gateway url override requires explicit credentials) │ │ Docs: https://docs.openclaw.ai/web/control-ui │ │ │ ├──────────────────────────────────────────────────────────────────────────────╯ │ └ Configure complete.
ゲートウェイを起動
TUI(ターミナルUI)を起動
- コマンド
% pnpm dev gateway - ログ
\> [email protected] dev /Volumes/ST500LT/<user_name>/Projects/openclaw-test/openclaw \> node scripts/run-node.mjs gateway 🦞 OpenClaw 2026.3.24 (2a40612) It's not "failing," it's "discovering new ways to configure the same thing wrong." 14:28:42 Config overwrite: /Volumes/ST500LT/<user_name>/.openclaw/openclaw.json (sha256 7a02861eceafea713eb586884cd4528089b542370382848afcc999a72abe2688 -> 1eea557a0d1f9dcb3d45c5ffea2abc4f7c03c43d7879da90414a23ac2c311cbe, backup=/Volumes/ST500LT/<user_name>/.openclaw/openclaw.json.bak) 14:28:42 [gateway] auth token was missing. Generated a new token and saved it to config (gateway.auth.token). 14:28:42 [canvas] host mounted at http://127.0.0.1:18789/__openclaw__/canvas/ (root /Volumes/ST500LT/<user_name>/.openclaw/canvas) 14:28:44 [heartbeat] started 14:28:44 [health-monitor] started (interval: 300s, startup-grace: 60s, channel-connect-grace: 120s) 14:28:44 [gateway] agent model: anthropic/claude-sonnet-4-6 14:28:44 [gateway] listening on ws://127.0.0.1:18789, ws://[::1]:18789 (PID 88993) 14:28:44 [gateway] log file: /tmp/openclaw/openclaw-2026-03-27.log 14:28:44 [browser/server] Browser control listening on http://127.0.0.1:18791/ (auth=token) ...省略...
これで、OpenClawのゲートウェイがローカルで起動し、ターミナルUIも利用可能になりました。次のステップとして、チャットチャンネルの接続やエージェントの設定などを行うことができます。
OpenClawと会話する
Web UI(ブラウザで会話)
pnpm dev gatewayが動いている状態で、ブラウザのアドレスバーに http://127.0.0.1:18789/ と入力します。

「网关令牌」が空欄になっていて、表示されている赤いエラーメッセージが示されているように、Gateway Tokenがないため、Gatewayに接続できない。pnpm dev gatewayのログを確認したら、設定フィアル/Volumes/ST500LT/<user_name>/.openclaw/openclaw.jsonに書かれていることが分かったため、それをコピーして「网关令牌」欄に入力し、「连接」ボタンを押しました。そしたら、次のチャット画面が表示されるようになりました。

TUI(ターミナルUIで会話)
- コマンド
% pnpm dev tui -
ログ ```sh > [email protected] dev /Volumes/ST500LT/
/Projects/openclaw-test/openclaw \> node scripts/run-node.mjs tui 🦞 OpenClaw 2026.3.24 (2a40612) — Alexa, but with taste.
openclaw tui - ws://127.0.0.1:18789 - agent main - session main
hello ————————————————————–
Hello! 👋 How can I help you? ————————————————————– ```
上記のhelloはこちらからのプロンプト入力で、それに対し、OpenClawがHello! 👋 How can I help you?を返事してくれました。
`
動作確認
動作確認できる前提として、
pnpm dev gatewayが起動していること- LLM(この場合はAnthropicのClaude)が正しく設定されて、チャージ料金の残高があること
Web UI
http://127.0.0.1:18789/にアクセスします。
軽く挨拶
- プロンプト
hello
- 出力
Hello! 👋 How can I help you?
軽く質問
- プロンプト
東京都今日の日付と天気を教えて
- 出力

高度なコードを書かせる
- プロンプト
Reactを使って、マウスの動きに合わせて色が変化する、インタラクティブで幾何学的なアートを作って。古いMacでも滑らかに動くようにコードを最適化して
- 出力
キャンバスベースで作ります。古いMacでも滑らかに動くよう、SVGではなくCanvas APIを使い、描画を最適化します。

成果物をブラウザで開くと、マウスの動きに合わせて色が変化するインタラクティブな幾何学的アートが表示されました。
なお、実際にマウスを動かした時に次から次へ変わる3種類の図形のイメージを以下に示します。
| 六角形 | 三角形 | ダイヤモンド |
|---|---|---|
![]() |
![]() |
![]() |
なんと素晴らしい!
株価データのグラフ化をさせてみる
- プロンプト
必要に応じて yfinance と matplotlib を pip でインストールしてください。
- 三井住友フィナンシャルグループ(8316.T)の過去1年間の株価データを取得してください。
- 「終値(Close)」、「25日移動平均線」、「75日移動平均線」を重ねたグラフを描画し、画像ファイル(smfg_chart.png)として保存してください。
- 保存した画像を表示するか、パスを教えてください。
- 取得したデータに基づき、現在の株価が移動平均線に対してどの位置にあるか(ゴールデンクロス/デッドクロスの有無など)を解析し、直近のトレンドを要約してください。
- 出力


おまけ
ここまでの動作確認で、ClaudeでチャージしたUS$5は、残りわずかUS$1.23になりました。何もプロンプトを入力していない時もわずかですが残高が減っているので、おかしいなと思ったら、理由はOpenClawが定期的にClaudeにヘルスチェックを送っているかららしい。ヘルスチェックは、Gatewayが正常に動作しているかを確認するためのもので、これもAPIリクエストとしてカウントされるため、少しずつ残高が減っていくことになります。↲

まとめ
OpenClawをMacBook Proにインストールし、Web UIとTUIの両方で動作確認を行いました。Web UIでは、自然言語での対話やコード生成、データ分析などがスムーズに行えることが確認できました。TUIでも同様の対話が可能で、CLIベースでの操作が可能なことがわかりました。これにより、OpenClawを活用して、日常のタスクや情報検索を効率化することができるようになりました。今後は、さらに多くのチャットチャンネルの接続やエージェントの設定を行い、OpenClawの機能を最大限に活用していきたいと思います(APIキーの利用料金は値下げしないかな。。)


