gitlab.com/Raven-IO/raven-delve@v1.22.4/Documentation/api/README.md (about)

     1  # Server/Client API Documentation
     2  
     3  Delve exposes two API interfaces, JSON-RPC and DAP, so that frontends other than the built-in [terminal client](../cli/README.md), such as [IDEs and editors](../EditorIntegration.md), can interact with Delve programmatically. The [JSON-RPC API](json-rpc/README.md) is used by the [terminal client](../cli/README.md), and will always stay up to date in lockstep regardless of new features. The [DAP API](dap/README.md) is a popular generic API already in use by many [tools](https://microsoft.github.io/debug-adapter-protocol/implementors/tools/).
     4  
     5  ## Usage
     6  
     7  In order to run Delve in "API mode", simply invoke with one of the standard commands, providing the `--headless` flag, like so:
     8  
     9  ```
    10  $ dlv debug --headless --api-version=2 --log --log-output=debugger,dap,rpc --listen=127.0.0.1:8181
    11  ```
    12  
    13  This will start the debugger in a non-interactive mode, listening on the specified address, and will enable logging. The logging flags as well as the server address are optional, of course.
    14  
    15  Optionally, you may also specify the `--accept-multiclient` flag if you would like to connect multiple JSON-RPC or DAP clients to the API.
    16  
    17  You can connect to the headless debugger from Delve itself using the `connect` subcommand:
    18  
    19  ```
    20  $ dlv connect 127.0.0.1:8181
    21  ```
    22  
    23  This can be useful for remote debugging.
    24  
    25  ## API Interfaces
    26  
    27  Delve has been architected in such a way as to allow multiple client/server implementations. All of the "business logic" as it were is abstracted away from the actual client/server implementations, allowing for easy implementation of new API interfaces.
    28  
    29  ### Current API Interfaces
    30  
    31  - [JSON-RPC](json-rpc/README.md)
    32  - [DAP](dap/README.md)