1{
2 "diffEditor.renderSideBySide": false,
3 // Point the editor at THIS workspace's pinned typescript@7 install. The
4 // Effect diagnostics (e.g. `anyUnknownInErrorContext`) come from
5 // `effect-tsgo patch` (run automatically on install via `prepare`), which
6 // patches the workspace `node_modules/typescript` binary in place — the
7 // editor must use the WORKSPACE version or no Effect diagnostics appear.
8 // Opt in once per machine via Command Palette -> "TypeScript: Select
9 // TypeScript Version" -> "Use Workspace Version".
10 // (`enablePromptUseWorkspaceTsdk` below makes the editor prompt for this.)
11 "typescript.tsdk": "node_modules/typescript/lib",
12 "typescript.enablePromptUseWorkspaceTsdk": true,
13 "typescript.preferences.importModuleSpecifier": "relative",
14 "typescript.preferences.importModuleSpecifierEnding": "ts",
15 "oxc.enable": true,
16 "oxc.lint.run": "onSave",
17 "json.schemaDownload.enable": true,
18 "editor.defaultFormatter": "oxc.oxc-vscode",
19 "editor.codeLens": false,
20 "editor.formatOnSave": true,
21 "editor.formatOnSaveMode": "file",
22 "editor.inlayHints.enabled": "offUnlessPressed",
23 "editor.tabSize": 2,
24 "editor.indentSize": 2,
25 "editor.insertSpaces": true,
26 "editor.codeActionsOnSave": {
27 "source.fixAll": "explicit",
28 "source.organizeImports": "explicit"
29 },
30 "[toml]": {
31 "editor.defaultFormatter": "tamasfe.even-better-toml"
32 },
33 "[json]": {
34 "editor.defaultFormatter": "vscode.json-language-features"
35 },
36 "[jsonc]": {
37 "editor.defaultFormatter": "vscode.json-language-features"
38 },
39 "[markdown]": {
40 "editor.formatOnSave": false,
41 "editor.defaultFormatter": null
42 },
43 "[mdx]": {
44 "editor.defaultFormatter": null,
45 "editor.formatOnSave": false
46 },
47 "files.exclude": {
48 "**/__pycache__": true,
49 "**/*.pyc": true,
50 "packages/alchemy/bin/**/*.d*": true,
51 "packages/alchemy/bin/**/*.map": true,
52 },
53 // The client watcher feeds the tsgo LSP (workspace/didChangeWatchedFiles);
54 // every unexcluded change storm forces a session-snapshot clone + program
55 // update (8-18s on the alchemy projects). Exclude everything that is not a
56 // program input: agent worktrees (.claude is ~69GB incl. nested
57 // node_modules), vendored submodules, test logs/tmp bundles, and installs.
58 "files.watcherExclude": {
59 "**/submodules/**": true,
60 "**/.claude/**": true,
61 "**/.alchemy/**": true,
62 "**/node_modules/**": true,
63 "**/.git/**": true
64 },
65 "search.exclude": {
66 "**/submodules/**": true,
67 "**/.claude/**": true,
68 "**/.alchemy/**": true
69 },
70 // Keep the 200MB generated distilled surface out of the auto-import index.
71 "typescript.preferences.autoImportFileExcludePatterns": [ "**/submodules/**" ],
72 "[typescript]": {
73 "editor.indentSize": 2,
74 "editor.defaultFormatter": "oxc.oxc-vscode"
75 },
76 "[javascript]": {
77 "editor.indentSize": 2,
78 "editor.defaultFormatter": "oxc.oxc-vscode"
79 },
80 "[typescriptreact]": {
81 "editor.indentSize": 2,
82 "editor.defaultFormatter": "oxc.oxc-vscode"
83 },
84 "[javascriptreact]": {
85 "editor.indentSize": 2,
86 "editor.defaultFormatter": "oxc.oxc-vscode"
87 },
88 "oxc.enable.oxfmt": true
89}