Skip to repository content

tenant.openagents/omega

No repository description is available.

OpenAgents Git authority 2026-07-28T05:20:51.322Z Public web read
NIP-34 coordinate30617:7649603503856e5148d571eac2766b288a8ff1e9e35d380337a1d2b0015b4f92:omega
MaintainersHidden in public view
References2 branches · 1 tag
Read-only clonegit clone https://openagents.com/git/tenant.openagents/omega.git
Browse files

dap.wit

124 lines · 4.4 KB · text
1interface dap {
2    use common.{env-vars};
3
4    /// Resolves a specified TcpArgumentsTemplate into TcpArguments
5    resolve-tcp-template: func(template: tcp-arguments-template) -> result<tcp-arguments, string>;
6
7    record launch-request {
8        program: string,
9        cwd: option<string>,
10        args: list<string>,
11        envs: env-vars,
12    }
13
14    record attach-request {
15        process-id: option<u32>,
16    }
17
18    variant debug-request {
19        launch(launch-request),
20        attach(attach-request)
21    }
22
23    record tcp-arguments {
24        port: u16,
25        host: u32,
26        timeout: option<u64>,
27    }
28
29    record tcp-arguments-template {
30        port: option<u16>,
31        host: option<u32>,
32        timeout: option<u64>,
33    }
34
35    /// Debug Config is the "highest-level" configuration for a debug session.
36    /// It comes from a new process modal UI; thus, it is essentially debug-adapter-agnostic.
37    /// It is expected of the extension to translate this generic configuration into something that can be debugged by the adapter (debug scenario).
38    record debug-config {
39        /// Name of the debug task
40        label: string,
41        /// The debug adapter to use
42        adapter: string,
43        request: debug-request,
44        stop-on-entry: option<bool>,
45    }
46
47    record task-template {
48        /// Human readable name of the task to display in the UI.
49        label: string,
50        /// Executable command to spawn.
51        command: string,
52        args: list<string>,
53        env: env-vars,
54        cwd: option<string>,
55    }
56
57    /// A task template with substituted task variables.
58    type resolved-task = task-template;
59
60    /// A task template for building a debug target.
61    type build-task-template = task-template;
62
63    variant build-task-definition {
64        by-name(string),
65        template(build-task-definition-template-payload )
66    }
67    record build-task-definition-template-payload {
68        locator-name: option<string>,
69        template: build-task-template
70    }
71
72    /// Debug Scenario is the user-facing configuration type (used in debug.json). It is still concerned with what to debug and not necessarily how to do it (except for any
73    /// debug-adapter-specific configuration options).
74    record debug-scenario {
75        /// Unsubstituted label for the task.DebugAdapterBinary
76        label: string,
77        /// Name of the Debug Adapter this configuration is intended for.
78        adapter: string,
79        /// An optional build step to be ran prior to starting a debug session. Build steps are used by Zed's locators to locate the executable to debug.
80        build: option<build-task-definition>,
81        /// JSON-encoded configuration for a given debug adapter.
82        config: string,
83        /// TCP connection parameters (if they were specified by user)
84        tcp-connection: option<tcp-arguments-template>,
85    }
86
87    enum start-debugging-request-arguments-request {
88        launch,
89        attach,
90    }
91
92    record debug-task-definition {
93        /// Unsubstituted label for the task.DebugAdapterBinary
94        label: string,
95        /// Name of the Debug Adapter this configuration is intended for.
96        adapter: string,
97        /// JSON-encoded configuration for a given debug adapter.
98        config: string,
99        /// TCP connection parameters (if they were specified by user)
100        tcp-connection: option<tcp-arguments-template>,
101    }
102
103    record start-debugging-request-arguments {
104        /// JSON-encoded configuration for a given debug adapter. It is specific to each debug adapter.
105        /// `configuration` will have it's Zed variable references substituted prior to being passed to the debug adapter.
106        configuration: string,
107        request: start-debugging-request-arguments-request,
108    }
109
110    /// The lowest-level representation of a debug session, which specifies:
111    /// - How to start a debug adapter process
112    /// - How to start a debug session with it (using DAP protocol)
113    /// for a given debug scenario.
114    record debug-adapter-binary {
115        command: option<string>,
116        arguments: list<string>,
117        envs: env-vars,
118        cwd: option<string>,
119        /// Zed will use TCP transport if `connection` is specified.
120        connection: option<tcp-arguments>,
121        request-args: start-debugging-request-arguments
122    }
123}
124
Served at tenant.openagents/omega Member data and write actions are omitted.