Resources Page

The Resources page in the BioCortex Web UI lets users discover and reference all available databases, tools, and analysis packages in one place. The same registry drives planning and execution, so what you see here is what the Planner and Executor can use.

What You See

  • Three tabs: Databases, Tools, Packages
  • Search — Filter by name, description, or domain (placeholder changes per tab: “Search databases…”, “Search tools…”, “Search packages…”).
  • Hint — “Use @ in the chat to reference these resources. BioCortex can automatically query and use them in your analysis.”
  • Count — e.g. “X Databases / Tools / Packages Available”.
  • Grouped cards — Resources grouped by domain (e.g. Literature, Genomics, Protocols). Each card shows:
    • Icon (database / wrench / package by tab)
    • Name
    • Description
    • Tag (category/domain)
    • External-link style icon (for future deep links or docs).

How Classification Works

The backend GET /api/v1/resources returns three lists derived from the current tool registry:
  • Databases — Tools whose domain is database or literature (e.g. PubMed, NCBI Gene, AutoFigure-from-paper, AI-Researcher).
  • Tools — All other tools (e.g. protocols, browser, AutoFigure-from-text, general utilities).
  • Packages — Tools whose domain is one of the analysis-oriented domains (e.g. genomics, molecular_biology, cell_biology, ecology, pharmacology, systems_biology, proteomics, metabolomics, etc.).
So “Databases” = data/literature sources; “Tools” = execution utilities; “Packages” = domain analysis tools. The exact domain sets are defined in the backend (api.py).

Project–Chat Linkage

The Project panel (Tasks/Files) is shown only on the Chat page. On the Resources page (and Automation, Files, Settings), the sidebar does not show project context — only the main navigation (Chat, Files, Automation, Resources, Settings). This keeps Resources focused on discovery and reference.

API

  • Endpoint: GET /api/v1/resources
  • Response: { "databases": [...], "tools": [...], "packages": [...] }
  • Each item: { "name", "description", "domain", "parameters" }
The frontend calls this once on load and applies search and tab filtering locally. Adding or removing tools (e.g. via Adding Tools and Agents) updates the list after the next backend load/restart.

Next Steps