svrnty-hermes-webui-plugin/CONNECTION-MAP.md
Svrnty 849dd27119
Some checks failed
plugin-tests / test (push) Failing after 6s
feat(adwright panel): add cross-link button to BTE Command Center
Header now shows ↗ BTE button next to the profile status pill. Click
invokes window.SvrntyBTE.open() to surface the BTE overlay, satisfying
the "Adwright pulls content from BTE panel" integration goal at the UX
level. Asset-URL-level integration follows automatically once cycles
contain BTE-rendered asset references (post Phase 8).

Themed via existing CSS vars (--accent, --border2, --accent-bg, etc) —
zero hardcoded colors. CONNECTION-MAP regenerated.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-24 12:19:17 -04:00

3.0 KiB

CONNECTION MAP — svrnty-hermes-webui-plugin → nesquena/hermes-webui

Upstream version: v0.51.118
Plugin version: 0.4.0
Total dependencies: 24 (19 public API · 0 forced internal · 5 frontend)

Auto-generated by scripts/ast-connection-map.py. Do not hand-edit. To change a justification, edit the # CONNECTION: comment above the relevant import and re-run the script.


Public API dependencies (via loader-provided api)

Plugin location Upstream symbol Snippet
plugin.py:29 api.logger log = api.logger("svrnty.plugin")
plugin.py:34 api.register_static api.register_static(STATIC_PREFIX, str(STATIC_DIR))
plugin.py:35 api.inject_stylesheet api.inject_stylesheet(f"/plugins/{STATIC_PREFIX}/app.css")
plugin.py:36 api.inject_script api.inject_script(f"/plugins/{STATIC_PREFIX}/app.js")
plugin.py:40 api.inject_stylesheet api.inject_stylesheet(f"/plugins/{STATIC_PREFIX}/adwright.css")
plugin.py:41 api.inject_script api.inject_script(f"/plugins/{STATIC_PREFIX}/adwright.js")
plugin.py:46 api.inject_stylesheet api.inject_stylesheet(f"/plugins/{STATIC_PREFIX}/bte.css")
plugin.py:47 api.inject_script api.inject_script(f"/plugins/{STATIC_PREFIX}/bte.js")
routes/adwright.py:68 api.logger log = api.logger("svrnty.routes.adwright")
routes/adwright.py:69 api.register_route api.register_route(
routes/adwright.py:71 api.register_route api.register_route(
routes/bte_proxy.py:40 api.logger log = api.logger("svrnty.routes.bte_proxy")
routes/bte_proxy.py:41 api.register_route api.register_route("/api/bte/proxy", "GET", _handle_proxy)
routes/bte_proxy.py:42 api.register_route api.register_route("/api/bte/proxy", "POST", _handle_proxy)
routes/transcribe.py:37 api.logger log = api.logger("svrnty.routes.transcribe")
routes/transcribe.py:38 api.register_route api.register_route("/api/transcribe", "POST", _handle_transcribe)
routes/transcribe.py:39 api.register_audio_attachment_processor api.register_audio_attachment_processor(_transcribe_audio_attachments)
routes/vault_status.py:19 api.logger log = api.logger("svrnty.routes.vault_status")
routes/vault_status.py:20 api.register_route api.register_route("/api/vault/status", "GET", _handle_vault_status)

Forced internal dependencies (Rule 2 escape hatch)

Each row requires a # CONNECTION: <reason> comment in source.

None. Plugin uses only the public API.


Frontend dependencies (static/.js → /api/ URLs)

File Line URL
static/bte.js 330 /api/command/requestPhotoshoot
static/bte.js 369 /api/query/assetGrid
static/bte.js 483 /api/command/rateAsset
static/adwright.js 484 /api/adwright/provision-creds
static/app.js 165 /api/vault/status