@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.
Files changed (2) hide show
  1. package/README.md +23 -4
  2. 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="49%" />
12
- <img src="docs/inbase-2.png" alt="Map view with 3D overlay" width="49%" />
11
+ <img src="docs/inbase-1.png" alt="First-person walk view of the codebase map" width="47%" />
12
+ &nbsp;&nbsp;&nbsp;
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 uses the installed skill so code changes go through the visual map.
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/`. After that, ask Cursor to change source files in this repo it should follow the visual plan/patch workflow while `inbase run` is up.
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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jkwd/inbase",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "description": "A first-person 3D map of a codebase, with a visual coding workflow for Cursor.",
5
5
  "repository": {
6
6
  "type": "git",