ishuowang/dsh-rolehub-bridge0

dsh-rolehub-bridge

Native RoleHub discovery, verified role Sessions, and Agent Team Room integration for DeepSeek Harness.

AI 分析

核心用途是接入 RoleHub 角色库,支持在 DSH 中发现、启动验证过的角色会话,并可接入团队聊天室。适合需要丰富 AI 角色扮演和多角色协作的用户。

パッケージ
dsh-rolehub-bridge
バージョン
0.2.0
ライセンス
MIT
最終更新
2026/08/16

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ishuowang/dsh-rolehub-bridge

ドキュメント

README 全文を読む ↗

Configuration

Edit the inserted rolehub-bridge row in the active profile's cordis.patch.yml when defaults are not enough:

- id: rolehub-bridge
  name: dsh-rolehub-bridge
  config:
    storageDir: /srv/dsh/rolehub-bridge
    allowCommunityRoles: false
    allowedCapabilities:
      - filesystem.read
      - filesystem.write
      - network.fetch
      - web.search
      - source-control.read
      - room.message
    fetchTimeoutMs: 15000
    maxCatalogCacheAgeMs: 86400000
    maxCatalogBytes: 2000000
    maxArchiveBytes: 20000000
    agentProvider: ""
    agentModel: ""
    hubs:
      - id: official
        catalogUrl: https://raw.githubusercontent.com/ishuowang/agent-role-hub/main/catalog/index.json
        archiveUrlTemplate: https://github.com/ishuowang/agent-role-hub/releases/download/v{version}/{name}-{version}.role.tgz
        trustedPublishers:
          - io.github.ishuowang
        allowedRedirectHosts:
          - release-assets.githubusercontent.com
          - objects.githubusercontent.com

All Hub endpoints must be credential-free HTTPS. Publisher trust is scoped to one Hub; a publisher name trusted for official is not trusted when another Hub merely claims the same name. Redirects stay on the request host unless their exact hostname appears in that Hub's allowedRedirectHosts. Validated catalog cache fallback expires after maxCatalogCacheAgeMs (24 hours by default), and a cached/offline catalog can never authorize a first-time role installation.

storageDir defaults to $DSH_HOME/rolehub-bridge, or ~/.dsh/rolehub-bridge when DSH_HOME is unset. The bridge claims only a dedicated private store marked as its own, uses 0600 files, bounded downloads, safe archive extraction, and atomic receipt writes. It refuses dangerous or non-private pre-existing roots instead of changing their permissions. Treat the store as single-Host state and do not edit receipts by hand.

agentProvider and agentModel optionally override the route for newly created role Sessions; leaving both empty follows normal DSH routing.