oclaw/uds-auth
oliver 1f2ff7e00b Block inert composer card clicks unless super_admin.
The workspace picker opens from data-composer-card with cardWorkspaceTrigger, not the aria-label node; lock that surface for non-creators.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-09-08 09:25:43 +08:00
..
lib Block inert composer card clicks unless super_admin. 2026-09-08 09:25:43 +08:00
.gitignore Enforce multi-user ACL for sessions, settings, and workspaces. 2026-09-08 04:29:48 +08:00
config.default.yaml Enforce multi-user ACL for sessions, settings, and workspaces. 2026-09-08 04:29:48 +08:00
cordis.patch.yml Enforce multi-user ACL for sessions, settings, and workspaces. 2026-09-08 04:29:48 +08:00
package-lock.json Restore uds-auth in oclaw: DSH plugin with token+profile auth, settings UI, and pagination. 2026-09-08 01:46:17 +08:00
package.json Restore uds-auth in oclaw: DSH plugin with token+profile auth, settings UI, and pagination. 2026-09-08 01:46:17 +08:00
pnpm-lock.yaml change log in 2026-09-08 00:28:58 +08:00
README.md Restore uds-auth in oclaw: DSH plugin with token+profile auth, settings UI, and pagination. 2026-09-08 01:46:17 +08:00
README.zh.md Restore uds-auth in oclaw: DSH plugin with token+profile auth, settings UI, and pagination. 2026-09-08 01:46:17 +08:00

uds-auth

UDS authentication plugin for DeepSeek Harness: fixed sidebar login badge + host session/role APIs.

Install

dsh plugin --profile web add -w "D:/project/chatgpt/oclaw/uds-auth"

Restart Harness after install. The badge mounts on sidebar.footer.action (root scope).

Config

uacBaseUrl: https://uac.zte.com.cn
userSearchUrl: https://icenterapi.zte.com.cn/zte-km-icenter-addresearch/user/plain/docs/search
loginSystemCode: '100000455558'
originSystemCode: ''

Layout

Piece Path Role
Host lib/index.js Cordis apply: settings, RPC, /uds-auth/*
Client lib/client.js ModuleLoader + React footer login card
Bundle cordis.patch.yml layer insert only
Meta package.json dsh.client ./client + slots inject

The login panel uses position: fixed with a measured trigger anchor (same pattern as CordisPanel) so the sidebar overflow clip cannot hide it.

License

MIT