hermes - 💡(How to fix) Fix Optional skill proposal: hermes-a365 — Microsoft Agent 365 governance + bridge [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
NousResearch/hermes-agent#20133Fetched 2026-05-06 06:38:31
View on GitHub
Comments
2
Participants
2
Timeline
9
Reactions
0
Timeline (top)
labeled ×3commented ×2cross-referenced ×2referenced ×2

I'd like to propose adding hermes-a365 as an official optional skill under optional-skills/cloud-platforms/hermes-a365/. The skill lets Hermes agents register with Microsoft Agent 365 (GA 2026-05-01), the governance / identity / observability control plane, and answer messages in Teams / Outlook / M365 Copilot via a Bot Framework webhook adapter.

Repo: https://github.com/satscryption/Hermes-A365

Root Cause

I'd like to propose adding hermes-a365 as an official optional skill under optional-skills/cloud-platforms/hermes-a365/. The skill lets Hermes agents register with Microsoft Agent 365 (GA 2026-05-01), the governance / identity / observability control plane, and answer messages in Teams / Outlook / M365 Copilot via a Bot Framework webhook adapter.

Repo: https://github.com/satscryption/Hermes-A365

RAW_BUFFERClick to expand / collapse

Summary

I'd like to propose adding hermes-a365 as an official optional skill under optional-skills/cloud-platforms/hermes-a365/. The skill lets Hermes agents register with Microsoft Agent 365 (GA 2026-05-01), the governance / identity / observability control plane, and answer messages in Teams / Outlook / M365 Copilot via a Bot Framework webhook adapter.

Repo: https://github.com/satscryption/Hermes-A365

Why this fits optional-skills/

Per CONTRIBUTING.md, optional skills are "useful but not universally needed". This skill hits both qualifying flags:

  • Niche paid integration: needs a Microsoft 365 tenant, Frontier Preview Program enrollment, and a MICROSOFT_AGENT_365_TIER_3 license ($15/user/month) or MICROSOFT_365_E7 ($99/user/month).
  • Heavyweight dependencies: the GA a365 CLI (1.1.171, .NET tool via NuGet), pwsh 7+, az CLI 2.55+, an OS keychain backend, and the optional bridge extras (fastapi, uvicorn, httpx, pyjwt) for the runtime adapter.

It's clearly not universally needed but is genuinely useful for any operator running Hermes inside an M365-governed tenant.

What's there

Validator-compliant SKILL.md (≈14.9k chars, under the 15k SPEC §3.2 ceiling), 444 tests passing (pytest + ruff clean), full spec, dated reference snapshots, and an end-to-end live-tenant runbook completed twice on a real Frontier-Preview tenant.

LayerStatus
Doctor / status / license recommendershipped
Setup orchestrator (register) — drives a365 setup blueprint + setup permissions {mcp,bot} with line-streamed outputshipped
Per-agent runtime config (instance create) — local-only .env writershipped
Manifest publish — branches blueprint-only (Graph instance registration) vs AI Teammate (zip)shipped
Cleanup — drives cleanup azure → instance → blueprint, hardens secret-bearing backupsshipped
Activity bridge: verify (config + auth + reachability diagnostic)shipped
Activity bridge: serve (BF webhook adapter — JWT-validated, replies via serviceUrl, forwards to HERMES_BRIDGE_WEBHOOK)shipped (MVP — synchronous message + invoke)
Streaming responses + proactive long-running patterndeferred (documented)
One known external defect (Microsoft CLI bug, filed separately)tracked

The Hermes agent (= operator's responder) sits behind a stable JSON contract documented at references/webhook-contract.md. The bridge handles BF wire concerns (JWT validation, reply via serviceUrl, Adaptive Card framing); the operator's responder owns what to say back.

What I'm asking for

Two options, depending on what works for you:

  1. Light-touch link. Add a stub optional-skills/cloud-platforms/hermes-a365/ directory with a single SKILL.md that points at the upstream repo (See: https://github.com/satscryption/Hermes-A365). Hermes' skills browse would then surface it; users skills install and the install path follows the link. Smallest commitment for you; I'm happy to PR it.
  2. Full contribution. Vendor the SKILL.md + supporting templates/ + scripts/ (or whichever subset you want) into the harness directly under optional-skills/cloud-platforms/hermes-a365/. More integration work, but the skill becomes part of the harness's official inventory.

I'll send a PR for whichever shape you prefer once you point me at the right way in. Happy to iterate on packaging — e.g. if you'd rather the skill carry only the prompt-side SKILL.md and the operator runs the apply-side scripts from the Hermes-A365 repo separately, that's also a clean model.

Other notes

  • License: MIT (matches the upstream).
  • Maintenance: I'll continue maintaining the upstream Hermes-A365 repo and keep the skill in lock-step with whatever lands here.
  • Testing: 444 unit tests + a documented live-tenant runbook (manual for now since it requires a Frontier-Preview tenant). Happy to add a CI matrix or a --mock mode if that helps.
  • Architecture: the skill is fully decoupled from any specific LLM provider — the bridge forwards to a webhook the operator controls, and the operator wires it to whichever responder they want (Hermes is the obvious one, but the webhook contract is generic).

Cheers — happy to chat in the Nous Research Discord or here.

extent analysis

TL;DR

The proposed solution is to add the hermes-a365 skill as an official optional skill under optional-skills/cloud-platforms/hermes-a365/ by either creating a light-touch link or fully contributing the skill to the harness.

Guidance

  • Review the CONTRIBUTING.md guidelines to ensure the skill meets the criteria for optional skills.
  • Evaluate the two proposed options: light-touch link or full contribution, considering the level of commitment and integration work required.
  • Discuss the packaging approach with the contributor to determine the best way to integrate the skill, such as including only the SKILL.md and prompt-side scripts.
  • Consider the maintenance and testing requirements, including the contributor's commitment to maintaining the upstream Hermes-A365 repo and keeping the skill up-to-date.

Example

No code snippet is provided as the issue is focused on the proposal and integration of the hermes-a365 skill.

Notes

The decision to add the hermes-a365 skill as an official optional skill depends on the evaluation of the proposal and the discussion with the contributor. The skill's niche paid integration and heavyweight dependencies should be carefully considered.

Recommendation

Apply the light-touch link option, as it requires the smallest commitment and allows for easy integration and maintenance of the skill. This approach also enables the contributor to maintain the upstream Hermes-A365 repo and keep the skill up-to-date.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix Optional skill proposal: hermes-a365 — Microsoft Agent 365 governance + bridge [2 comments, 2 participants]