graphjin 3.19.0 → 3.19.2
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 +5 -9
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -271,7 +271,7 @@ graphjin mcp add claude http://localhost:8080
|
|
|
271
271
|
|
|
272
272
|
1. **Connects to database** - Reads your schema automatically
|
|
273
273
|
2. **Discovers relationships** - Foreign keys become navigable joins
|
|
274
|
-
3. **Exposes metadata** - `gj_*` tables make discovered databases, tables, columns, relationships, functions, and indexes queryable when
|
|
274
|
+
3. **Exposes metadata** - Built-in `gj_*` tables make discovered databases, tables, columns, relationships, functions, and indexes queryable when their feature capabilities are enabled
|
|
275
275
|
4. **Indexes source code** - CodeSQL turns tree-sitter syntax trees and database references into a managed SQLite database
|
|
276
276
|
5. **Exposes MCP tools** - Teach any LLM the query syntax
|
|
277
277
|
6. **Runs JS workflows** - Chain multiple GraphJin MCP tools in one reusable workflow
|
|
@@ -286,20 +286,16 @@ CodeSQL is a managed source kind for source trees. Configure a source folder and
|
|
|
286
286
|
```yaml
|
|
287
287
|
sources:
|
|
288
288
|
- name: app
|
|
289
|
-
kind:
|
|
289
|
+
kind: database
|
|
290
290
|
type: postgres
|
|
291
291
|
connection_string: postgres://app:secret@db/app
|
|
292
292
|
default: true
|
|
293
293
|
|
|
294
294
|
- name: code
|
|
295
|
-
kind:
|
|
295
|
+
kind: code
|
|
296
296
|
path: /srv/app
|
|
297
297
|
infer_db_refs: true
|
|
298
298
|
|
|
299
|
-
- name: graphjin
|
|
300
|
-
kind: graphjin
|
|
301
|
-
metadata: true
|
|
302
|
-
|
|
303
299
|
tables:
|
|
304
300
|
- name: users
|
|
305
301
|
source: app
|
|
@@ -324,7 +320,7 @@ query {
|
|
|
324
320
|
}
|
|
325
321
|
```
|
|
326
322
|
|
|
327
|
-
|
|
323
|
+
GraphJin's built-in catalog creates `gj_catalog` according to the deployment-mode defaults; no source entry is required. Schema, catalog, entrypoint, capability, workflow, and system metadata are catalog items; table and column metadata are selected by `kind`. When one CodeSQL source is active, GraphJin links catalog items to code references automatically:
|
|
328
324
|
|
|
329
325
|
```graphql
|
|
330
326
|
query {
|
|
@@ -579,7 +575,7 @@ GraphJin exposes a catalog-first MCP surface that guides AI models to discover b
|
|
|
579
575
|
- Act through governed GraphQL roots such as `gj_workflow_execution(insert)`, `gj_workflow(insert/update/delete)`, and `gj_config(id: "current", update: ...)` only when policy exposes them.
|
|
580
576
|
- In source mode, `gj_config` writes must run `mode: "preview"` with `expected_catalog_revision`, then resend the exact same payload with `mode: "apply"` and `preview_id`.
|
|
581
577
|
- Source access and GraphJin root changes should use `source_patches` by exact source name instead of rewriting the full `sources` array.
|
|
582
|
-
- Watches are managed through `gj_watch` / `gj_watch_event` and REST wrappers (`/api/v1/watches`, `/api/v1/watch-events/unseen`). MCP clients can subscribe to `graphjin://watch-events/unseen`
|
|
578
|
+
- Watches are managed through the unified `gj_watch` lifecycle/review root plus the `gj_watch_event` inbox and REST wrappers (`/api/v1/watches`, `/api/v1/watch-events/unseen`). A deterministic notification is a plain watch; semantic or noisy triage adds inline, tool-free AxFlow in `enrich_json`; only an explicitly requested autonomous action adds workflow/webhook delivery. Review a flow with `flow_review_json` and its `flow_hash`, or a proposed action with `action_review_json` and its `action_hash`. Flow failures deliver the raw notification but never execute autonomous delivery. MCP clients can subscribe to the aggregate `graphjin://watch-events/unseen` resource or the per-watch `graphjin://watch-events/unseen/{watch_id}` template; exact subscriptions keep independent conversations from waking for each other's watches. Unsubscribing does not pause or delete durable watches.
|
|
583
579
|
- Use `/api/v1/watches/cleanup-preview` before `/api/v1/watches/cleanup-apply`. Expired ephemeral watches can be expired automatically, but durable watch deletion is always explicit.
|
|
584
580
|
- Legacy discovery tools are migration shims and are disabled unless `mcp.legacy_discovery: true`.
|
|
585
581
|
|