For AI agents: the complete documentation index is available at /next/llms.txt, the full documentation bundle is available at /next/llms-full.txt, and this page is available as Markdown at /next/api/cdp/api-ref/recording.md.
Lynx
  • English
  • Recording

    This page documents the Recording CDP domain supported by Lynx DevTool.

    Experimental reference

    This generated reference is still being completed.

    • CDP events are not included yet.
    • Some Lynx extensions are listed but do not yet have detailed documentation.
    • Method descriptions are not automatically verified against the implementation and may be incomplete or inaccurate.

    Verify behavior against the implementation and the linked upstream CDP reference before relying on it.

    Overview

    • Scope: global-and-instance
    • CDP domain: Lynx-specific

    Lynx Extensions

    Recording.end

    Stops TestBench recording and emits stream handles for generated recording files.

    • Origin: lynx-extension
    • Source: devtool/lynx_devtool/agent/domain_agent/inspector_testbench_recorder_agent.cc
    Parameters

    No parameters.

    Returns

    No return fields.

    Events
    • Recording.recordingComplete
    Notes
    • Recorder support must be enabled in the current runtime. If RecorderController::Enable() is false, the agent returns method not implemented.
    • Dispatches through LynxGlobalDevToolMediator and calls RecorderController::EndRecord() on the UI task runner.
    • Returns an empty result object after the end-record request is accepted.
    • Sends Recording.recordingComplete asynchronously after the recorder writes the output files.
    • Recording.recordingComplete.params.stream is an array of FileStream handles. Read each handle with IO.read and close it with IO.close.
    • Recording.recordingComplete.params.filenames contains the generated file paths. Recording.recordingComplete.params.sessionIDs contains matching session ids or -1 when the recorder has no mapped session id.
    • Recording.recordingComplete.params.recordFormat is json.
    • The TestBench recorder writes compressed and base64-encoded JSON content to each generated file.
    Examples

    Stop recording

    Request:

    {
      "id": 2,
      "method": "Recording.end"
    }

    Response:

    {
      "id": 2,
      "result": {}
    }

    Recording complete notification

    Response:

    {
      "method": "Recording.recordingComplete",
      "params": {
        "stream": [1],
        "filenames": ["/tmp/1001.json"],
        "sessionIDs": [1001],
        "recordFormat": "json"
      }
    }

    Recording.start

    Starts TestBench recording for Lynx page interactions.

    • Origin: lynx-extension
    • Source: devtool/lynx_devtool/agent/domain_agent/inspector_testbench_recorder_agent.cc
    Parameters

    No parameters.

    Returns

    No return fields.

    Notes
    • Recorder support must be enabled in the current runtime. If RecorderController::Enable() is false, the agent returns method not implemented.
    • Dispatches through LynxGlobalDevToolMediator and starts RecorderController::StartRecord() on the UI task runner.
    • Returns an empty result object on success.
    • Returns a CDP error with message Cannot find ui task runner when no UI task runner is available.
    Examples

    Start recording

    Request:

    {
      "id": 1,
      "method": "Recording.start"
    }

    Response:

    {
      "id": 1,
      "result": {}
    }
    Except as otherwise noted, this work is licensed under a Creative Commons Attribution 4.0 International License, and code samples are licensed under the Apache License 2.0.