@openez-graph/cli 0.2.1 → 0.3.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/LICENSE +21 -0
- package/README.md +94 -14
- package/dist/cli.cjs +233 -145
- package/dist/web/assets/WorkspaceGraph-CyIfL-tO.js +4112 -0
- package/dist/web/assets/index-C3yC9A2l.css +1 -0
- package/dist/web/assets/index-CDXvHMX8.js +312 -0
- package/dist/web/index.html +23 -0
- package/dist/web/logo.png +0 -0
- package/package.json +33 -2
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Asta Nguyen
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,6 +1,23 @@
|
|
|
1
1
|
# @openez-graph/cli
|
|
2
2
|
|
|
3
|
-
Local-first code intelligence
|
|
3
|
+
> Local-first code intelligence engine — index, query, and graph your codebase with zero config.
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@openez-graph/cli)
|
|
6
|
+
[](https://opensource.org/licenses/MIT)
|
|
7
|
+
|
|
8
|
+
OpenEZ Graph indexes your codebase into a local SQLite database, builds a code graph (symbols, files, chunks, edges), and exposes it through MCP tools for AI coding agents like Claude Code, Codex, and OpenCode.
|
|
9
|
+
|
|
10
|
+
**Zero config. No Docker. No Postgres. No Redis. Just install and go.**
|
|
11
|
+
|
|
12
|
+
## Features
|
|
13
|
+
|
|
14
|
+
- **Zero-config** — auto-registers workspace, auto-indexes, auto-syncs on file changes
|
|
15
|
+
- **SQLite-first** — all data stored locally in `.openez/` per workspace
|
|
16
|
+
- **MCP-first** — exposes `memory_query`, `code_context`, `graph_neighbors`, `memory_write`, `index_workspace`, `list_workspaces` tools
|
|
17
|
+
- **Multi-workspace** — register and query across multiple codebases
|
|
18
|
+
- **Code graph** — symbols, files, chunks, and edges (calls, imports, contains)
|
|
19
|
+
- **Web dashboard** — built-in graph explorer and workspace management UI
|
|
20
|
+
- **Auto-sync** — file watcher re-indexes on changes (2s debounce)
|
|
4
21
|
|
|
5
22
|
## Install
|
|
6
23
|
|
|
@@ -9,24 +26,87 @@ npm install -g @openez-graph/cli
|
|
|
9
26
|
openez setup claude # or: codex, opencode
|
|
10
27
|
```
|
|
11
28
|
|
|
29
|
+
Restart your agent. Done.
|
|
30
|
+
|
|
31
|
+
## Quick start
|
|
32
|
+
|
|
33
|
+
```bash
|
|
34
|
+
# 1. Install
|
|
35
|
+
npm install -g @openez-graph/cli
|
|
36
|
+
|
|
37
|
+
# 2. Wire up your agent
|
|
38
|
+
openez setup claude # Claude Code
|
|
39
|
+
openez setup codex # Codex
|
|
40
|
+
openez setup opencode # OpenCode
|
|
41
|
+
|
|
42
|
+
# 3. Restart your agent — it will auto-index and auto-sync
|
|
43
|
+
```
|
|
44
|
+
|
|
12
45
|
## Commands
|
|
13
46
|
|
|
14
47
|
```bash
|
|
15
|
-
openez init [path]
|
|
16
|
-
openez index [path]
|
|
17
|
-
openez reindex [path]
|
|
18
|
-
openez watch [path]
|
|
19
|
-
openez serve --mcp
|
|
20
|
-
openez serve --web
|
|
21
|
-
openez serve --web --port 8080
|
|
22
|
-
openez status [path]
|
|
23
|
-
openez list
|
|
24
|
-
openez setup claude
|
|
25
|
-
openez setup codex
|
|
26
|
-
openez setup opencode
|
|
48
|
+
openez init [path] # register + index a workspace
|
|
49
|
+
openez index [path] # incremental index
|
|
50
|
+
openez reindex [path] # full rebuild
|
|
51
|
+
openez watch [path] # watch + auto-reindex on changes
|
|
52
|
+
openez serve --mcp # start MCP server (auto-index + auto-sync)
|
|
53
|
+
openez serve --web # start web dashboard (default port 17881)
|
|
54
|
+
openez serve --web --port 8080 # start web dashboard on custom port
|
|
55
|
+
openez status [path] # show workspace status
|
|
56
|
+
openez list # list registered workspaces
|
|
57
|
+
openez setup claude # wire up Claude Code
|
|
58
|
+
openez setup codex # wire up Codex
|
|
59
|
+
openez setup opencode # wire up OpenCode
|
|
27
60
|
```
|
|
28
61
|
|
|
62
|
+
## MCP Tools
|
|
63
|
+
|
|
64
|
+
| Tool | Description |
|
|
65
|
+
|------|-------------|
|
|
66
|
+
| `list_workspaces` | List all registered workspaces |
|
|
67
|
+
| `memory_query` | Full-text search + graph expansion for retrieval context |
|
|
68
|
+
| `code_context` | Get symbol context with callers, callees, and related files |
|
|
69
|
+
| `graph_neighbors` | Traverse graph edges from a node or label |
|
|
70
|
+
| `memory_write` | Write a memory entry (notes, decisions, patterns) |
|
|
71
|
+
| `index_workspace` | Trigger indexing for a workspace |
|
|
72
|
+
|
|
73
|
+
## How it works
|
|
74
|
+
|
|
75
|
+
1. **`openez setup claude`** writes MCP server config to `~/.claude/settings.json`
|
|
76
|
+
2. When Claude Code starts, it launches the MCP server via `openez serve --mcp`
|
|
77
|
+
3. The MCP server auto-registers the current project as a workspace
|
|
78
|
+
4. It auto-indexes if the workspace has no documents yet
|
|
79
|
+
5. It watches for file changes and re-indexes automatically (2s debounce)
|
|
80
|
+
6. All data is stored in `<project>/.openez/index.sqlite` — local, portable, gitignored
|
|
81
|
+
|
|
82
|
+
## Supported languages
|
|
83
|
+
|
|
84
|
+
| Language | Indexing depth |
|
|
85
|
+
|----------|---------------|
|
|
86
|
+
| TypeScript / JavaScript | Richest — `ts-morph` symbol extraction, imports, calls |
|
|
87
|
+
| Python | Basic top-level symbol extraction |
|
|
88
|
+
| Go | Basic top-level symbol extraction |
|
|
89
|
+
| Rust | Basic top-level symbol extraction |
|
|
90
|
+
| YAML / JSON / TOML | Structure-aware chunking |
|
|
91
|
+
| Markdown | Section-oriented chunking |
|
|
92
|
+
|
|
93
|
+
## Web dashboard
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
openez serve --web
|
|
97
|
+
```
|
|
98
|
+
|
|
99
|
+
Opens a full web dashboard at `http://localhost:17881` with:
|
|
100
|
+
- Workspace overview (documents, chunks, nodes, edges)
|
|
101
|
+
- Graph explorer with force-directed layout
|
|
102
|
+
- Query interface for memory retrieval
|
|
103
|
+
- Indexing control and run history
|
|
104
|
+
|
|
29
105
|
## Requirements
|
|
30
106
|
|
|
31
107
|
- Node.js 20+
|
|
32
|
-
- No
|
|
108
|
+
- No external services needed
|
|
109
|
+
|
|
110
|
+
## License
|
|
111
|
+
|
|
112
|
+
MIT © [Asta Nguyen](https://github.com/asta-nguyen)
|