{"id":96415,"plugin_id":"plugin_asdk_app_6ae80f414a488191a582e24283b42d9b","kind":"skill","collection_source":"plugin_package","comparison_source":null,"observed_at":"2026-11-14T06:08:46.928Z","digest":"400d624452368c6cf5dcd2ecf5c822bd9403cf1d9a8fbd60935ed4339897f267","against":null,"payload":{"description":"Connect Firmory and confirm which team the current OAuth session can access.","included_files":[],"name":"setup","skill_md_contents":"---\nname: setup\ndescription: Connect Firmory and confirm which team the current OAuth session can access.\n---\n\n# Connect Firmory\n\nSelect this plugin’s `firmory_cloud` server. Use the client’s sign-in action and let the user choose their team on the Firmory consent screen. Keep passwords, verification codes, tokens and OAuth callbacks in that flow.\n\nCall `workspace` with `{}` on the authorized connection. Check `isError` before reading `structuredContent.team.name`. Only report that team as connected after a successful response. The call also returns `space.rootNodeId` and `space.teamLibraryNodeId` for browsing. Offer a first question in the user’s language. For example: “Which projects can I access in my Firmory workspace?”, “我可以访问哪些团队项目？” or “我可以存取哪些團隊專案？”\n\nIf `workspace` is unavailable, report that the workspace could not be verified. On a declined authorization, stop. On an expired authorization, reconnect through the host. To switch teams, authorize the intended team, discard previous IDs and cursors, and call `workspace` again.\n"},"changes":[],"summary":"First saved snapshot. No earlier version is available for comparison.","summary_kind":"deterministic","summary_metadata":{}}