@oh-my-pi/pi-coding-agent 13.19.0 → 14.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +277 -2
- package/package.json +86 -20
- package/scripts/format-prompts.ts +2 -2
- package/src/autoresearch/apply-contract-to-state.ts +24 -0
- package/src/autoresearch/contract.ts +0 -44
- package/src/autoresearch/dashboard.ts +1 -2
- package/src/autoresearch/git.ts +91 -0
- package/src/autoresearch/helpers.ts +49 -0
- package/src/autoresearch/index.ts +28 -187
- package/src/autoresearch/prompt.md +26 -9
- package/src/autoresearch/state.ts +0 -6
- package/src/autoresearch/tools/init-experiment.ts +202 -117
- package/src/autoresearch/tools/log-experiment.ts +83 -125
- package/src/autoresearch/tools/run-experiment.ts +48 -10
- package/src/autoresearch/types.ts +2 -2
- package/src/capability/index.ts +4 -2
- package/src/cli/file-processor.ts +3 -3
- package/src/cli/grep-cli.ts +8 -8
- package/src/cli/grievances-cli.ts +78 -0
- package/src/cli/read-cli.ts +67 -0
- package/src/cli/setup-cli.ts +4 -4
- package/src/cli/update-cli.ts +3 -3
- package/src/cli.ts +2 -0
- package/src/commands/grep.ts +6 -1
- package/src/commands/grievances.ts +20 -0
- package/src/commands/read.ts +33 -0
- package/src/commit/agentic/agent.ts +5 -5
- package/src/commit/agentic/index.ts +3 -4
- package/src/commit/agentic/tools/analyze-file.ts +3 -3
- package/src/commit/agentic/validation.ts +1 -1
- package/src/commit/analysis/conventional.ts +4 -4
- package/src/commit/analysis/summary.ts +3 -3
- package/src/commit/changelog/generate.ts +4 -4
- package/src/commit/map-reduce/map-phase.ts +4 -4
- package/src/commit/map-reduce/reduce-phase.ts +4 -4
- package/src/commit/pipeline.ts +3 -4
- package/src/config/model-registry.ts +17 -3
- package/src/config/prompt-templates.ts +44 -226
- package/src/config/resolve-config-value.ts +4 -2
- package/src/config/settings-schema.ts +54 -2
- package/src/config/settings.ts +25 -26
- package/src/dap/client.ts +674 -0
- package/src/dap/config.ts +150 -0
- package/src/dap/defaults.json +211 -0
- package/src/dap/index.ts +4 -0
- package/src/dap/session.ts +1255 -0
- package/src/dap/types.ts +600 -0
- package/src/debug/log-viewer.ts +3 -2
- package/src/discovery/builtin.ts +1 -2
- package/src/discovery/codex.ts +2 -2
- package/src/discovery/github.ts +2 -1
- package/src/discovery/helpers.ts +2 -2
- package/src/discovery/opencode.ts +2 -2
- package/src/edit/diff.ts +818 -0
- package/src/edit/index.ts +309 -0
- package/src/edit/line-hash.ts +67 -0
- package/src/edit/modes/chunk.ts +454 -0
- package/src/{patch → edit/modes}/hashline.ts +741 -361
- package/src/{patch/applicator.ts → edit/modes/patch.ts} +420 -117
- package/src/{patch/fuzzy.ts → edit/modes/replace.ts} +519 -197
- package/src/{patch → edit}/normalize.ts +97 -76
- package/src/{patch/shared.ts → edit/renderer.ts} +181 -108
- package/src/exec/bash-executor.ts +4 -2
- package/src/exec/idle-timeout-watchdog.ts +126 -0
- package/src/exec/non-interactive-env.ts +5 -0
- package/src/extensibility/custom-commands/bundled/ci-green/index.ts +2 -2
- package/src/extensibility/custom-commands/bundled/review/index.ts +36 -15
- package/src/extensibility/custom-commands/loader.ts +1 -2
- package/src/extensibility/custom-tools/loader.ts +34 -11
- package/src/extensibility/extensions/loader.ts +9 -4
- package/src/extensibility/extensions/runner.ts +24 -1
- package/src/extensibility/extensions/types.ts +1 -1
- package/src/extensibility/hooks/loader.ts +5 -6
- package/src/extensibility/hooks/types.ts +1 -1
- package/src/extensibility/plugins/doctor.ts +2 -1
- package/src/extensibility/slash-commands.ts +3 -7
- package/src/index.ts +2 -1
- package/src/internal-urls/docs-index.generated.ts +11 -11
- package/src/ipy/executor.ts +58 -17
- package/src/ipy/gateway-coordinator.ts +6 -4
- package/src/ipy/kernel.ts +45 -22
- package/src/ipy/runtime.ts +2 -2
- package/src/lsp/client.ts +7 -4
- package/src/lsp/clients/lsp-linter-client.ts +4 -4
- package/src/lsp/config.ts +20 -4
- package/src/lsp/defaults.json +688 -154
- package/src/lsp/index.ts +234 -45
- package/src/lsp/lspmux.ts +2 -2
- package/src/lsp/startup-events.ts +13 -0
- package/src/lsp/types.ts +12 -1
- package/src/lsp/utils.ts +8 -1
- package/src/main.ts +102 -46
- package/src/memories/index.ts +4 -5
- package/src/modes/acp/acp-agent.ts +563 -163
- package/src/modes/acp/acp-event-mapper.ts +9 -1
- package/src/modes/acp/acp-mode.ts +4 -2
- package/src/modes/components/agent-dashboard.ts +3 -4
- package/src/modes/components/diff.ts +6 -7
- package/src/modes/components/read-tool-group.ts +6 -12
- package/src/modes/components/session-observer-overlay.ts +21 -12
- package/src/modes/components/settings-defs.ts +5 -0
- package/src/modes/components/tool-execution.ts +1 -1
- package/src/modes/components/welcome.ts +1 -1
- package/src/modes/controllers/btw-controller.ts +2 -2
- package/src/modes/controllers/command-controller.ts +3 -2
- package/src/modes/controllers/input-controller.ts +12 -8
- package/src/modes/index.ts +20 -2
- package/src/modes/interactive-mode.ts +94 -37
- package/src/modes/rpc/host-tools.ts +186 -0
- package/src/modes/rpc/rpc-client.ts +178 -13
- package/src/modes/rpc/rpc-mode.ts +73 -3
- package/src/modes/rpc/rpc-types.ts +53 -1
- package/src/modes/theme/theme.ts +80 -8
- package/src/modes/types.ts +2 -2
- package/src/prompts/review-request.md +6 -0
- package/src/prompts/system/system-prompt.md +2 -1
- package/src/prompts/tools/chunk-edit.md +223 -0
- package/src/prompts/tools/debug.md +43 -0
- package/src/prompts/tools/grep.md +3 -0
- package/src/prompts/tools/lsp.md +5 -5
- package/src/prompts/tools/read-chunk.md +17 -0
- package/src/prompts/tools/read.md +19 -5
- package/src/sdk.ts +190 -154
- package/src/secrets/obfuscator.ts +1 -1
- package/src/session/agent-session.ts +306 -256
- package/src/session/agent-storage.ts +12 -12
- package/src/session/compaction/branch-summarization.ts +3 -3
- package/src/session/compaction/compaction.ts +5 -6
- package/src/session/compaction/utils.ts +3 -3
- package/src/session/history-storage.ts +62 -19
- package/src/session/messages.ts +3 -3
- package/src/session/session-dump-format.ts +203 -0
- package/src/session/session-storage.ts +4 -2
- package/src/session/streaming-output.ts +1 -1
- package/src/session/tool-choice-queue.ts +213 -0
- package/src/slash-commands/builtin-registry.ts +56 -8
- package/src/ssh/connection-manager.ts +2 -2
- package/src/ssh/sshfs-mount.ts +5 -5
- package/src/stt/downloader.ts +4 -4
- package/src/stt/recorder.ts +4 -4
- package/src/stt/transcriber.ts +2 -2
- package/src/system-prompt.ts +21 -13
- package/src/task/agents.ts +5 -6
- package/src/task/commands.ts +2 -5
- package/src/task/executor.ts +4 -4
- package/src/task/index.ts +3 -4
- package/src/task/template.ts +2 -2
- package/src/task/worktree.ts +4 -4
- package/src/tools/ask.ts +2 -3
- package/src/tools/ast-edit.ts +7 -7
- package/src/tools/ast-grep.ts +7 -7
- package/src/tools/auto-generated-guard.ts +36 -41
- package/src/tools/await-tool.ts +2 -2
- package/src/tools/bash.ts +5 -23
- package/src/tools/browser.ts +4 -5
- package/src/tools/calculator.ts +2 -3
- package/src/tools/cancel-job.ts +2 -2
- package/src/tools/checkpoint.ts +3 -3
- package/src/tools/debug.ts +1007 -0
- package/src/tools/exit-plan-mode.ts +2 -3
- package/src/tools/fetch.ts +67 -3
- package/src/tools/find.ts +4 -5
- package/src/tools/fs-cache-invalidation.ts +5 -0
- package/src/tools/gemini-image.ts +13 -5
- package/src/tools/gh.ts +10 -11
- package/src/tools/grep.ts +57 -9
- package/src/tools/index.ts +44 -22
- package/src/tools/inspect-image.ts +4 -4
- package/src/tools/output-meta.ts +1 -1
- package/src/tools/python.ts +19 -6
- package/src/tools/read.ts +198 -67
- package/src/tools/render-mermaid.ts +2 -3
- package/src/tools/render-utils.ts +20 -6
- package/src/tools/renderers.ts +3 -1
- package/src/tools/report-tool-issue.ts +80 -0
- package/src/tools/resolve.ts +70 -39
- package/src/tools/search-tool-bm25.ts +2 -2
- package/src/tools/ssh.ts +2 -2
- package/src/tools/todo-write.ts +2 -2
- package/src/tools/tool-timeouts.ts +1 -0
- package/src/tools/write.ts +5 -6
- package/src/tui/tree-list.ts +3 -1
- package/src/utils/clipboard.ts +80 -0
- package/src/utils/commit-message-generator.ts +2 -3
- package/src/utils/edit-mode.ts +49 -0
- package/src/utils/file-display-mode.ts +6 -5
- package/src/utils/file-mentions.ts +8 -7
- package/src/utils/git.ts +4 -4
- package/src/utils/image-loading.ts +98 -0
- package/src/utils/title-generator.ts +2 -3
- package/src/utils/tools-manager.ts +6 -6
- package/src/web/scrapers/choosealicense.ts +1 -1
- package/src/web/search/index.ts +3 -3
- package/src/autoresearch/command-initialize.md +0 -34
- package/src/patch/diff.ts +0 -433
- package/src/patch/index.ts +0 -888
- package/src/patch/parser.ts +0 -532
- package/src/patch/types.ts +0 -292
- package/src/prompts/agents/oracle.md +0 -77
- package/src/tools/pending-action.ts +0 -49
- package/src/utils/child-process.ts +0 -88
- package/src/utils/frontmatter.ts +0 -117
- package/src/utils/image-input.ts +0 -274
- package/src/utils/mime.ts +0 -53
- package/src/utils/prompt-format.ts +0 -170
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
import * as path from "node:path";
|
|
2
|
+
import { isRecord } from "@oh-my-pi/pi-utils";
|
|
3
|
+
import { hasRootMarkers, resolveCommand } from "../lsp/config";
|
|
4
|
+
import DEFAULTS from "./defaults.json" with { type: "json" };
|
|
5
|
+
import type { DapAdapterConfig, DapResolvedAdapter } from "./types";
|
|
6
|
+
|
|
7
|
+
const EXTENSIONLESS_DEBUGGER_ORDER = ["gdb", "lldb-dap"] as const;
|
|
8
|
+
|
|
9
|
+
function normalizeStringArray(value: unknown): string[] {
|
|
10
|
+
if (!Array.isArray(value)) return [];
|
|
11
|
+
return value.filter((entry): entry is string => typeof entry === "string" && entry.length > 0);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
function normalizeObject(value: unknown): Record<string, unknown> {
|
|
15
|
+
return isRecord(value) ? { ...value } : {};
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
function normalizeAdapterConfig(config: unknown): DapAdapterConfig | null {
|
|
19
|
+
if (!isRecord(config)) return null;
|
|
20
|
+
if (typeof config.command !== "string" || config.command.length === 0) return null;
|
|
21
|
+
const connectMode = config.connectMode === "socket" ? ("socket" as const) : undefined;
|
|
22
|
+
return {
|
|
23
|
+
command: config.command,
|
|
24
|
+
args: normalizeStringArray(config.args),
|
|
25
|
+
languages: normalizeStringArray(config.languages),
|
|
26
|
+
fileTypes: normalizeStringArray(config.fileTypes).map(entry => entry.toLowerCase()),
|
|
27
|
+
rootMarkers: normalizeStringArray(config.rootMarkers),
|
|
28
|
+
launchDefaults: normalizeObject(config.launchDefaults),
|
|
29
|
+
attachDefaults: normalizeObject(config.attachDefaults),
|
|
30
|
+
...(connectMode ? { connectMode } : {}),
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
function getDefaults(): Record<string, DapAdapterConfig> {
|
|
35
|
+
const adapters: Record<string, DapAdapterConfig> = {};
|
|
36
|
+
for (const [name, config] of Object.entries(DEFAULTS)) {
|
|
37
|
+
const normalized = normalizeAdapterConfig(config);
|
|
38
|
+
if (normalized) {
|
|
39
|
+
adapters[name] = normalized;
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
return adapters;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
const DEFAULT_ADAPTERS = getDefaults();
|
|
46
|
+
|
|
47
|
+
export function getAdapterConfigs(): Record<string, DapAdapterConfig> {
|
|
48
|
+
return { ...DEFAULT_ADAPTERS };
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
export function resolveAdapter(adapterName: string, cwd: string): DapResolvedAdapter | null {
|
|
52
|
+
const config = DEFAULT_ADAPTERS[adapterName];
|
|
53
|
+
if (!config) return null;
|
|
54
|
+
const resolvedCommand = resolveCommand(config.command, cwd);
|
|
55
|
+
if (!resolvedCommand) return null;
|
|
56
|
+
return {
|
|
57
|
+
name: adapterName,
|
|
58
|
+
command: config.command,
|
|
59
|
+
args: config.args ?? [],
|
|
60
|
+
resolvedCommand,
|
|
61
|
+
languages: config.languages ?? [],
|
|
62
|
+
fileTypes: config.fileTypes ?? [],
|
|
63
|
+
rootMarkers: config.rootMarkers ?? [],
|
|
64
|
+
launchDefaults: config.launchDefaults ?? {},
|
|
65
|
+
attachDefaults: config.attachDefaults ?? {},
|
|
66
|
+
connectMode: config.connectMode ?? "stdio",
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
export function getAvailableAdapters(cwd: string): DapResolvedAdapter[] {
|
|
71
|
+
return Object.keys(DEFAULT_ADAPTERS)
|
|
72
|
+
.map(name => resolveAdapter(name, cwd))
|
|
73
|
+
.filter((adapter): adapter is DapResolvedAdapter => adapter !== null);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
function getMatchingAdapters(program: string, cwd: string): DapResolvedAdapter[] {
|
|
77
|
+
const extension = path.extname(program).toLowerCase();
|
|
78
|
+
const available = getAvailableAdapters(cwd);
|
|
79
|
+
if (!extension) {
|
|
80
|
+
// For extensionless binaries, only consider native debuggers (gdb, lldb-dap)
|
|
81
|
+
// or adapters that match by root markers. Don't silently fall back to
|
|
82
|
+
// unrelated adapters like debugpy for a C binary.
|
|
83
|
+
const nativeDebuggers: ReadonlySet<string> = new Set(EXTENSIONLESS_DEBUGGER_ORDER);
|
|
84
|
+
return available.filter(
|
|
85
|
+
adapter =>
|
|
86
|
+
nativeDebuggers.has(adapter.name) ||
|
|
87
|
+
(adapter.rootMarkers.length > 0 && hasRootMarkers(cwd, adapter.rootMarkers)),
|
|
88
|
+
);
|
|
89
|
+
}
|
|
90
|
+
const exactMatches = available.filter(adapter => adapter.fileTypes.includes(extension));
|
|
91
|
+
if (exactMatches.length > 0) {
|
|
92
|
+
return exactMatches;
|
|
93
|
+
}
|
|
94
|
+
return available;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
function sortAdaptersForLaunch(program: string, cwd: string, adapters: DapResolvedAdapter[]): DapResolvedAdapter[] {
|
|
98
|
+
const extension = path.extname(program).toLowerCase();
|
|
99
|
+
const rootAware = adapters.map(adapter => ({
|
|
100
|
+
adapter,
|
|
101
|
+
hasExtensionMatch: extension.length > 0 && adapter.fileTypes.includes(extension),
|
|
102
|
+
hasRootMatch: adapter.rootMarkers.length > 0 && hasRootMarkers(cwd, adapter.rootMarkers),
|
|
103
|
+
}));
|
|
104
|
+
rootAware.sort((left, right) => {
|
|
105
|
+
if (left.hasExtensionMatch !== right.hasExtensionMatch) {
|
|
106
|
+
return left.hasExtensionMatch ? -1 : 1;
|
|
107
|
+
}
|
|
108
|
+
if (left.hasRootMatch !== right.hasRootMatch) {
|
|
109
|
+
return left.hasRootMatch ? -1 : 1;
|
|
110
|
+
}
|
|
111
|
+
const leftDebuggerRank = EXTENSIONLESS_DEBUGGER_ORDER.indexOf(
|
|
112
|
+
left.adapter.name as (typeof EXTENSIONLESS_DEBUGGER_ORDER)[number],
|
|
113
|
+
);
|
|
114
|
+
const rightDebuggerRank = EXTENSIONLESS_DEBUGGER_ORDER.indexOf(
|
|
115
|
+
right.adapter.name as (typeof EXTENSIONLESS_DEBUGGER_ORDER)[number],
|
|
116
|
+
);
|
|
117
|
+
const normalizedLeftRank = leftDebuggerRank === -1 ? Number.MAX_SAFE_INTEGER : leftDebuggerRank;
|
|
118
|
+
const normalizedRightRank = rightDebuggerRank === -1 ? Number.MAX_SAFE_INTEGER : rightDebuggerRank;
|
|
119
|
+
if (normalizedLeftRank !== normalizedRightRank) {
|
|
120
|
+
return normalizedLeftRank - normalizedRightRank;
|
|
121
|
+
}
|
|
122
|
+
return left.adapter.name.localeCompare(right.adapter.name);
|
|
123
|
+
});
|
|
124
|
+
return rootAware.map(entry => entry.adapter);
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
export function selectLaunchAdapter(program: string, cwd: string, adapterName?: string): DapResolvedAdapter | null {
|
|
128
|
+
if (adapterName) {
|
|
129
|
+
return resolveAdapter(adapterName, cwd);
|
|
130
|
+
}
|
|
131
|
+
const matches = getMatchingAdapters(program, cwd);
|
|
132
|
+
const sorted = sortAdaptersForLaunch(program, cwd, matches);
|
|
133
|
+
return sorted[0] ?? null;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
export function selectAttachAdapter(cwd: string, adapterName?: string, port?: number): DapResolvedAdapter | null {
|
|
137
|
+
if (adapterName) {
|
|
138
|
+
return resolveAdapter(adapterName, cwd);
|
|
139
|
+
}
|
|
140
|
+
const available = getAvailableAdapters(cwd);
|
|
141
|
+
if (port !== undefined) {
|
|
142
|
+
const debugpy = available.find(adapter => adapter.name === "debugpy");
|
|
143
|
+
if (debugpy) return debugpy;
|
|
144
|
+
}
|
|
145
|
+
for (const preferred of EXTENSIONLESS_DEBUGGER_ORDER) {
|
|
146
|
+
const match = available.find(adapter => adapter.name === preferred);
|
|
147
|
+
if (match) return match;
|
|
148
|
+
}
|
|
149
|
+
return available[0] ?? null;
|
|
150
|
+
}
|
|
@@ -0,0 +1,211 @@
|
|
|
1
|
+
{
|
|
2
|
+
"gdb": {
|
|
3
|
+
"command": "gdb",
|
|
4
|
+
"args": ["-i", "dap"],
|
|
5
|
+
"languages": ["c", "cpp", "rust"],
|
|
6
|
+
"fileTypes": [".c", ".cc", ".cpp", ".cxx", ".h", ".hh", ".hpp", ".hxx", ".rs"],
|
|
7
|
+
"rootMarkers": ["Makefile", "CMakeLists.txt", "Cargo.toml", "compile_commands.json"],
|
|
8
|
+
"launchDefaults": {
|
|
9
|
+
"request": "launch",
|
|
10
|
+
"stopOnEntry": true,
|
|
11
|
+
"stopAtBeginningOfMainSubprogram": true
|
|
12
|
+
},
|
|
13
|
+
"attachDefaults": {
|
|
14
|
+
"request": "attach"
|
|
15
|
+
}
|
|
16
|
+
},
|
|
17
|
+
"lldb-dap": {
|
|
18
|
+
"command": "lldb-dap",
|
|
19
|
+
"args": [],
|
|
20
|
+
"languages": ["c", "cpp", "objc", "swift", "rust", "zig"],
|
|
21
|
+
"fileTypes": [".c", ".cc", ".cpp", ".cxx", ".m", ".mm", ".swift", ".rs", ".zig"],
|
|
22
|
+
"rootMarkers": ["Package.swift", "Cargo.toml", "Makefile", "CMakeLists.txt", "build.zig"],
|
|
23
|
+
"launchDefaults": {
|
|
24
|
+
"request": "launch",
|
|
25
|
+
"stopOnEntry": true
|
|
26
|
+
},
|
|
27
|
+
"attachDefaults": {
|
|
28
|
+
"request": "attach"
|
|
29
|
+
}
|
|
30
|
+
},
|
|
31
|
+
"codelldb": {
|
|
32
|
+
"command": "codelldb",
|
|
33
|
+
"args": ["--port", "0"],
|
|
34
|
+
"languages": ["c", "cpp", "rust", "zig"],
|
|
35
|
+
"fileTypes": [".c", ".cc", ".cpp", ".cxx", ".rs", ".zig"],
|
|
36
|
+
"rootMarkers": ["Cargo.toml", "CMakeLists.txt", "Makefile", "compile_commands.json", "build.zig"],
|
|
37
|
+
"launchDefaults": {
|
|
38
|
+
"request": "launch",
|
|
39
|
+
"stopOnEntry": true
|
|
40
|
+
},
|
|
41
|
+
"attachDefaults": {
|
|
42
|
+
"request": "attach"
|
|
43
|
+
}
|
|
44
|
+
},
|
|
45
|
+
"debugpy": {
|
|
46
|
+
"command": "python",
|
|
47
|
+
"args": ["-m", "debugpy.adapter"],
|
|
48
|
+
"languages": ["python"],
|
|
49
|
+
"fileTypes": [".py"],
|
|
50
|
+
"rootMarkers": ["pyproject.toml", "setup.py", "requirements.txt", "Pipfile"],
|
|
51
|
+
"launchDefaults": {
|
|
52
|
+
"request": "launch",
|
|
53
|
+
"justMyCode": false,
|
|
54
|
+
"stopOnEntry": true
|
|
55
|
+
},
|
|
56
|
+
"attachDefaults": {
|
|
57
|
+
"request": "attach",
|
|
58
|
+
"justMyCode": false
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"dlv": {
|
|
62
|
+
"command": "dlv",
|
|
63
|
+
"args": ["dap"],
|
|
64
|
+
"connectMode": "socket",
|
|
65
|
+
"languages": ["go"],
|
|
66
|
+
"fileTypes": [".go"],
|
|
67
|
+
"rootMarkers": ["go.mod", "go.sum"],
|
|
68
|
+
"launchDefaults": {
|
|
69
|
+
"request": "launch",
|
|
70
|
+
"mode": "debug",
|
|
71
|
+
"stopOnEntry": true
|
|
72
|
+
},
|
|
73
|
+
"attachDefaults": {
|
|
74
|
+
"request": "attach",
|
|
75
|
+
"mode": "local"
|
|
76
|
+
}
|
|
77
|
+
},
|
|
78
|
+
"js-debug-adapter": {
|
|
79
|
+
"command": "js-debug-adapter",
|
|
80
|
+
"args": [],
|
|
81
|
+
"languages": ["javascript", "typescript"],
|
|
82
|
+
"fileTypes": [".js", ".jsx", ".ts", ".tsx", ".mjs", ".cjs"],
|
|
83
|
+
"rootMarkers": ["package.json", "tsconfig.json", "jsconfig.json"],
|
|
84
|
+
"launchDefaults": {
|
|
85
|
+
"request": "launch",
|
|
86
|
+
"type": "pwa-node",
|
|
87
|
+
"stopOnEntry": true
|
|
88
|
+
},
|
|
89
|
+
"attachDefaults": {
|
|
90
|
+
"request": "attach",
|
|
91
|
+
"type": "pwa-node"
|
|
92
|
+
}
|
|
93
|
+
},
|
|
94
|
+
"netcoredbg": {
|
|
95
|
+
"command": "netcoredbg",
|
|
96
|
+
"args": ["--interpreter=vscode"],
|
|
97
|
+
"languages": ["csharp", "fsharp"],
|
|
98
|
+
"fileTypes": [".cs", ".csx", ".fs", ".fsx"],
|
|
99
|
+
"rootMarkers": ["*.sln", "*.csproj", "*.fsproj", "global.json"],
|
|
100
|
+
"launchDefaults": {
|
|
101
|
+
"request": "launch",
|
|
102
|
+
"stopAtEntry": true
|
|
103
|
+
},
|
|
104
|
+
"attachDefaults": {
|
|
105
|
+
"request": "attach"
|
|
106
|
+
}
|
|
107
|
+
},
|
|
108
|
+
"kotlin-debug-adapter": {
|
|
109
|
+
"command": "kotlin-debug-adapter",
|
|
110
|
+
"args": [],
|
|
111
|
+
"languages": ["kotlin"],
|
|
112
|
+
"fileTypes": [".kt", ".kts"],
|
|
113
|
+
"rootMarkers": ["build.gradle", "build.gradle.kts", "pom.xml", "settings.gradle", "settings.gradle.kts"],
|
|
114
|
+
"launchDefaults": {
|
|
115
|
+
"request": "launch",
|
|
116
|
+
"mainClass": "",
|
|
117
|
+
"projectRoot": ""
|
|
118
|
+
},
|
|
119
|
+
"attachDefaults": {
|
|
120
|
+
"request": "attach"
|
|
121
|
+
}
|
|
122
|
+
},
|
|
123
|
+
"rdbg": {
|
|
124
|
+
"command": "rdbg",
|
|
125
|
+
"args": ["--open", "--command", "--"],
|
|
126
|
+
"languages": ["ruby"],
|
|
127
|
+
"fileTypes": [".rb", ".rake", ".gemspec"],
|
|
128
|
+
"rootMarkers": ["Gemfile", "Rakefile", ".ruby-version"],
|
|
129
|
+
"launchDefaults": {
|
|
130
|
+
"request": "launch",
|
|
131
|
+
"type": "rdbg"
|
|
132
|
+
},
|
|
133
|
+
"attachDefaults": {
|
|
134
|
+
"request": "attach",
|
|
135
|
+
"type": "rdbg"
|
|
136
|
+
}
|
|
137
|
+
},
|
|
138
|
+
"php-debug-adapter": {
|
|
139
|
+
"command": "php-debug-adapter",
|
|
140
|
+
"args": [],
|
|
141
|
+
"languages": ["php"],
|
|
142
|
+
"fileTypes": [".php", ".phtml"],
|
|
143
|
+
"rootMarkers": ["composer.json", "composer.lock"],
|
|
144
|
+
"launchDefaults": {
|
|
145
|
+
"request": "launch",
|
|
146
|
+
"stopOnEntry": true
|
|
147
|
+
},
|
|
148
|
+
"attachDefaults": {
|
|
149
|
+
"request": "attach"
|
|
150
|
+
}
|
|
151
|
+
},
|
|
152
|
+
"bash-debug-adapter": {
|
|
153
|
+
"command": "bash-debug-adapter",
|
|
154
|
+
"args": [],
|
|
155
|
+
"languages": ["bash", "shell"],
|
|
156
|
+
"fileTypes": [".sh", ".bash"],
|
|
157
|
+
"rootMarkers": [".git"],
|
|
158
|
+
"launchDefaults": {
|
|
159
|
+
"request": "launch",
|
|
160
|
+
"type": "bashdb",
|
|
161
|
+
"pathBashdb": "bashdb",
|
|
162
|
+
"pathBash": "bash"
|
|
163
|
+
},
|
|
164
|
+
"attachDefaults": {
|
|
165
|
+
"request": "attach"
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
"dart-debug-adapter": {
|
|
169
|
+
"command": "dart",
|
|
170
|
+
"args": ["debug_adapter"],
|
|
171
|
+
"languages": ["dart"],
|
|
172
|
+
"fileTypes": [".dart"],
|
|
173
|
+
"rootMarkers": ["pubspec.yaml", "pubspec.lock"],
|
|
174
|
+
"launchDefaults": {
|
|
175
|
+
"request": "launch",
|
|
176
|
+
"stopOnEntry": true
|
|
177
|
+
},
|
|
178
|
+
"attachDefaults": {
|
|
179
|
+
"request": "attach"
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
"flutter-debug-adapter": {
|
|
183
|
+
"command": "dart",
|
|
184
|
+
"args": ["debug_adapter", "--flutter-sdk-path", ""],
|
|
185
|
+
"languages": ["dart"],
|
|
186
|
+
"fileTypes": [".dart"],
|
|
187
|
+
"rootMarkers": ["pubspec.yaml", "android", "ios", "lib/main.dart"],
|
|
188
|
+
"launchDefaults": {
|
|
189
|
+
"request": "launch"
|
|
190
|
+
},
|
|
191
|
+
"attachDefaults": {
|
|
192
|
+
"request": "attach"
|
|
193
|
+
}
|
|
194
|
+
},
|
|
195
|
+
"elixir-ls-debugger": {
|
|
196
|
+
"command": "elixir-ls-debugger",
|
|
197
|
+
"args": [],
|
|
198
|
+
"languages": ["elixir"],
|
|
199
|
+
"fileTypes": [".ex", ".exs", ".heex", ".eex"],
|
|
200
|
+
"rootMarkers": ["mix.exs", "mix.lock"],
|
|
201
|
+
"launchDefaults": {
|
|
202
|
+
"request": "launch",
|
|
203
|
+
"type": "mix_task",
|
|
204
|
+
"task": "run",
|
|
205
|
+
"stopOnEntry": true
|
|
206
|
+
},
|
|
207
|
+
"attachDefaults": {
|
|
208
|
+
"request": "attach"
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
package/src/dap/index.ts
ADDED