慣性聚合 関心のあるブログ、ニュース、テクノロジーを効率的に追跡
原文を読む 慣性聚合で開く

おすすめ購読元

博客园 - 司徒正美
V
V2EX
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
月光博客
月光博客
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
V
Visual Studio Blog
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI

博客园 - iTech

7万星的AI交易框架:让大模型模拟投行多空辩论,自动做交易决策 71000颗星的AI交易团队:让大模型模拟投行分工,自动做交易决策 13400颗星的开源项目:输入一句话,AI全自动帮你做短视频 102颗星的沙盒:当AI学会自己写代码、跑测试、做部署 AI 技术日报 - 2026-05-08 29k 星的 PageIndex:不用向量数据库,靠推理就能做 RAG 每天花两小时刷信息?这个开源项目帮你全自动搞定 读源码像读小说?试了 DeepWiki 和 Zread,我再也不想裸读 GitHub 了 Matt Pocock 开源的这套 .claude 技能,为什么让工程师集体上头? Cursor Team Kit:Cursor 官方团队在用的 17 个 AI 工作流 AI 技术日报 - 2026-05-07 AI 技术日报 - 2026-05-06 - iTech AI 技术日报 - 2026-05-05 Anthropic CEO 说 12 个月内程序员要失业,我扒完他的底牌,发现事情没那么简单 把工程师的肌肉记忆装进 Claude Code,这个 4300 Star 的项目我后悔没早用 AI 技术日报 - 2026-05-04 AI 技术日报 - 2026-05-03 AI 技术日报 - 2026-05-02 六大 Agent 框架横评:谁支持 Skills?谁能自动创建 Agent?MCP 呢? Wechatsync:一个 Chrome 插件,一键把文章同步到 31 个平台 LangChain 开源了 Open SWE:Stripe、Ramp、Coinbase 内部都在造的编程 Agent Cockpit:把 Claude Code 从终端里搬出来,装进浏览器 Cursor 把自家的 AI Agent 开放了:写几行 TypeScript 就能调 Cursor 干活 AI 技术日报 - 2026-05-01 AI 写代码每次结果都不一样?Archon 用 YAML 工作流把 AI 编程变成流水线 AI 写代码比你快了,但你还是得学编程——只不过学法得换 腾讯的龙虾特工队:4 个 AI Agent 同日更新,全家桶正式成型 Agno 不做更聪明的 Agent,它要把所有 Agent 框架包进同一个操作系统 Hermes Agent 终于有了像样的 Web 界面,而且还支持远程访问 Datawhale 出了一套 29 学科知识地图,把 AI 的底牌全掀了 Hermes Agent 在聊天框里就能用的 20 种高级功能 一份 AGENTS.md 能顶一次模型升级?Augment Code 用数据说了算 NVIDIA 开源了一个「AI 沙箱」,20K Star,让 Agent 跑代码不再裸奔 60ms 冷启动、5MB 内存:腾讯开源的这个沙箱让 Docker 安全隔离像笑话 AI 技术日报 - 2026-04-30 AI 技术日报 - 2026-04-29 AI 技术日报 - 2026-04-28 Goose:Linux 基金会亲儿子,能撼动 Claude Code 和 OpenCode 吗? AI 技术日报 - 2026-04-27 AI 技术日报 - 2026-04-26 Google 把价值20美元/月的东西免费了,102K人已经抢到了 OpenClaw 和 Claude Code 网络搜索配置指南 AI 技术日报 - 2026-04-25 Anthropic 为什么遥遥领先:从 Cat Wu 专访看AI霸主的底层逻辑 Mac 本地跑大模型完全指南:你的苹果电脑就是 AI 工作站 同样 70B 参数,为什么 MoE 只激活 13B 就能打平 Dense? DeepSeek-V4 技术报告里藏着一条线:华为昇腾 NPU 已完成推理验证 DeepSeek-V4 深夜炸场:1M 上下文、384K 输出、双模型,API 定价直接卷到底 MacBook Air 跑大模型实测:Ollama、llama.cpp、LM Studio 谁才是本地推理之王? AI 技术日报 - 2026-04-24
Hermes Agent が Microsoft Teams に接続するための完全ガイド:6つのステップでAI Agentをグループチャットに参加させる
iTech · 2026-05-24 · via 博客园 - iTech

