feat(gateway): add platform-managed LINE support - #14979
Closed
David-0x221Eight wants to merge 4 commits into
Closed
feat(gateway): add platform-managed LINE support#14979David-0x221Eight wants to merge 4 commits into
David-0x221Eight wants to merge 4 commits into
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds a native LINE platform adapter to Hermes for hosted, platform-managed LINE Messenger integration.
This is the Hermes-side half of a platform-managed LINE integration: tenant pods receive internally forwarded LINE webhook events on
/line/webhook, authorize paired LINE users throughLINE_ALLOWED_USERS, and send text replies through a configurable LINE API base URL. In hosted mode that base can point at a platform proxy, so the real central LINE channel access token stays outside the tenant pod.Related to #6081, #8398, and #6676.
What Changed
gateway.platforms.line.LineAdapterwith HMAC webhook verification, text event parsing, webhook server startup, and LINE Push API text sends.Scope Notes
This implementation is intentionally text-first and focused on the platform-managed path. It does not attempt to cover the full LINE Messaging API surface, such as image, audio, video, stickers, or file delivery. The narrower scope is meant to provide a maintainable adapter for deployments where LINE credentials and webhook ingress are managed by an external platform layer.
Existing upstream LINE work in #8398 and #6676 is broader native LINE bot support. This PR keeps the first upstream slice smaller and centered on the hosted/proxy integration contract.
Validation
uv run --extra dev --extra messaging pytest tests/gateway/test_line.py tests/agent/test_prompt_builder.py::TestPromptBuilderConstants::test_platform_hints_known_platforms tests/test_toolsets.py::TestToolsetConsistency::test_hermes_platforms_share_core_tools -q13 passed, 6 warningsgit show --check --format=short HEAD