@jkwd/inbase 0.1.8 → 0.1.9
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 +23 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -8,11 +8,12 @@
|
|
|
8
8
|
A first-person 3D map of a JavaScript or TypeScript codebase. Files become blocks, folders become walkable areas, and imports become lines in the air.
|
|
9
9
|
|
|
10
10
|
<p align="center">
|
|
11
|
-
<img src="docs/inbase-1.png" alt="First-person walk view of the codebase map" width="
|
|
12
|
-
|
|
11
|
+
<img src="docs/inbase-1.png" alt="First-person walk view of the codebase map" width="47%" />
|
|
12
|
+
|
|
13
|
+
<img src="docs/inbase-2.png" alt="Map view with 3D overlay" width="47%" />
|
|
13
14
|
</p>
|
|
14
15
|
|
|
15
|
-
Install the package in a project, run `inbase init`, then `inbase run`. Cursor
|
|
16
|
+
Install the package in a project, run `inbase init`, then `inbase run`. Cursor’s LLM then plans and patches through the visual map instead of editing files directly.
|
|
16
17
|
|
|
17
18
|
The npm package is `@jkwd/inbase` (npm blocks the unscoped name `inbase`). The command is still `inbase`.
|
|
18
19
|
|
|
@@ -40,7 +41,21 @@ Open the printed URL (http://localhost:5173 by default), click the scene, then w
|
|
|
40
41
|
inbase run --target /path/to/your/project
|
|
41
42
|
```
|
|
42
43
|
|
|
43
|
-
`inbase init` copies a Cursor skill into `.cursor/skills/inbase/` and gitignores `.inbase/`.
|
|
44
|
+
`inbase init` copies a Cursor skill into `.cursor/skills/inbase/` and gitignores `.inbase/`. Keep `inbase run` open, then ask Cursor to change source files — the LLM follows the visual plan and patch loop described below.
|
|
45
|
+
|
|
46
|
+
## LLM integration
|
|
47
|
+
|
|
48
|
+
<img src="docs/inbase-llm.png" alt="LLM working through a plan in the heads-up display overlay" align="left" width="280" hspace="16" />
|
|
49
|
+
|
|
50
|
+
Inbase does not call a model itself. The visual coding loop currently supports **Cursor**. The installed skill makes the agent work through the map: it reports a plan, waits on the **HUD** (heads-up display — the overlay panel on the 3D map), and publishes each step as a patch you can walk before it is applied.
|
|
51
|
+
|
|
52
|
+
When a chat starts, that overlay asks whether to set up a **blueprint**. **Create blueprint** lets you place files (`Space`) and folders (`B`), then **Send blueprint** — that layout is the source of truth for the chat. **Let LLM continue** skips placement and lets the agent choose files from the request.
|
|
53
|
+
|
|
54
|
+
Turn on **Make LLM look where I look** if the agent should prefer the island you are standing on and the blocks you are facing. With **Step by step** on, click **Run step** for each patch. With it off, the LLM implements the full plan; you can still walk Previous/Next over the diffs, then **Complete**. Send an alternative instruction from the HUD to revise the remaining plan, or **Stop** to end the session.
|
|
55
|
+
|
|
56
|
+
The LLM never writes project files itself. Patches apply when you run or complete steps in the visualizer.
|
|
57
|
+
|
|
58
|
+
<br clear="all" />
|
|
44
59
|
|
|
45
60
|
## Commands
|
|
46
61
|
|
|
@@ -52,6 +67,10 @@ inbase run --target /path/to/your/project
|
|
|
52
67
|
|
|
53
68
|
Session commands (`start-session`, `wait-for-blueprint`, `report-plan`, `wait-for-approval`, `propose-patch`) are used by the Cursor skill. You do not need to run them yourself.
|
|
54
69
|
|
|
70
|
+
## Editor support
|
|
71
|
+
|
|
72
|
+
The map runs in the browser. The LLM plan and patch loop currently works in **Cursor** only (`inbase init` installs a skill into `.cursor/skills/inbase/`).
|
|
73
|
+
|
|
55
74
|
## Language support
|
|
56
75
|
|
|
57
76
|
Source files (`.ts`, `.tsx`, `.js`, `.jsx`, `.mjs`, `.cjs`) become blocks with **functions**, **classes**, and **variables**, plus import edges from `import` and `require()`. Styles and docs (`.css`, `.scss`, `.html`, `.json`, `.md`) show up as blocks without symbols. Only relative specifiers (`./`, `../`) become edges — package names like `react` or `@angular/core` do not.
|