> ## Documentation Index
> Fetch the complete documentation index at: https://docs.rigbox.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Tool Status

> Get the current status of a specific tool in a workspace.



## OpenAPI

````yaml GET /api/v1/workspaces/{id}/tools/{tool}/status
openapi: 3.1.0
info:
  title: Rigbox Public API
  description: >-
    Gateway-owned public API for Rigbox. The gateway composes its local
    lifecycle API with service-owned exported specs.
  contact:
    name: Rigbox
    url: https://rigbox.dev
  license:
    name: ''
  version: 1.0.0
servers:
  - url: https://api.rigbox.dev
    description: Production gateway
security: []
tags:
  - name: Workspaces
  - name: CLI
  - name: Observability
  - name: Auth
  - name: API Keys
  - name: Access Control
  - name: Apps
  - name: App Catalog
  - name: Logs
  - name: AI
  - name: Tools
  - name: Snapshots
  - name: SSH Keys
  - name: Templates
  - name: Setup Scripts
  - name: Service Specs
  - name: Deploy
  - name: Community
  - name: User Settings
  - name: Roadmap
  - name: System
paths:
  /api/v1/workspaces/{id}/tools/{tool}/status:
    get:
      tags:
        - Tools
      summary: Get the status of a specific tool.
      description: Get the current status of a specific tool in a workspace.
      operationId: get_tool_status
      parameters:
        - name: id
          in: path
          description: Workspace ID
          required: true
          schema:
            type: string
        - name: tool
          in: path
          description: Tool ID
          required: true
          schema:
            type: string
      responses:
        '200':
          description: Tool status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ToolStatus'
      security:
        - bearer: []
components:
  schemas:
    ToolStatus:
      allOf:
        - $ref: '#/components/schemas/WorkspaceTool'
        - type: object
          required:
            - available
            - running
            - project_roots_truncated
          properties:
            available:
              type: boolean
            needs_install:
              type: boolean
              description: |-
                True if the tool requires setup before it can analyze/launch.
                Discovery may still work but full functionality needs install.
            project_roots:
              type: array
              items:
                type: string
            project_roots_truncated:
              type: boolean
            running:
              type: boolean
            started_at_ms:
              type:
                - integer
                - 'null'
              format: int64
              minimum: 0
            status_sys:
              type:
                - string
                - 'null'
              description: >-
                Lifecycle state reported by the tool's background process.

                Values are tool-defined (e.g. "analyzing", "installing",
                "building").

                None when idle or no background process is running.
            unavailable_reason:
              type:
                - string
                - 'null'
              description: Brief explanation of why the tool is unavailable.
            url:
              type:
                - string
                - 'null'
    WorkspaceTool:
      type: object
      required:
        - id
        - name
        - description
        - icon
        - category
        - port
        - subdomain_suffix
        - discovery
      properties:
        category:
          type: string
        description:
          type: string
        discovery:
          $ref: '#/components/schemas/DiscoveryStrategy'
          description: How this tool detects availability.
        icon:
          type: string
        id:
          type: string
        install_hint:
          type:
            - string
            - 'null'
          description: |-
            User-facing install command when the tool needs setup.
            Shown in the UI when the tool is unavailable or partially available.
        name:
          type: string
        port:
          type: integer
          format: int32
          description: Port the tool listens on inside the VM.
          minimum: 0
        subdomain_suffix:
          type: string
          description: Subdomain suffix - e.g. "arch" → arch-{ws_id}.rigbox.dev
        tags:
          type: array
          items:
            type: string
          description: Tags indicating supported languages, runtimes, etc.
          uniqueItems: true
    DiscoveryStrategy:
      oneOf:
        - type: object
          description: Search for a file by name within $HOME.
          required:
            - filenames
            - max_depth
            - max_projects
            - type
          properties:
            exclude_paths:
              type: array
              items:
                type: string
            filenames:
              type: array
              items:
                type: string
            max_depth:
              type: integer
              format: int32
              minimum: 0
            max_projects:
              type: integer
              format: int32
              minimum: 0
            type:
              type: string
              enum:
                - FilePresence
        - type: object
          description: Check if all listed binaries exist on PATH.
          required:
            - commands
            - type
          properties:
            commands:
              type: array
              items:
                type: string
            type:
              type: string
              enum:
                - CommandAvailable
        - type: object
          description: Always available - no detection needed.
          required:
            - type
          properties:
            type:
              type: string
              enum:
                - Always
      description: How a tool discovers whether it's available in a workspace.
  securitySchemes:
    bearer:
      type: http
      scheme: bearer

````