@mrclrchtr/supi-code-intelligence 4.4.0 → 4.5.1
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/README.md +84 -219
- package/node_modules/@mrclrchtr/supi-code-runtime/README.md +6 -0
- package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +1 -1
- package/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
- package/node_modules/@mrclrchtr/supi-core/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-core/package.json +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/README.md +6 -0
- package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
- package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-core/package.json +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/package.json +3 -3
- package/node_modules/@mrclrchtr/supi-lsp/src/client/client-refresh.ts +1 -1
- package/node_modules/@mrclrchtr/supi-lsp/src/client/client.ts +6 -6
- package/node_modules/@mrclrchtr/supi-tree-sitter/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/README.md +6 -0
- package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/package.json +1 -1
- package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/package.json +2 -2
- package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/README.md +1 -1
- package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-core/package.json +1 -1
- package/node_modules/@mrclrchtr/supi-tree-sitter/package.json +3 -3
- package/package.json +9 -8
- package/src/extension.ts +2 -2
- package/src/{ui/markdown → overview}/overview-data.ts +1 -1
- package/src/overview/types.ts +21 -0
- package/src/session/orientation/collect.ts +39 -26
- package/src/{ui/markdown → session/orientation}/gather.ts +44 -24
- package/src/session/orientation-types.ts +23 -0
- package/src/session/orientation-workflow.ts +1 -11
- package/src/types/execution.ts +1 -1
- package/src/types/index.ts +1 -1
- package/src/types/details.ts +0 -18
- package/src/ui/markdown/types.ts +0 -75
- /package/src/{ui/markdown → overview}/overview.ts +0 -0
package/README.md
CHANGED
|
@@ -1,272 +1,137 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-code-intelligence">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/social-preview.png" alt="SuPi Code Intelligence" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
|
8
8
|
|
|
9
|
-
# @mrclrchtr/supi-code-intelligence
|
|
9
|
+
# @mrclrchtr/supi-code-intelligence — LSP and Tree-sitter AST Code Intelligence for Pi
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
Gives the [Pi coding agent](https://github.com/earendil-works/pi) direct, model-callable LSP semantic navigation and Tree-sitter AST structural code analysis.
|
|
12
12
|
|
|
13
|
-
##
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
pi install npm:@mrclrchtr/supi-code-intelligence
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
For local development:
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
pi install ./packages/supi-code-intelligence
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
## Quickstart
|
|
26
|
-
|
|
27
|
-
The extension detects project languages and starts matching language servers. Install the required server binaries on `PATH`:
|
|
28
|
-
|
|
29
|
-
| Language | Binary |
|
|
30
|
-
|---|---|
|
|
31
|
-
| TypeScript / JavaScript | `typescript-language-server` |
|
|
32
|
-
| Python | `pyright-langserver` |
|
|
33
|
-
| Rust | `rust-analyzer` |
|
|
34
|
-
| Go | `gopls` |
|
|
35
|
-
| C / C++ | `clangd` |
|
|
36
|
-
| Bash | `bash-language-server` |
|
|
37
|
-
| HTML | `vscode-html-language-server` |
|
|
38
|
-
| SQL | `sql-language-server` |
|
|
39
|
-
| Ruby | `ruby-lsp` |
|
|
40
|
-
| Java | `jdtls` |
|
|
41
|
-
| Kotlin | `kotlin-lsp` |
|
|
42
|
-
| R | `R` with `languageserver` |
|
|
43
|
-
|
|
44
|
-
Semantic and structural support intentionally differ where the syntax differs: Ruby LSP handles ERB templates, and gopls handles `go.mod`, while AST search excludes both rather than parsing them with the wrong Tree-sitter grammar. Ruby gemspecs and KornShell files use the existing Ruby and Bash structural grammars.
|
|
45
|
-
|
|
46
|
-
Check runtime status with:
|
|
13
|
+
## LSP + AST, directly available to the agent
|
|
47
14
|
|
|
48
|
-
|
|
49
|
-
/supi-ci-status
|
|
50
|
-
```
|
|
15
|
+
Instead of relying on file reads and text search alone, Pi can call focused `code_*` tools backed by:
|
|
51
16
|
|
|
52
|
-
|
|
17
|
+
- **Language servers (LSP)** for types, definitions, references, implementations, diagnostics, workspace symbols, and semantic refactoring.
|
|
18
|
+
- **Tree-sitter ASTs** for syntax, outlines, source structure, structural search, and outgoing calls.
|
|
53
19
|
|
|
54
|
-
|
|
20
|
+
The two sources complement each other without silently pretending one is the other. Results say which capability supplied the evidence and when semantic or structural analysis is unavailable.
|
|
55
21
|
|
|
56
|
-
|
|
22
|
+
## What your agent gets
|
|
57
23
|
|
|
58
|
-
|
|
59
|
-
- `code_inspect` — inspect exact point facts
|
|
60
|
-
- `code_orientation` — orient around a workspace, module, directory, file, or resolved symbol
|
|
61
|
-
- `code_graph` — collect references, structural callees, and implementations
|
|
62
|
-
- `code_find` — explicit AST structural or semantic workspace-symbol search
|
|
63
|
-
- `code_health` — report live diagnostics, server status, and supplemental Capability Warnings
|
|
64
|
-
- `code_refactor_plan` — preview a precise semantic refactor without mutation
|
|
65
|
-
- `code_refactor_apply` — apply a stored plan after freshness checks
|
|
24
|
+
After installation, keep asking Pi normal coding questions. The agent can:
|
|
66
25
|
|
|
67
|
-
|
|
26
|
+
- **Map an unfamiliar repository** — understand workspaces, packages, entry points, dependencies, and local `CLAUDE.md` or `AGENTS.md` instructions before editing.
|
|
27
|
+
- **Navigate precisely with LSP** — identify the exact symbol at a source location and inspect its type, definition, enclosing declaration, and nearby diagnostics.
|
|
28
|
+
- **Follow relationships across LSP and AST evidence** — find references, implementations, and outgoing calls without guessing from matching text.
|
|
29
|
+
- **Search parsed code structure** — query AST definitions, types, interfaces, classes, methods, enums, imports, exports, and call sites.
|
|
30
|
+
- **Check live project health** — inspect language-server status and current errors or warnings, with an option to refresh stale diagnostics.
|
|
31
|
+
- **Refactor safely** — preview language-aware renames and extractions before applying them. Plans are rejected if the files changed in the meantime.
|
|
32
|
+
- **See uncertainty clearly** — results distinguish “nothing found” from incomplete or unavailable analysis and disclose omitted matches.
|
|
68
33
|
|
|
69
|
-
|
|
34
|
+
When Pi recognizes a workspace, the agent also receives an architecture overview near the start of the session, so it can orient before spending turns opening files.
|
|
70
35
|
|
|
71
|
-
##
|
|
36
|
+
## Example requests
|
|
72
37
|
|
|
73
|
-
|
|
38
|
+
You do not need to learn the tool-call syntax. Try asking Pi:
|
|
74
39
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
40
|
+
- “Map this repository and explain where authentication lives.”
|
|
41
|
+
- “Find every use and implementation of `PaymentProvider`.”
|
|
42
|
+
- “What does `executeAskUser` call, and where is it referenced?”
|
|
43
|
+
- “Find all exported interfaces under `packages/api`.”
|
|
44
|
+
- “Check this project for current language-server diagnostics.”
|
|
45
|
+
- “Rename `oldName` to `newName`, but show me the refactor plan before applying it.”
|
|
81
46
|
|
|
82
|
-
|
|
47
|
+
## See it in action
|
|
83
48
|
|
|
84
|
-
|
|
49
|
+
Select any screenshot to open it at full resolution.
|
|
85
50
|
|
|
86
|
-
|
|
51
|
+
### Understand the workspace
|
|
87
52
|
|
|
88
|
-
|
|
53
|
+
[![Workspace orientation showing package files, manifest details, and relationships][workspace-orientation]][workspace-orientation]
|
|
89
54
|
|
|
90
|
-
###
|
|
55
|
+
### Inspect an exact symbol
|
|
91
56
|
|
|
92
|
-
|
|
57
|
+
[![Symbol inspection showing syntax, hover information, definition, and diagnostics][symbol-inspection]][symbol-inspection]
|
|
93
58
|
|
|
94
|
-
|
|
95
|
-
- fingerprint-checked
|
|
96
|
-
- stale after a touched file changes
|
|
97
|
-
- not persisted across sessions
|
|
59
|
+
### Follow references and calls
|
|
98
60
|
|
|
99
|
-
|
|
61
|
+
[![Relationship graph showing references and direct calls][relationship-graph]][relationship-graph]
|
|
100
62
|
|
|
101
|
-
|
|
63
|
+
### Check live health
|
|
102
64
|
|
|
103
|
-
|
|
65
|
+
[![Code health showing diagnostics and running language servers][code-health]][code-health]
|
|
104
66
|
|
|
105
|
-
|
|
106
|
-
code_resolve({ target: { file: "src/billing.ts" }, maxResults: 10 })
|
|
107
|
-
→ choose one member targetId from the returned Target group
|
|
108
|
-
```
|
|
67
|
+
### Preview a safe refactor
|
|
109
68
|
|
|
110
|
-
|
|
69
|
+
[![Refactor plan previewing a semantic rename without changing files][refactor-plan]][refactor-plan]
|
|
111
70
|
|
|
112
|
-
|
|
71
|
+
## Agent tools
|
|
113
72
|
|
|
114
|
-
|
|
115
|
-
code_resolve({ target: { symbol: { query: "myFunction", scope: "packages/app" } } })
|
|
116
|
-
→ capture targetId
|
|
73
|
+
The package adds eight tools that Pi selects as needed:
|
|
117
74
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
```text
|
|
129
|
-
code_orientation({ focus: { path: "packages/my-package" } })
|
|
130
|
-
code_orientation({ focus: { module: "@scope/my-package" } })
|
|
131
|
-
code_orientation({ focus: { target: { handle: "tg-…" } } })
|
|
132
|
-
```
|
|
75
|
+
| Tool | What it lets the agent do |
|
|
76
|
+
|---|---|
|
|
77
|
+
| `code_orientation` | Understand a workspace, package, directory, file, or symbol before reading broadly |
|
|
78
|
+
| `code_resolve` | Resolve an exact symbol, disambiguate matches, or list declarations in a file |
|
|
79
|
+
| `code_inspect` | Combine AST syntax with LSP type, definition, symbol, and diagnostic facts at one source location |
|
|
80
|
+
| `code_graph` | Follow LSP references and implementations plus AST calls made by a symbol |
|
|
81
|
+
| `code_find` | Search LSP workspace symbols or parsed AST source structure rather than raw text |
|
|
82
|
+
| `code_health` | Check live diagnostics, language servers, and code-intelligence availability |
|
|
83
|
+
| `code_refactor_plan` | Preview a precise rename or extraction without changing files |
|
|
84
|
+
| `code_refactor_apply` | Apply a fresh refactor plan after safety checks |
|
|
133
85
|
|
|
134
|
-
|
|
86
|
+
Pi's built-in `grep` remains the right tool for literal or regular-expression searches; these tools add symbol and source-structure awareness.
|
|
135
87
|
|
|
136
|
-
|
|
88
|
+
## Install
|
|
137
89
|
|
|
138
|
-
```
|
|
139
|
-
|
|
140
|
-
point: { file: "src/index.ts", line: 12, character: 8 },
|
|
141
|
-
maxResults: 10
|
|
142
|
-
})
|
|
90
|
+
```bash
|
|
91
|
+
pi install npm:@mrclrchtr/supi-code-intelligence
|
|
143
92
|
```
|
|
144
93
|
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
### Search code-aware evidence
|
|
94
|
+
To try it for one run without installing:
|
|
148
95
|
|
|
149
|
-
```
|
|
150
|
-
|
|
151
|
-
code_find({ query: "widget", mode: "ast", kind: "definition" })
|
|
152
|
-
code_find({ query: "@scope/package", mode: "ast", kind: "import", scope: ["src"] })
|
|
96
|
+
```bash
|
|
97
|
+
pi -e npm:@mrclrchtr/supi-code-intelligence
|
|
153
98
|
```
|
|
154
99
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
- `semantic` — workspace symbols; rejects `kind`
|
|
158
|
-
- `ast` — structured source-shape search; requires `kind`
|
|
159
|
-
|
|
160
|
-
Use PI's `grep` tool for literal or regex source search when it is active. `code_find` does not redirect removed text/regex calls to another tool.
|
|
161
|
-
|
|
162
|
-
AST `kind` accepts exactly `definition`, `import`, `export`, `call`, `type`, `interface`, `class`, `method`, and `enum`. Outline-backed kinds support every vendored grammar family; HTML definitions are elements with non-empty `id` attributes, while SQL definitions are supported `CREATE` declarations and shallow table/type members. Imports and exports remain JavaScript/TypeScript-only. AST `call` finds written call-site names, not symbol identity. Use `code_graph` references on a resolved target for symbol-identity relationships.
|
|
163
|
-
|
|
164
|
-
#### AST Scan universe
|
|
100
|
+
## Language support
|
|
165
101
|
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
Every explicit scope root is honored before descendant exclusions resume. An operation-eligible source file explicitly selected under `node_modules`, for example, is analyzed. An exact file whose grammar does not support the selected operation is invalid rather than redirected; a directory containing only operation-ineligible source is unavailable. Mixed scopes remain complete over their declared operation-specific universe and disclose operation exclusions. Duplicate, nested, and overlapping scopes are canonically deduplicated.
|
|
169
|
-
|
|
170
|
-
AST Scan details disclose the structural operation, supported extensions, roots, policy exclusions, eligible/analyzed file counts, and runtime limitations. Complete scans retain exact match totals. Unreadable paths, provider failures, the 5,000-file safety cap, or the 10-second deadline produce partial evidence with an unknown match total; skipped file counts are not reported as omitted matches.
|
|
171
|
-
|
|
172
|
-
### Check health
|
|
173
|
-
|
|
174
|
-
```text
|
|
175
|
-
code_health({ refresh: true, include: ["diagnostics", "servers"] })
|
|
176
|
-
```
|
|
102
|
+
Structural code search is bundled with the package. Full symbol navigation, references, diagnostics, and semantic refactoring require the matching language server on `PATH`.
|
|
177
103
|
|
|
178
|
-
|
|
104
|
+
The extension detects project languages and starts installed servers automatically:
|
|
179
105
|
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
106
|
+
| Language | Required binary |
|
|
107
|
+
|---|---|
|
|
108
|
+
| TypeScript / JavaScript | `typescript-language-server` |
|
|
109
|
+
| Python | `pyright-langserver` |
|
|
110
|
+
| Rust | `rust-analyzer` |
|
|
111
|
+
| Go | `gopls` |
|
|
112
|
+
| C / C++ | `clangd` |
|
|
113
|
+
| Bash | `bash-language-server` |
|
|
114
|
+
| HTML | `vscode-html-language-server` |
|
|
115
|
+
| SQL | `sql-language-server` |
|
|
116
|
+
| Ruby | `ruby-lsp` |
|
|
117
|
+
| Java | `jdtls` |
|
|
118
|
+
| Kotlin | `kotlin-lsp` |
|
|
119
|
+
| R | `R` with the `languageserver` package |
|
|
183
120
|
|
|
184
|
-
|
|
185
|
-
code_refactor_plan({
|
|
186
|
-
target: { handle: "tg-…" },
|
|
187
|
-
operation: { rename_symbol: { newName: "newName" } }
|
|
188
|
-
})
|
|
189
|
-
→ review edits and capture planId
|
|
121
|
+
If a server is missing, the agent can still use available workspace and structural evidence. Semantic features report that they are unavailable rather than silently guessing.
|
|
190
122
|
|
|
191
|
-
|
|
192
|
-
```
|
|
123
|
+
## Status and settings
|
|
193
124
|
|
|
194
|
-
|
|
125
|
+
Open the status view to see detected languages, running or missing servers, and capability warnings:
|
|
195
126
|
|
|
196
127
|
```text
|
|
197
|
-
|
|
198
|
-
extract_function: {
|
|
199
|
-
newName: "computeValue",
|
|
200
|
-
range: {
|
|
201
|
-
start: { line: 10, character: 3 },
|
|
202
|
-
end: { line: 12, character: 20 }
|
|
203
|
-
}
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
```
|
|
207
|
-
|
|
208
|
-
Planning never writes files. Application is the sole mutator, acquires sorted per-file mutation queues, revalidates fingerprints and edit safety, and rolls back earlier writes if a later write fails.
|
|
209
|
-
|
|
210
|
-
## Graph evidence
|
|
211
|
-
|
|
212
|
-
`code_graph.relations` accepts only:
|
|
213
|
-
|
|
214
|
-
- `references` — semantic, symbol-identity evidence
|
|
215
|
-
- `callees` — structural outgoing calls as written in source
|
|
216
|
-
- `implements` — semantic implementation evidence
|
|
217
|
-
- `all` — exactly the three relations above and must be the only list item
|
|
218
|
-
|
|
219
|
-
`calleeDepth: "direct"` excludes nested function/method/callback scopes; `"deep"` includes them. Structural callees are not callers and are not symbol-identity relationships.
|
|
220
|
-
|
|
221
|
-
Imports and exports remain available as explicit AST search kinds in `code_find`; they are not graph relation families. Test identity is not inferred: use PI grep for literal/regex source search or AST `call` when appropriate, neither of which claims that a match is a test.
|
|
222
|
-
|
|
223
|
-
## Honest correctness
|
|
224
|
-
|
|
225
|
-
- Semantic, structural, and filesystem evidence retain their provenance.
|
|
226
|
-
- Required capability failures are explicit; tools do not silently switch substrates.
|
|
227
|
-
- `maxResults` is a display cap. Results disclose shown, total, and omitted evidence when known.
|
|
228
|
-
- AST results declare their Scan universe; interrupted enumeration or analysis never becomes a complete absence claim.
|
|
229
|
-
- Invalid semantic-provider locations are omitted from project/external facts and disclosed separately as partial evidence.
|
|
230
|
-
- `code_health` reports live observations and does not infer analyzer results from conventional report files.
|
|
231
|
-
- Zero matches are successful searches, not tool failures.
|
|
232
|
-
|
|
233
|
-
## Startup and settings
|
|
234
|
-
|
|
235
|
-
Detected language servers start concurrently. In polyglot workspaces, disable unneeded servers in `.pi/supi/config.json` or `~/.pi/agent/supi/config.json`:
|
|
236
|
-
|
|
237
|
-
```json
|
|
238
|
-
{
|
|
239
|
-
"lsp": {
|
|
240
|
-
"servers": {
|
|
241
|
-
"python": { "enabled": false },
|
|
242
|
-
"rust": { "enabled": false }
|
|
243
|
-
}
|
|
244
|
-
}
|
|
245
|
-
}
|
|
128
|
+
/supi-ci-status
|
|
246
129
|
```
|
|
247
130
|
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
## Architecture
|
|
251
|
-
|
|
252
|
-
- `supi-code-intelligence` owns the Workspace code-intelligence session, workflow policy, Tool result assembly, and public tool family.
|
|
253
|
-
- `supi-code-runtime` owns canonical provider contracts and workspace capability state.
|
|
254
|
-
- `supi-lsp` owns semantic lifecycle and the Workspace LSP runtime.
|
|
255
|
-
- `supi-tree-sitter` owns structural parser reuse.
|
|
256
|
-
- The process-shared Workspace provider host starts LSP and Tree-sitter once per canonical workspace and releases them after the final session lease. Target and refactor handles remain session-local.
|
|
257
|
-
- The Headless inspection profile is for managed child sessions and registers only the six non-mutating inspection tools; it omits refactors, settings, UI, commands, and overview injection.
|
|
258
|
-
|
|
259
|
-
Markdown and TUI are adapters over assembled typed results. Providers, clients, mutable targets, and the LSP manager do not cross the workflow seam.
|
|
260
|
-
|
|
261
|
-
See:
|
|
262
|
-
|
|
263
|
-
- [`docs/adr/0015-workspace-session-and-tool-result-assembly.md`](../../docs/adr/0015-workspace-session-and-tool-result-assembly.md)
|
|
264
|
-
- [`docs/adr/0016-workspace-lsp-runtime-interface.md`](../../docs/adr/0016-workspace-lsp-runtime-interface.md)
|
|
265
|
-
- [`docs/adr/0017-focused-code-tools-and-evidence-policy.md`](../../docs/adr/0017-focused-code-tools-and-evidence-policy.md)
|
|
266
|
-
- [`docs/adr/0002-refactor-planner-applier-split.md`](../../docs/adr/0002-refactor-planner-applier-split.md)
|
|
267
|
-
|
|
268
|
-
## Package exports
|
|
131
|
+
Use `/supi-settings` to disable language servers you do not need or change the instruction filenames surfaced during directory orientation. The defaults are `CLAUDE.md` and `AGENTS.md`.
|
|
269
132
|
|
|
270
|
-
-
|
|
271
|
-
-
|
|
272
|
-
-
|
|
133
|
+
[workspace-orientation]: https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/workspace-orientation.png
|
|
134
|
+
[symbol-inspection]: https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/symbol-inspection.png
|
|
135
|
+
[relationship-graph]: https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/relationship-graph.png
|
|
136
|
+
[code-health]: https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/code-health.png
|
|
137
|
+
[refactor-plan]: https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-intelligence/assets/refactor-plan.png
|
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-code-runtime">
|
|
3
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-runtime/assets/social-preview.png" alt="SuPi Code Runtime" width="100%">
|
|
4
|
+
</a>
|
|
5
|
+
</div>
|
|
6
|
+
|
|
1
7
|
# @mrclrchtr/supi-code-runtime
|
|
2
8
|
|
|
3
9
|
Shared workspace context, capability contracts, and canonical types for the SuPi code-understanding stack.
|
package/node_modules/@mrclrchtr/supi-code-runtime/node_modules/@mrclrchtr/supi-core/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-core">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/social-preview.png" alt="SuPi Core" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mrclrchtr/supi-code-runtime",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.5.1",
|
|
4
4
|
"description": "SuPi code-runtime — shared workspace context, capability contracts, and canonical types for the code-understanding stack",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"!__tests__"
|
|
30
30
|
],
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@mrclrchtr/supi-core": "4.
|
|
32
|
+
"@mrclrchtr/supi-core": "4.5.1"
|
|
33
33
|
},
|
|
34
34
|
"bundledDependencies": [
|
|
35
35
|
"@mrclrchtr/supi-core"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-core">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/social-preview.png" alt="SuPi Core" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-lsp">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-lsp/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-lsp/assets/social-preview.png" alt="SuPi LSP" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/README.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-code-runtime">
|
|
3
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-runtime/assets/social-preview.png" alt="SuPi Code Runtime" width="100%">
|
|
4
|
+
</a>
|
|
5
|
+
</div>
|
|
6
|
+
|
|
1
7
|
# @mrclrchtr/supi-code-runtime
|
|
2
8
|
|
|
3
9
|
Shared workspace context, capability contracts, and canonical types for the SuPi code-understanding stack.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-core">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/social-preview.png" alt="SuPi Core" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
package/node_modules/@mrclrchtr/supi-lsp/node_modules/@mrclrchtr/supi-code-runtime/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mrclrchtr/supi-code-runtime",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.5.1",
|
|
4
4
|
"description": "SuPi code-runtime — shared workspace context, capability contracts, and canonical types for the code-understanding stack",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -29,7 +29,7 @@
|
|
|
29
29
|
"!__tests__"
|
|
30
30
|
],
|
|
31
31
|
"dependencies": {
|
|
32
|
-
"@mrclrchtr/supi-core": "4.
|
|
32
|
+
"@mrclrchtr/supi-core": "4.5.1"
|
|
33
33
|
},
|
|
34
34
|
"bundledDependencies": [
|
|
35
35
|
"@mrclrchtr/supi-core"
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-core">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-core/assets/social-preview.png" alt="SuPi Core" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mrclrchtr/supi-lsp",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.5.1",
|
|
4
4
|
"description": "SuPi LSP runtime — Language Server Protocol integration library for pi",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -37,8 +37,8 @@
|
|
|
37
37
|
"vscode-jsonrpc": "^9.0.0",
|
|
38
38
|
"vscode-languageserver-protocol": "^3.17.5",
|
|
39
39
|
"vscode-languageserver-types": "^3.17.5",
|
|
40
|
-
"@mrclrchtr/supi-code-runtime": "4.
|
|
41
|
-
"@mrclrchtr/supi-core": "4.
|
|
40
|
+
"@mrclrchtr/supi-code-runtime": "4.5.1",
|
|
41
|
+
"@mrclrchtr/supi-core": "4.5.1"
|
|
42
42
|
},
|
|
43
43
|
"bundledDependencies": [
|
|
44
44
|
"@mrclrchtr/supi-code-runtime",
|
|
@@ -85,7 +85,7 @@ function sendDidChange(client: LspClient, uri: string, version: number, content:
|
|
|
85
85
|
/** Send an RPC notification through the client. */
|
|
86
86
|
function sendNotification(client: LspClient, method: string, params: unknown): void {
|
|
87
87
|
const rpc = accessClient(client).rpc;
|
|
88
|
-
if (rpc) rpc.sendNotification(method, params);
|
|
88
|
+
if (rpc) void rpc.sendNotification(method, params);
|
|
89
89
|
}
|
|
90
90
|
|
|
91
91
|
/** Clear open doc and diagnostic state for a URI. */
|
|
@@ -223,7 +223,7 @@ export class LspClient {
|
|
|
223
223
|
})) as InitializeResult;
|
|
224
224
|
|
|
225
225
|
this.capabilities = result.capabilities;
|
|
226
|
-
this.rpc.sendNotification("initialized", {});
|
|
226
|
+
void this.rpc.sendNotification("initialized", {});
|
|
227
227
|
this._status = "running";
|
|
228
228
|
|
|
229
229
|
this.armNoProgressTimer();
|
|
@@ -306,7 +306,7 @@ export class LspClient {
|
|
|
306
306
|
}
|
|
307
307
|
|
|
308
308
|
this.openDocs.set(uri, { version: 1, languageId });
|
|
309
|
-
this.rpc.sendNotification("textDocument/didOpen", {
|
|
309
|
+
void this.rpc.sendNotification("textDocument/didOpen", {
|
|
310
310
|
textDocument: {
|
|
311
311
|
uri,
|
|
312
312
|
languageId,
|
|
@@ -330,7 +330,7 @@ export class LspClient {
|
|
|
330
330
|
}
|
|
331
331
|
|
|
332
332
|
doc.version++;
|
|
333
|
-
this.rpc.sendNotification("textDocument/didChange", {
|
|
333
|
+
void this.rpc.sendNotification("textDocument/didChange", {
|
|
334
334
|
textDocument: { uri, version: doc.version } satisfies VersionedTextDocumentIdentifier,
|
|
335
335
|
contentChanges: [{ text: content }],
|
|
336
336
|
});
|
|
@@ -345,7 +345,7 @@ export class LspClient {
|
|
|
345
345
|
|
|
346
346
|
if (!wasOpen || !this.rpc || this._status !== "running") return;
|
|
347
347
|
|
|
348
|
-
this.rpc.sendNotification("textDocument/didClose", {
|
|
348
|
+
void this.rpc.sendNotification("textDocument/didClose", {
|
|
349
349
|
textDocument: { uri } satisfies TextDocumentIdentifier,
|
|
350
350
|
});
|
|
351
351
|
}
|
|
@@ -364,7 +364,7 @@ export class LspClient {
|
|
|
364
364
|
removedFiles.push(filePath);
|
|
365
365
|
|
|
366
366
|
if (wasOpen && this.rpc && this._status === "running") {
|
|
367
|
-
this.rpc.sendNotification("textDocument/didClose", {
|
|
367
|
+
void this.rpc.sendNotification("textDocument/didClose", {
|
|
368
368
|
textDocument: { uri } satisfies TextDocumentIdentifier,
|
|
369
369
|
});
|
|
370
370
|
}
|
|
@@ -421,7 +421,7 @@ export class LspClient {
|
|
|
421
421
|
/** Notify the server that watched workspace files changed. */
|
|
422
422
|
notifyWorkspaceFileChanges(changes: FileEvent[]): void {
|
|
423
423
|
if (!this.rpc || this._status !== "running" || changes.length === 0) return;
|
|
424
|
-
this.rpc.sendNotification("workspace/didChangeWatchedFiles", {
|
|
424
|
+
void this.rpc.sendNotification("workspace/didChangeWatchedFiles", {
|
|
425
425
|
changes,
|
|
426
426
|
} satisfies DidChangeWatchedFilesParams);
|
|
427
427
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<div align="center">
|
|
2
2
|
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-tree-sitter">
|
|
3
3
|
<picture>
|
|
4
|
-
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-tree-sitter/assets/
|
|
4
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-tree-sitter/assets/social-preview.png" alt="SuPi Tree-sitter" width="100%">
|
|
5
5
|
</picture>
|
|
6
6
|
</a>
|
|
7
7
|
</div>
|
package/node_modules/@mrclrchtr/supi-tree-sitter/node_modules/@mrclrchtr/supi-code-runtime/README.md
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<a href="https://github.com/mrclrchtr/supi/tree/main/packages/supi-code-runtime">
|
|
3
|
+
<img src="https://raw.githubusercontent.com/mrclrchtr/supi/main/packages/supi-code-runtime/assets/social-preview.png" alt="SuPi Code Runtime" width="100%">
|
|
4
|
+
</a>
|
|
5
|
+
</div>
|
|
6
|
+
|
|
1
7
|
# @mrclrchtr/supi-code-runtime
|
|
2
8
|
|
|
3
9
|
Shared workspace context, capability contracts, and canonical types for the SuPi code-understanding stack.
|