Token导航 LogoToken导航TokenDH.com
效率敏感数据clawhub未标认证来源可访问clear审计通过

teamgram-session-layer团队图会话层

Agent Skill

teamgram-session-layer 用于整理文档、README、Markdown 和说明材料,适合在 OpenClaw 中需要把零散信息整理成结构清晰的文档时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

5,928

周安装

247

GitHub Stars

公开资料未说明

下载量

1,976
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:teamgram-session-layer(团队图会话层)
来源仓库:https://github.com/zhihang9978/teamgram-session-layer
安装命令:
openclaw skills install teamgram-session-layer
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install teamgram-session-layer

简介

阐述会话路由与身份验证服务的聚合管理机制。

  • 包含 auth_key 缓存与 IDMap 查询优化技巧。
  • 适合解决连接复用与认证超时相关问题。
  • 需配合 MainAuthWrapper 使用以获得最佳性能。
  • 不提供移动端 SDK 集成示例。teamgram-session-layer 属于效率类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

name
teamgram-session-layer
description
Documents the session routing layer and authsession service in Teamgram Server, covering auth_key aggregation, IDMap routing, MainAuthWrapper, and backpressure mechanisms.
compatibility
Documentation/knowledge skill only. No executable code. Reference material for Teamgram Server developers.
metadata
author
zhihang9978
version
1.0.0
source
https://github.com/teamgram/teamgram-server
homepage
https://github.com/teamgram/teamgram-server
openclaw
requires
env
[]
bins
[]
securityNotes
|

会话层:session(interface.session)与认证服务(authsession)

session 服务职责

session 的职责是把来自 gnetway 的 TLMessage2 流:

  • auth_key_id(Perm/Temp/MediaTemp)聚合
  • session_id 维护多个 session(一个 authKey 下可以有多个会话)
  • 维护 salt 缓存(future_salt)
  • 构造 go-zero RPC metadata 并把请求丢到 RPC 队列
  • 把 sync 服务推送回来的 updates/rpcResult 分发到具体 session 连接

session → BFF 的路由机制(IDMap)

teamgramd/etc/session.yaml 中的 BFFProxyClients.IDMap 是关键:所有 /mtproto.RPC* 都路由到 bff.bff

BFFProxyClients:
  Clients:
    - Etcd:
        Key: bff.bff
  IDMap:
    "/mtproto.RPCTos": "bff.bff"
    "/mtproto.RPCConfiguration": "bff.bff"
    "/mtproto.RPCAuthorization": "bff.bff"
    "/mtproto.RPCMessages": "bff.bff"
    "/mtproto.RPCContacts": "bff.bff"
    "/mtproto.RPCChats": "bff.bff"
    "/mtproto.RPCUsers": "bff.bff"
    "/mtproto.RPCUpdates": "bff.bff"
    "/mtproto.RPCFiles": "bff.bff"
    "/mtproto.RPCDialogs": "bff.bff"
    "/mtproto.RPCDrafts": "bff.bff"
    "/mtproto.RPCNotification": "bff.bff"
    "/mtproto.RPCAccount": "bff.bff"
    "/mtproto.RPCAutodownload": "bff.bff"
    "/mtproto.RPCNsfw": "bff.bff"
    "/mtproto.RPCChatInvites": "bff.bff"
    "/mtproto.RPCPrivacySettings": "bff.bff"
    "/mtproto.RPCUsernames": "bff.bff"
    "/mtproto.RPCPassport": "bff.bff"
    "/mtproto.RPCQrcode": "bff.bff"
    "/mtproto.RPCMiscellaneous": "bff.bff"
    "/mtproto.RPCSponsoredMessages": "bff.bff"
    "/mtproto.RPCPremium": "bff.bff"
    "/mtproto.RPCSavedMessageDialogs": "bff.bff"
    "/mtproto.RPCUserChannelProfiles": "bff.bff"
    "/mtproto.RPCPasskey": "bff.bff"
    "/mtproto.RPCVoipCalls": "bff.bff"

重要:如果新增 BFF 模块,必须在此 IDMap 中添加对应路由,否则 session 层会返回 METHOD_NOT_IMPL 错误。

MainAuthWrapper:三种 auth key 统一管理

MainAuthWrapper 内部维护三个 SessionList

  • mainAuth (PermAuthKey) — 主持久授权密钥
  • tempAuth — 临时授权密钥
  • mediaTempAuth — 媒体临时授权密钥

通过以下 channel 解耦:

  • sessionDataChan(数据面:来自 gnetway/sync 的 payload)
  • rpcQueue(控制面:批量 RPC 调用队列)

背压与可靠性:runLoop + rpcRunLoop

  • runLoop:消费 sessionDataChan,按类型调用 onSessionData/onSyncData/...
  • rpcRunLoop:从 rpcQueue Pop 一批 rpcApiMessage,统一调用 doRpcRequest

在 channel 满时返回 ErrDataChannelFull,让上游感知"拥塞"而不是 silent drop。


认证状态:authsession(service.authsession)

authsession 服务的定位是:

  • 持久化与管理 auth_key 与用户绑定(AuthKeyId ↔ UserId)
  • 记录客户端 initConnection / layer / device 信息(供风控、推送、在线状态等使用)
  • 支撑 session 层的 QueryAuthKey / SetLayer / BindAuthKeyUser 等调用

配置(teamgramd/etc/authsession.yaml)要点:

Name: service.authsession
ListenOn: 127.0.0.1:20450
Etcd:
  Key: service.authsession
Mysql:
  DSN: root:@tcp(127.0.0.1:3306)/teamgram?charset=utf8mb4&parseTime=true
Cache:
  - Host: 127.0.0.1:6379
KV:
  - Host: 127.0.0.1:6379

关键代码路径

  • session 主服务入口:app/interface/session/
  • session 配置文件:teamgramd/etc/session.yaml
  • authsession 服务:app/service/authsession/
  • authsession 配置:teamgramd/etc/authsession.yaml

Source Code References

  • Repository: https://github.com/teamgram/teamgram-server (Apache-2.0)

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

83.36%
按下载量换算1,647

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills