
2026/02/05 18:39
**ナノボット:オープンクローに代わる超軽量な選択肢**
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
Nanobot は、Clawdbot に触発された超軽量パーソナル AI アシスタントで、約 4,000 行のコードから構築されており、前身よりも約 99 % 小さいです。リアルタイム市場分析、フルスタックソフトウェアエンジニアリング支援、日常業務管理、および一般知識サポートを提供します。
リリースタイムライン
• 2026‑02‑02 – 初期リリース(v0.1.3.post1)。
• 2026‑02‑04 – v0.1.3.post4 が Docker サポートとマルチプロバイダー機能を追加。
• 2026‑02‑05 – v0.1.5.post1 が Feishu チャンネル、DeepSeek プロバイダー、および改良されたスケジュールタスクを導入。インストール
• ソースクローン:git clone https://github.com/HKUDS/nanobot.git && pip install -e .
• uv ツール:uv tool install nanobot-ai
• PyPI:pip install nanobotインストール後、
に API キーを設定し、~/.nanobot/config.jsonでクエリを実行します。サポートされる LLM プロバイダーは OpenRouter, Anthropic, OpenAI, DeepSeek, Groq, Gemini です。nanobot agent -m "What is 2+2?"
ローカル推論の場合、vLLM サーバーを起動 () とし、vllm serve meta‑llama/Llama-3.1-8B-Instruct --port 8000にプロバイダーを設定します。config.jsonチャットチャンネル – Telegram(ボットトークン+オプションユーザーホワイトリスト)、WhatsApp(Node.js ≥18, QR ログイン, 二ターミナルセットアップ)、Feishu(WebSocket 長接続でアプリ認証情報を使用)。
CLI コマンド –,nanobot onboard,nanobot agent -m …,nanobot gateway,nanobot status, そしてスケジュールタスクはnanobot channels login/status。nanobot cron add/list/removeDocker の使用方法 – イメージをビルドし、設定ディレクトリをマウント (
) してから、ゲートウェイまたは単一コマンドを-v ~/.nanobot:/root/.nanobotで実行。docker run …プロジェクト構造 は小さく読みやすいコードベースを示しています:
,agent/,skills/,channels/,providers/等。cron/
ロードマップ – 音声文字起こし(Groq Whisper)、マルチモーダルサポート、長期メモリ、推論強化、および Discord, Slack, メール, カレンダーなどの追加統合と自己改善学習を含む。このプロジェクトはプルリクエストを歓迎し、教育・研究・技術交流目的のみで利用されることを想定しています。
本文
🐈 nanobot
Clawdbot からインスパイアされた超軽量個人 AI アシスタント。
⚡️ 約 4,000 行のコードで実装 – Clawdbot の 430k+ 行に対し 99 % 小さくなっています。
📢 ニュース
| 日付 | 更新内容 |
|---|---|
| 2026‑02‑05 | Feishu チャンネル、DeepSeek プロバイダー、スケジュールタスクの改善を追加! |
| 2026‑02‑04 | v0.1.3.post4 がマルチプロバイダー & Docker 対応でリリース。詳細はリリースノートへ。 |
| 2026‑02‑02 | nanobot を公開しました!🐈 nanobot をお試しください! |
主な特徴
- 🪶 超軽量 – 約 4,000 行、Clawdbot より 99 % 小さいコードベース。
- 🔬 研究向け – クリーンで読みやすく、研究者が簡単に理解・修正・拡張できる設計。
- ⚡️ 高速起動 – 軽量化により起動速度が速く、リソース使用も抑えられます。
- 💎 使いやすい – ワンクリックでデプロイ可能。
アーキテクチャ
✨ 主要機能
| カテゴリ | サブ機能 |
|---|---|
| 📈 24/7 リアルタイム市場分析 | - |
| 🚀 フルスタックソフトウェアエンジニア | - |
| 📅 スマート日課管理 | - |
| 📚 パーソナル知識アシスタント | - |
- 発見 • 洞察 • トレンド
- 開発 • デプロイ • 拡張
- スケジュール • 自動化 • 整理
- 学習 • 記憶 • 推論
インストール
ソースから(最新機能、開発推奨)
git clone https://github.com/HKUDS/nanobot.git cd nanobot pip install -e .
uv
で(安定版・高速)
uvuv tool install nanobot-ai
PyPI から(安定版)
pip install nanobot-ai
クイックスタート
-
Tip: API キーを
に設定します。~/.nanobot/config.json
API キー取得: OpenRouter (LLM) · Brave Search (任意、ウェブ検索)。
コスト削減のために
モデルへ切り替えることも可能です。minimax/minimax-m2 -
初期化
nanobot onboard -
設定 (
)~/.nanobot/config.json{ "providers": { "openrouter": { "apiKey": "sk-or-v1-xxx" } }, "agents": { "defaults": { "model": "anthropic/claude-opus-4-5" } }, "tools": { "web": { "search": { "apiKey": "BSA-xxx" } } } } -
チャット
nanobot agent -m "What is 2+2?"完了!わずか 2 分で動作する AI アシスタントが手に入ります。
ローカルモデル(vLLM)
自前のローカル LLM を vLLM や OpenAI 互換サーバー経由で利用できます。
-
vLLM サーバー起動
vllm serve meta-llama/Llama-3.1-8B-Instruct --port 8000 -
設定 (
)~/.nanobot/config.json{ "providers": { "vllm": { "apiKey": "dummy", "apiBase": "http://localhost:8000/v1" } }, "agents": { "defaults": { "model": "meta-llama/Llama-3.1-8B-Instruct" } } } -
チャット
nanobot agent -m "Hello from my local LLM!"
Tip: ローカルサーバーは認証不要のため、
は空でなく任意文字列で構いません。apiKey
チャットアプリ
Telegram・WhatsApp・Feishu などを通じていつでもどこでも nanobot と対話できます。
チャンネル設定
| プラットフォーム | 難易度 |
|---|---|
| Telegram | 簡単(トークンのみ) |
| 中程度(QR スキャン) | |
| Feishu | 中程度(アプリ認証情報) |
Telegram(推奨)
-
ボット作成
Telegram →
を検索 →@BotFather
→ 指示に従いトークンを取得。/newbot -
設定
{ "channels": { "telegram": { "enabled": true, "token": "YOUR_BOT_TOKEN", "allowFrom": ["YOUR_USER_ID"] } } }ユーザー ID は
で取得。@userinfobot -
起動
nanobot gateway
- Node.js ≥18 が必要。
- デバイスをリンク
nanobot channels login # QR をスキャン(WhatsApp → 設定 → 連携済みデバイス) - 設定
{ "channels": { "whatsapp": { "enabled": true, "allowFrom": ["+1234567890"] } } } - 起動(2 つのターミナルで実行)
# ターミナル 1 nanobot channels login # ターミナル 2 nanobot gateway
Feishu (飛書)
WebSocket 長接続を利用し、パブリック IP は不要です。
pip install nanobot-ai[feishu]
-
Feishu ボット作成
Feishu Open Platform → 新規アプリ → Bot 機能を有効化。
権限:
(送信)。im:message
イベント:
(受信)。im.message.receive_v1
長接続モードを選択し、nanobot を先に起動して接続を確立。 -
App ID と Secret を「認証情報 & 基本情報」から取得し、公開。
-
設定
{ "channels": { "feishu": { "enabled": true, "appId": "cli_xxx", "appSecret": "xxx", "encryptKey": "", "verificationToken": "", "allowFrom": [] } } }Tip:
とencryptKey
は長接続モードでは任意。verificationToken
: 空なら全ユーザー許可、特定 ID を追加可能。allowFrom -
起動
nanobot gateway
⚙️ 設定
設定ファイル:
~/.nanobot/config.json
プロバイダー
| Provider | 用途 | API キー取得 |
|---|---|---|
| openrouter | LLM(推奨、全モデルアクセス) | openrouter.ai |
| anthropic | Claude 直接 | console.anthropic.com |
| openai | GPT 直接 | platform.openai.com |
| deepseek | DeepSeek 直接 | platform.deepseek.com |
| groq | LLM + Whisper 音声認識 | console.groq.com |
| gemini | Gemini 直接 | aistudio.google.com |
完全設定例
{ "agents": { "defaults": { "model": "anthropic/claude-opus-4-5" } }, "providers": { "openrouter": { "apiKey": "sk-or-v1-xxx" }, "groq": { "apiKey": "gsk_xxx" } }, "channels": { "telegram": { "enabled": true, "token": "123456:ABC...", "allowFrom": ["123456789"] }, "whatsapp": { "enabled": false }, "feishu": { "enabled": false, "appId": "cli_xxx", "appSecret": "xxx", "encryptKey": "", "verificationToken": "", "allowFrom": [] } }, "tools": { "web": { "search": { "apiKey": "BSA..." } } } }
CLI リファレンス
| コマンド | 説明 |
|---|---|
| 設定とワークスペースを初期化 |
| 一回限りのチャット |
| インタラクティブチャットモード |
| ゲートウェイ起動 |
| 状態表示 |
| WhatsApp をリンク(QR スキャン) |
| チャンネル状態を確認 |
定期タスク (Cron)
# 仕事を追加 nanobot cron add --name "daily" --message "Good morning!" --cron "0 9 * * *" nanobot cron add --name "hourly" --message "Check status" --every 3600 # 仕事一覧 nanobot cron list # 仕事削除 nanobot cron remove <job_id>
🐳 Docker
Tip:
をマウントすると、コンテナ再起動時に設定とワークスペースを保持できます。-v ~/.nanobot:/root/.nanobot
# イメージビルド docker build -t nanobot . # 初回のみ設定初期化 docker run -v ~/.nanobot:/root/.nanobot --rm nanobot onboard # ホスト上で config を編集して API キー追加 vim ~/.nanobot/config.json # ゲートウェイ起動(Telegram/WhatsApp 接続) docker run -v ~/.nanobot:/root/.nanobot -p 18790:18790 nanobot gateway # 単一コマンド実行例 docker run -v ~/.nanobot:/root/.nanobot --rm nanobot agent -m "Hello!" docker run -v ~/.nanobot:/root/.nanobot --rm nanobot status
📁 プロジェクト構成
nanobot/ ├── agent/ # コアエージェントロジック │ ├── loop.py # エージェントループ (LLM ↔ ツール実行) │ ├── context.py # プロンプトビルダー │ ├── memory.py # 永続メモリ │ ├── skills.py # スキルローダー │ ├── subagent.py # バックグラウンドタスク実行 │ └── tools/ # 内蔵ツール (spawn など) ├── skills/ # 標準スキル(github, weather, tmux…) ├── channels/ # WhatsApp 統合 ├── bus/ # メッセージルーティング ├── cron/ # 定期タスク ├── heartbeat/ # プロアクティブな起動 ├── providers/ # LLM プロバイダー (OpenRouter など) ├── session/ # 会話セッション ├── config/ # 設定ファイル └── cli/ # コマンド実装
🤝 貢献 & ロードマップ
PR 歓迎です!コードベースは意図的に小さく読みやすい構成になっています。
ロードマップ
- 音声認識 – Groq Whisper 対応(Issue #13)
- マルチモーダル – 画像・音声・動画を見て聞けるように
- 長期メモリ – 重要な文脈を忘れない設計
- 推論強化 – 多段階計画と反省機能
- 拡張統合 – Discord, Slack, メール, カレンダー
- 自己改善 – フィードバックと失敗から学ぶ仕組み
⭐ Star History(ビジュアルタイムラインは省略)
ご覧いただきありがとうございます ✨ nanobot!
nanobot は教育・研究・技術交流のみに使用してください。