graphjin 3.18.43 → 3.18.45

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 +47 -36
  2. package/package.json +2 -2
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # GraphJin - The Governed Data Plane for AI Agents
1
+ # GraphJin One Governed Graph for Your AI Agents
2
2
 
3
3
  [![Apache 2.0](https://img.shields.io/github/license/dosco/graphjin.svg?style=for-the-badge)](https://github.com/dosco/graphjin/blob/master/LICENSE)
4
4
  [![NPM Package](https://img.shields.io/npm/v/graphjin?style=for-the-badge)](https://www.npmjs.com/package/graphjin)
@@ -7,7 +7,7 @@
7
7
  [![GoDoc](https://img.shields.io/badge/godoc-reference-5272B4.svg?style=for-the-badge&logo=go)](https://pkg.go.dev/github.com/dosco/graphjin/core/v3)
8
8
  [![GoReport](https://goreportcard.com/badge/github.com/gojp/goreportcard?style=for-the-badge)](https://goreportcard.com/report/github.com/dosco/graphjin/core/v3)
9
9
 
10
- GraphJin is a compiler and runtime that lets AI agents connect to the systems a real company already has: databases, warehouses, files, source code, workflows, metadata, and security policy. Instead of handing an agent raw credentials and hoping it guesses correctly, GraphJin gives it one governed GraphQL + MCP surface where it can discover before acting, validate queries, run approved work, and observe runtime status.
10
+ GraphJin is a compiler and runtime that gives AI agents one governed graph over the systems a real company already has: databases, warehouses, files, source code, workflows, metadata, and security policy. Instead of handing an agent raw credentials and hoping it guesses correctly, GraphJin exposes that graph through GraphQL + MCP: the agent discovers before acting, validates queries, runs approved work, observes runtime status — and every answer is checked against an execution ledger before it leaves the server.
11
11
 
12
12
  It is not only for agents. GraphJin is still a high-performance GraphQL-to-database compiler, Go library, standalone API service, REST/OpenAPI gateway, and real-time subscription server. The agent use case is where everything comes together: the same compiler that serves your apps can also give AI a smart, auditable way to work across data, code, and operations.
13
13
 
@@ -51,57 +51,58 @@ docker pull dosco/graphjin
51
51
 
52
52
  ## Try It Now
53
53
 
54
- This is a quick way to try out GraphJin. The `--demo` flag runs a curated local
55
- demo, creates local state under the example's `demo/` folder, and reuses that
56
- state on later starts. Delete `demo/` to reset from scratch.
54
+ One command, no clone, no Docker. The binary ships with a built-in demo — a
55
+ SaaS company ops app (accounts, subscriptions, invoices, support tickets) on
56
+ SQLite with seeded data, saved queries, and workflows:
57
57
 
58
- Download the source which contains the `webshop` demo
59
- ```
60
- git clone https://github.com/dosco/graphjin
61
- cd graphjin
62
- ```
63
-
64
- Now launch the Graphjin service that you installed using the install options above
65
58
  ```bash
66
- graphjin serve --demo --path examples/webshop
59
+ graphjin serve --demo
67
60
  ```
68
61
 
69
- For a larger agent-driven example with Postgres operations data, a BigQuery
70
- simulator for roast telemetry, CodeSQL over internal business code, and
71
- executable workflows:
62
+ The demo project is extracted to `./graphjin-demo`, and its state lives under
63
+ `./graphjin-demo/demo/`. Delete the `demo/` folder to reset the data, or
64
+ delete `./graphjin-demo` entirely for a fresh copy. You'll see output like
65
+ this:
72
66
 
73
- ```bash
74
- graphjin serve --demo --path examples/coffee-roastery
75
- ```
76
-
77
- More demo verticals — a MySQL corrugated-box plant with JWT roles, a PCB fab
78
- spanning Postgres + Snowflake-emu + MongoDB + a file source + an OpenAPI
79
- supplier API, and a zero-Docker SQLite clinic scheduler — live in
80
- [examples/](examples/README.md), each with an end-to-end smoke suite
81
- (`make smoke-all` runs them all).
82
-
83
- You'll see output like this:
84
67
  ```
85
68
  GraphJin started
86
69
  ───────────────────────
87
- Web UI: http://localhost:8080/
88
- GraphQL: http://localhost:8080/api/v1/graphql
89
- REST API: http://localhost:8080/api/v1/rest/
90
- Workflows: http://localhost:8080/api/v1/workflows/<name>
91
- MCP: http://localhost:8080/api/v1/mcp
70
+ Web UI: http://localhost:8083/
71
+ GraphQL: http://localhost:8083/api/v1/graphql
72
+ REST API: http://localhost:8083/api/v1/rest/
73
+ Workflows: http://localhost:8083/api/v1/workflows/<name>
74
+ MCP: http://localhost:8083/api/v1/mcp
92
75
  ```
93
76
 
94
77
  **Ask the built-in agent**
95
78
 
96
- With a model API key in `./.env` (`OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, or `GOOGLE_APIKEY`), `--demo` also switches into agentic mode and enables GraphJin's built-in agent - one instruction in, a typed, evidence-backed answer out. Against the coffee-roastery demo:
79
+ With a model API key in `./.env` (`OPENAI_API_KEY`, `ANTHROPIC_API_KEY`, or `GOOGLE_APIKEY`), the same command switches into agentic mode and enables GraphJin's built-in agent - one instruction in, a typed, evidence-backed answer out:
97
80
 
98
81
  ```bash
99
- curl -sS localhost:8080/api/v1/agent \
82
+ curl -sS localhost:8083/api/v1/agent \
100
83
  -H 'content-type: application/json' \
101
- -d '{"instruction": "What production work should we prioritize next?"}'
84
+ -d '{"instruction": "Which account is most at risk of churning?"}'
85
+ ```
86
+
87
+ Answers come back as `{status, answer, data, evidence, actions, next}`, grounded by server-side protocol guards. You can also chat with it in the built-in web console at `localhost:8083/agent` — it streams every tool call live as it works. See [Server-Side Agent](#server-side-agent) below, [AGENTIC.md](AGENTIC.md#server-side-agent), and [graphjin.com/agentic/server-agent](https://graphjin.com/agentic/server-agent/).
88
+
89
+ **More demo verticals**
90
+
91
+ The bigger demos live in the repo — clone it and pass `--path`:
92
+
93
+ ```bash
94
+ git clone https://github.com/dosco/graphjin
95
+ cd graphjin
96
+ graphjin serve --demo --path examples/webshop # classic GraphQL starter (Postgres)
97
+ graphjin serve --demo --path examples/coffee-roastery # flagship agentic demo (Postgres + BigQuery-emu + CodeSQL)
102
98
  ```
103
99
 
104
- Answers come back as `{status, answer, data, evidence, actions, next}`, grounded by server-side protocol guards. See [Server-Side Agent](#server-side-agent) below, [AGENTIC.md](AGENTIC.md#server-side-agent), and [graphjin.com/agentic/server-agent](https://graphjin.com/agentic/server-agent/).
100
+ Each demo keeps its state under `<path>/demo/` and reuses it on later starts.
101
+ A MySQL corrugated-box plant with JWT roles and a PCB fab spanning Postgres +
102
+ Snowflake-emu + MongoDB + a file source + an OpenAPI supplier API live in
103
+ [examples/](examples/README.md), each with an end-to-end smoke suite
104
+ (`make smoke-all` runs them all). The full tour is at
105
+ <https://graphjin.com/start/demos/>.
105
106
 
106
107
  ## Add GraphJin To Your AI Client
107
108
 
@@ -389,6 +390,16 @@ mutation {
389
390
  }
390
391
  ```
391
392
 
393
+ PostgreSQL and SQLite also support an update-free insert conflict policy for a single row. GraphJin infers one supplied unique key and returns the stored row unchanged on conflict:
394
+
395
+ ```graphql
396
+ mutation {
397
+ users(insert: { email: "ada@example.com", full_name: "Ada" }, on_conflict: get) {
398
+ id email full_name
399
+ }
400
+ }
401
+ ```
402
+
392
403
  **Spatial queries:**
393
404
  ```graphql
394
405
  {
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "graphjin",
3
- "version": "3.18.43",
4
- "description": "GraphJin CLI - Build APIs in 5 minutes with GraphQL",
3
+ "version": "3.18.45",
4
+ "description": "GraphJin one governed graph for AI agents: GraphQL + MCP over your databases, files, APIs, and code",
5
5
  "bin": {
6
6
  "graphjin": "bin/graphjin.js"
7
7
  },