workspace-tabs

Manage and deduplicate React-based workspace tabs across Nomendex plugins.

9|3|Updated Jan 13, 2026
One-click install
npx skills add https://github.com/firstloophq/nomendex --skill workspace-tabs
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: workspace-tabs
Source: https://github.com/firstloophq/nomendex/tree/main/.claude/skills/workspace-tabs
Command: npx skills add https://github.com/firstloophq/nomendex --skill workspace-tabs

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Managing and deduplicating workspace tabs across plugins in Nomendex to prevent tab clutter, conflicts, and confusion when switching contexts.

Core Features & Use Cases

  • Smart tab opening with openTab() that focuses existing tabs or creates a new active tab when no match is found.
  • Dual-tab creation strategy via addNewTab() for intentional duplicates, without auto-activation.
  • Robust duplicate-detection rules based on plugin ID, view ID, and per-plugin props; supports notes, todos, and chat workflows.
  • Clear guidance on debugging and usage patterns including common patterns like opening notes, open todos browser, and launching chat.

Quick Start

Open the Nomendex workspace and use openTab to focus an existing tab or create a new one as needed.

Frequently Asked Questions about workspace-tabs

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I deduplicate workspace tabs across React plugins?

To deduplicate workspace tabs, use the openTab function to focus existing tabs or create new ones based on plugin ID, view ID, and props. This prevents tab clutter by matching identifiers and avoiding redundant tab creation during cross-plugin interactions.

Why does updateWorkspace cause stale closure issues with tab state?

Stale closures occur when updateWorkspace doesn't use previous state in callbacks. The workspace-tabs logic defines rules ensuring updateWorkspace uses the previous state in callbacks to avoid stale closures, preventing outdated tab data from persisting during React-based workspace interactions.

Can I intentionally create duplicate tabs without auto-activation?

Yes, the addNewTab function provides a dual-tab creation strategy for intentional duplicates without auto-activation. Unlike openTab which focuses existing tabs, addNewTab creates new tabs deliberately, supporting workflows that require multiple instances of the same view across plugins.

What's the best way to handle cross-plugin tab interactions for notes, todos, and chat?

The best way is using openTab with duplicate detection rules based on plugin ID, view ID, and per-plugin props. This ensures cross-plugin tab interactions for notes, todos, and chat workflows prevent conflicts and context confusion when switching between different plugin views.

Does this tab management approach work with TypeScript and React?

Yes, the WorkspaceTab structure and core functions addNewTab and openTab are designed for React-based workspace environments using TypeScript. They handle tab management across plugins with type-safe structures during both development and runtime in the Nomendex workspace.