Hermes Agent(GitHub 164k star)は、ターミナル内のコーディング補助ツールだけではありません。そのメッセージゲートウェイを通じて、Agentは24つのメッセージプラットフォーム——Telegram、Discord、Slack、WeChat、Lark、DingTalk、Microsoft Teams など——に接続できます。あるプラットフォームで設定したAgentの機能(Skills、ツール呼び出し、承認プロセス)は、すべてのプラットフォームで共通して使用できます。

この記事はMicrosoft Teamsの接続方法に焦点を当てています:6つのステップでAI AgentロボットをTeamsのチャットに表示する方法。

この記事では何がカバーされていますか

  • Hermes Agent + Teamsのアーキテクチャ
  • 6つの接続手順
  • インタラクティブな承認カード
  • 会議議事録の自動配信
  • 本番環境でのデプロイ
  • セキュリティ設定

アーキテクチャ

Teams 群聊 ←── HTTPS Webhook ──→ Hermes Gateway (端口 3978) ←──→ Agent + LLM

と Slack の Socket Mode は異なり、Teams は公開 HTTPS Webhook を通じてメッセージをプッシュします。あなたの Hermes インスタンスにはインターネットからアクセス可能なエンドポイントが必要です——ローカル開発用にはトンネルツール、本番環境には実際のドメインを使用します。

メッセージトリガールール

シナリオ 動作
プライベートチャット(1:1) メッセージごとに Agent が返信し、@ は不要
グループチャット @ロボットが含まれる場合のみ返信
チャンネル @ロボットが含まれる場合のみ返信

Teams は @mention を <at>BotName</at> タグとして伝達し、Hermes が自動的に除去して後処理を行います。

6 手順で

第 1 手順:Teams CLI のインストール

Microsoft の @microsoft/teams.cli 自動化 Bot の登録、Azure Portal は不要:

npm install -g @microsoft/teams.cli@preview
teams login

ログインを検証し、AAD Object ID を取得(後でホワイトリストの設定に使用):

teams status --verbose

第 2 手順:Webhook ポートの公開

Teams は localhost にメッセージをプッシュできません。ローカル開発にはトンネルツールが必要:

# Microsoft devtunnel(推荐,URL 持久)
devtunnel create hermes-bot --allow-anonymous
devtunnel port create hermes-bot -p 3978 --protocol https
devtunnel host hermes-bot

# 或 ngrok
ngrok http 3978

# 或 cloudflared
cloudflared tunnel --url http://localhost:3978

出力結果をメモhttps://のURL、次の手順に進みます。開発中はトンネルを継続的に動かしておきます。

第3ステップ:Botの作成

teams app create \
  --name "Hermes" \
  --endpoint "https://<your-tunnel-url>/api/messages"

CLIの出力CLIENT_IDCLIENT_SECRETTENANT_IDを作成します。すぐにクライアントシークレットを保存——二度と表示されません。

第4ステップ:環境変数の設定

~/.hermes/.envに追加します:

# 必填
TEAMS_CLIENT_ID=<your-client-id>
TEAMS_CLIENT_SECRET=<your-client-secret>
TEAMS_TENANT_ID=<your-tenant-id>

# 限制访问用户(强烈建议)
# 用 teams status --verbose 获取 AAD Object ID
TEAMS_ALLOWED_USERS=<your-aad-object-id>

config.yamlを使用して設定できます:

platforms:
  teams:
    enabled: true
    extra:
      client_id: "your-client-id"
      client_secret: "your-secret"
      tenant_id: "your-tenant-id"
      port: 3978

第5ステップ:ゲートウェイを起動

HERMES_UID=$(id -u) HERMES_GID=$(id -g) docker compose up -d gateway

が動作しているか確認します:

curl http://localhost:3978/health
# 应返回: ok

docker logs -f hermes
# 看到: [teams] Webhook server listening on 0.0.0.0:3978/api/messages

第 6 手順:Teams にアプリをインストール

teams app get <teamsAppId> --install-link

出力されたリンクを開き、Teams クライアントでインストールします。インストールが完了したら、ロボットにメッセージを送信——準備完了です。

インタラクティブな承認カード

これは Teams インテグレーションで最も実用的な機能の一つです。Agent が危険なコマンド(ファイル削除、shell コマンドの実行など)を実行する必要がある場合、手動で/approveを入力するのではなく、Adaptive Cardを送信し、4つのボタンが表示されます:

ボタン 行動
一度許可 この特定のコマンドを承認
セッションを許可 このセッション内で同類のコマンドを自動的に承認
常に許可 このモードを永続的に承認
拒否 実行を拒否

ボタンをクリックすると、カードはすぐに承認の決定で更新され、Agent は続行または停止します。

会議の議事録は自動的にプッシュされます

Hermes Agent の Teams統合はチャットに加えて、会議の議事録を自動的にプッシュすることもサポートしています。Teams Meeting Pipeline プラグインを有効にすると、会議終了後自動的に議事録を作成し、指定されたTeamsチャンネルやチャットにプッシュされます。

2つのプッシュモード:

モード 適用シーン 制限
incoming_webhook 簡単にチャンネルに投稿 スレッドや返信機能はサポートしない
graph ボットとして投稿し、スレッドをサポート Microsoft Graph 権限が必要

graphモード設定:

platforms:
  teams:
    enabled: true
    extra:
      client_id: "..."
      client_secret: "..."
      tenant_id: "..."
      delivery_mode: "graph"
      chat_id: "19:meeting_..."    # 推送到聊天
      # 或
      # team_id: "..."
      # channel_id: "..."          # 推送到频道

本番環境デプロイ

ローカル開発用トンネル、本番環境用実際のドメイン:

# 创建 Bot 时直接用生产域名
teams app create \
  --name "Hermes" \
  --endpoint "https://your-domain.com/api/messages"

# 已有 Bot 更新端点
teams app update --id <teamsAppId> --endpoint "https://your-domain.com/api/messages"

要件:
- ポート 3978(または TEAMS_PORT 指定されたポート)が公網からアクセス可能
- TLS 証明書が有効(Teams は自署名証明書を拒否)

セキュリティ設定

⚠️ TEAMS_ALLOWED_USERSを設定する必要があります。そうしないと、あなたのBotを見つけたりインストールしたりできる人は誰でもそれとやり取りできます。

セキュリティベストプラクティス:

  • TEAMS_ALLOWED_USERSに、承認ユーザーのAAD Object IDを入力し、未承認のメッセージは静かに捨てます
  • TEAMS_CLIENT_SECRETパスワードとして扱い、定期的に変更します
  • ~/.hermes/.envファイルのアクセス権を600に設定します:chmod 600 ~/.hermes/.env
  • 公開エンドポイント/api/messagesはTeams Bot Frameworkによって認証され、有効なJWTがないリクエストは拒否されます

設定の参考

変数 の説明
TEAMS_CLIENT_ID Azure AD App(クライアント)ID
TEAMS_CLIENT_SECRET Azure AD クライアントキー
TEAMS_TENANT_ID Azure AD テナントID
TEAMS_ALLOWED_USERS コンマ区切りのAAD Object ID 白リスト
TEAMS_ALLOW_ALL_USERS 設定trueホワイトリストをスキップ(推奨されません)
TEAMS_HOME_CHANNEL タイマー/アクティブメッセージの対話ID
TEAMS_PORT Webhook ポート(デフォルト 3978)

よくある質問

質問 解決策
health エンドポイントは正常ですが Bot が応答しない トンネルがまだ実行中かどうかを確認し、Bot エンドポイントがトンネル URL に一致しているかどうかを確認
KeyError: 'teams'ログエラー コンテナを再起動
認証エラー CLIENT_ID、CLIENT_SECRET、TENANT_IDを確認
Botがメッセージを受け取りましたが無視 AAD Object ID は ALLOWED_USERS に含まれていません
トンネル URL は再起動後に変更 devtunnelは命名トンネル URLを維持;ngrok無料版は毎回変わるのでteams app updateを更新
No inference provider configured ANTHROPIC_API_KEY(または他のLLM key)が設定されているか確認

Hermes Agentがサポートする24のメッセージプラットフォーム

チームズはその一つに過ぎません。Hermes Agentは同時に

Telegram、Discord、Slack、WhatsApp、Signal、Email、SMS(Twilio)、Home Assistant、Mattermost、Matrix、DingTalk(钉钉)、Lark(飞书)、WeCom(企业微信)、WeCom Webhook、WeChat、iMessage(BlueBubbles)、QQ Bot、Yuánbǎo、Microsoft Teams、Teams Meetings、LINE、SimpleX Chat、ntfy、Open WebUI、Webhooksをサポートしています。

同じAgent、同じSkillsとツールの設定、すべてのプラットフォームで利用可能です。


作者: itech001
来源: 公众号:AI人工知能時代
ウェブサイト: https://www.theaiera.cn/
毎日、最も先進的なAIニュース情報と技術研究を共有します。

本稿はAI人工知能時代で初めて掲載されました。転載する場合は出典を明記してください。