chain-insights 0.19.0 → 0.22.3

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 (141) hide show
  1. package/README.md +52 -128
  2. package/bin/cli.js +4 -4
  3. package/bin/install.cjs +137 -113
  4. package/bin/mcp-proxy.cjs +7 -5
  5. package/dist/{action-log-Dfe88TwV.cjs → action-log-HniMMF7f.cjs} +1 -1
  6. package/dist/action-log-diTHyMbV.mjs.map +1 -1
  7. package/dist/active-BQopLul8.mjs.map +1 -1
  8. package/dist/{active-Bj6dohpc.cjs → active-Bc13hJIm.cjs} +1 -1
  9. package/dist/{app-D4Cm69ob.cjs → app-BHRl5oDo.cjs} +5 -5
  10. package/dist/{app-CJwx_2Rr.mjs → app-BeZyCVuz.mjs} +2 -2
  11. package/dist/app-BeZyCVuz.mjs.map +1 -0
  12. package/dist/{artifact-server-sJBFGcum.cjs → artifact-server-B8WKXtXr.cjs} +3 -2
  13. package/dist/{artifact-server-D1D-_t5l.mjs → artifact-server-C1fETWsc.mjs} +4 -3
  14. package/dist/artifact-server-C1fETWsc.mjs.map +1 -0
  15. package/dist/{capabilities-CxvK7LKZ.mjs → capabilities-BZI6qROg.mjs} +2 -2
  16. package/dist/capabilities-BZI6qROg.mjs.map +1 -0
  17. package/dist/{capabilities-CZYijWbg.cjs → capabilities-CPcrxodx.cjs} +2 -2
  18. package/dist/cli.cjs +42 -216
  19. package/dist/cli.mjs +36 -210
  20. package/dist/cli.mjs.map +1 -1
  21. package/dist/{client-Bjxo7AEa.cjs → client-CqAzD519.cjs} +4 -4
  22. package/dist/{client-i3WtsKA4.mjs → client-D4aM4bzP.mjs} +4 -4
  23. package/dist/client-D4aM4bzP.mjs.map +1 -0
  24. package/dist/{config-DE0dUT3P.cjs → config-DYiUgdzg.cjs} +3 -3
  25. package/dist/{config-DA6KRx60.mjs → config-DiQs0rQX.mjs} +3 -3
  26. package/dist/config-DiQs0rQX.mjs.map +1 -0
  27. package/dist/graph-normalizer-BA3Rbd6l.mjs.map +1 -1
  28. package/dist/graph-reports-B6yoYbPq.mjs.map +1 -1
  29. package/dist/{graph-reports-DSHSp5HL.cjs → graph-reports-_gqzxvvs.cjs} +2 -2
  30. package/dist/{html-generator-Ui29DLSD.cjs → html-generator-B9f_GIi2.cjs} +4 -3
  31. package/dist/{html-generator-ClysZjfY.mjs → html-generator-D2BDzLED.mjs} +3 -2
  32. package/dist/{html-generator-ClysZjfY.mjs.map → html-generator-D2BDzLED.mjs.map} +1 -1
  33. package/dist/index.cjs +9 -9
  34. package/dist/index.d.cts +3 -0
  35. package/dist/index.d.cts.map +1 -1
  36. package/dist/index.d.mts +3 -0
  37. package/dist/index.d.mts.map +1 -1
  38. package/dist/index.mjs +9 -9
  39. package/dist/{init-BR4SRTAY.cjs → init-C3AVZHFb.cjs} +5 -5
  40. package/dist/{init-BT3STWBv.mjs → init-CO-PRYhT.mjs} +5 -5
  41. package/dist/init-CO-PRYhT.mjs.map +1 -0
  42. package/dist/limits-D3Mn-gig.mjs.map +1 -1
  43. package/dist/{mcp-endpoint-DbWtLcba.mjs → mcp-endpoint-Bd3SvCkg.mjs} +3 -3
  44. package/dist/mcp-endpoint-Bd3SvCkg.mjs.map +1 -0
  45. package/dist/{mcp-endpoint-BIWrUOFG.cjs → mcp-endpoint-DdIVQKW5.cjs} +3 -3
  46. package/dist/mcp-proxy.cjs +19 -18
  47. package/dist/mcp-proxy.d.cts.map +1 -1
  48. package/dist/mcp-proxy.d.mts.map +1 -1
  49. package/dist/mcp-proxy.mjs +13 -12
  50. package/dist/mcp-proxy.mjs.map +1 -1
  51. package/dist/{merge-CJRZpuZ4.mjs → merge-BZw-pMPN.mjs} +2 -2
  52. package/dist/merge-BZw-pMPN.mjs.map +1 -0
  53. package/dist/{merge-B_5kxbGv.cjs → merge-C52eaAGU.cjs} +1 -1
  54. package/dist/{output-root-C1PFNCqb.cjs → output-root-BewoQaTx.cjs} +2 -2
  55. package/dist/{public-tools-CgiKgYgf.cjs → public-tools-BFs_7U_Z.cjs} +8 -7
  56. package/dist/{public-tools-B9_wXs2o.mjs → public-tools-BjqZGGAC.mjs} +7 -6
  57. package/dist/public-tools-BjqZGGAC.mjs.map +1 -0
  58. package/dist/{rolldown-runtime-DakpK96I.cjs → rolldown-runtime-C0BPl7ul.cjs} +1 -1
  59. package/dist/{schema-DF0aOXII.cjs → schema-DepyuUEP.cjs} +7 -4
  60. package/dist/{schema-cache-DwDvPy4e.mjs → schema-cache-DJdU4MIP.mjs} +2 -2
  61. package/dist/{schema-cache-DwDvPy4e.mjs.map → schema-cache-DJdU4MIP.mjs.map} +1 -1
  62. package/dist/{schema-cache-CX0r2UQp.cjs → schema-cache-n7Gbhvsj.cjs} +2 -2
  63. package/dist/{schema-0BVyF-aL.mjs → schema-v5cwychf.mjs} +7 -4
  64. package/dist/schema-v5cwychf.mjs.map +1 -0
  65. package/dist/{server-BXj6BRI1.mjs → server-BDmHAF1w.mjs} +4 -3
  66. package/dist/server-BDmHAF1w.mjs.map +1 -0
  67. package/dist/{server-ta1oyJ2a.cjs → server-BjprY9Ef.cjs} +4 -3
  68. package/dist/tool-visibility-C0ALejXI.mjs.map +1 -1
  69. package/dist/{tool-visibility-DMIEexib.cjs → tool-visibility-DZBAP62b.cjs} +1 -1
  70. package/dist/{tools-CWwX4yth.mjs → tools-BKLnlBG1.mjs} +8 -6
  71. package/dist/tools-BKLnlBG1.mjs.map +1 -0
  72. package/dist/{tools-BPfUpCUR.cjs → tools-lPY6k-vJ.cjs} +8 -6
  73. package/dist/{topup-server-VGl8-Fz5.cjs → topup-server-DAqmAuu1.cjs} +23 -21
  74. package/dist/{topup-server-D2X7My7i.mjs → topup-server-rqI7bqem.mjs} +23 -21
  75. package/dist/topup-server-rqI7bqem.mjs.map +1 -0
  76. package/dist/update-CJUfGCxs.mjs.map +1 -1
  77. package/dist/{usage-status-H1xgCu99.cjs → usage-status-BdwwgYsu.cjs} +2 -2
  78. package/dist/{usage-status-D2uosC7s.mjs → usage-status-CHiOPA-2.mjs} +2 -2
  79. package/dist/usage-status-CHiOPA-2.mjs.map +1 -0
  80. package/dist/version-BA3J8hu4.mjs.map +1 -1
  81. package/dist/{viz-HSwLcKr6.cjs → viz-BJ_kyRjI.cjs} +7 -5
  82. package/dist/{viz-Cq1jSWSH.mjs → viz-Uh_EF-qB.mjs} +6 -4
  83. package/dist/viz-Uh_EF-qB.mjs.map +1 -0
  84. package/dist/{wallet-C2yVjcSY.cjs → wallet-BEvHrHi3.cjs} +3 -2
  85. package/dist/{wallet-BrTTnf7w.mjs → wallet-fMbhvKXT.mjs} +3 -2
  86. package/dist/wallet-fMbhvKXT.mjs.map +1 -0
  87. package/docs/architecture.md +21 -20
  88. package/docs/debugging.md +2 -42
  89. package/docs/development.md +0 -27
  90. package/docs/graph-query-compatibility.md +66 -57
  91. package/docs/graph-tools.md +6 -6
  92. package/docs/investigation-workspaces.md +0 -35
  93. package/docs/mcp-proxy.md +15 -18
  94. package/docs/search-limits.md +8 -8
  95. package/docs/stability.md +4 -5
  96. package/package.json +1 -5
  97. package/skills/chain-insights-cypher/SKILL.md +7 -7
  98. package/skills/chain-insights-cypher/agents/openai.yaml +3 -3
  99. package/skills/chain-insights-schema-bittensor/SKILL.md +26 -26
  100. package/skills/chain-insights-schema-evm/SKILL.md +37 -37
  101. package/dist/app-CJwx_2Rr.mjs.map +0 -1
  102. package/dist/artifact-server-D1D-_t5l.mjs.map +0 -1
  103. package/dist/capabilities-CxvK7LKZ.mjs.map +0 -1
  104. package/dist/cases-C1XewLdx.mjs +0 -155
  105. package/dist/cases-C1XewLdx.mjs.map +0 -1
  106. package/dist/cases-CVtc7Rf8.cjs +0 -160
  107. package/dist/client-i3WtsKA4.mjs.map +0 -1
  108. package/dist/config-CwIb-tav.mjs +0 -33
  109. package/dist/config-CwIb-tav.mjs.map +0 -1
  110. package/dist/config-Cy-qzx4W.cjs +0 -33
  111. package/dist/config-DA6KRx60.mjs.map +0 -1
  112. package/dist/init-9jY5rCcH.cjs +0 -24
  113. package/dist/init-BT3STWBv.mjs.map +0 -1
  114. package/dist/init-BiRfMQcA.mjs +0 -26
  115. package/dist/init-BiRfMQcA.mjs.map +0 -1
  116. package/dist/lock-Cs-a3Ng1.cjs +0 -38
  117. package/dist/lock-D_sWGS7W.mjs +0 -40
  118. package/dist/lock-D_sWGS7W.mjs.map +0 -1
  119. package/dist/mcp-endpoint-DbWtLcba.mjs.map +0 -1
  120. package/dist/merge-CJRZpuZ4.mjs.map +0 -1
  121. package/dist/paths-CffVTUCv.cjs +0 -31
  122. package/dist/paths-_3isihzD.mjs +0 -21
  123. package/dist/paths-_3isihzD.mjs.map +0 -1
  124. package/dist/public-tools-B9_wXs2o.mjs.map +0 -1
  125. package/dist/render-TmSq0f4f.cjs +0 -207
  126. package/dist/render-mxE0Tdsf.mjs +0 -206
  127. package/dist/render-mxE0Tdsf.mjs.map +0 -1
  128. package/dist/report-BFXFrJmj.mjs +0 -36
  129. package/dist/report-BFXFrJmj.mjs.map +0 -1
  130. package/dist/report-BwKQqOCR.cjs +0 -36
  131. package/dist/runner-CSss8Hvy.mjs +0 -33
  132. package/dist/runner-CSss8Hvy.mjs.map +0 -1
  133. package/dist/runner-aErdz2zn.cjs +0 -31
  134. package/dist/schema-0BVyF-aL.mjs.map +0 -1
  135. package/dist/server-BXj6BRI1.mjs.map +0 -1
  136. package/dist/tools-CWwX4yth.mjs.map +0 -1
  137. package/dist/topup-server-D2X7My7i.mjs.map +0 -1
  138. package/dist/usage-status-D2uosC7s.mjs.map +0 -1
  139. package/dist/viz-Cq1jSWSH.mjs.map +0 -1
  140. package/dist/wallet-BrTTnf7w.mjs.map +0 -1
  141. package/docs/monitoring.md +0 -277
package/README.md CHANGED
@@ -7,9 +7,12 @@
7
7
 
8
8
  [Website](https://chain-insights.ai) | [npm](https://www.npmjs.com/package/chain-insights)
9
9
 
10
- Chain Insights is an open-source AML investigation toolkit for AI agents and
11
- analysts. It screens blockchain addresses, explores fund flows through graph
12
- queries, manages local evidence workspaces, and generates graph reports.
10
+ Chain Insights is open-source AML and forensics infrastructure for AI agents
11
+ and analysts: a hosted Chain Insights Graph you reach over MCP, screened
12
+ through one CLI. It screens blockchain addresses for risk, explores fund flows
13
+ through read-only graph queries, and renders graph reports from your own
14
+ investigation folders. Every new account gets a free tier — a daily allowance
15
+ of graph queries, no payment setup — so you can run a first screen in minutes.
13
16
 
14
17
  ## Quickstart
15
18
 
@@ -19,7 +22,8 @@ as-is on macOS; on Windows use WSL.
19
22
  ```bash
20
23
  npx chain-insights@latest --help # run without installing
21
24
  npm install -g chain-insights # or install the cia CLI globally
22
- cia init ~/cases # scaffold an investigation workspace
25
+ cia init ~/cases # optional local investigation folder
26
+ cia mcp call aml_address_risk network=robinhood address=0xYourAddressHere
23
27
  cia networks # supported networks + public tool surface
24
28
  ```
25
29
 
@@ -46,11 +50,8 @@ Owns:
46
50
  / `wallet_*` tools.
47
51
  - Local wallet and payment on Base mainnet (payment chain only).
48
52
  - Investigation workspaces, graph reports, and visualization.
49
- - `cia monitor`: per-case tracking with rendered dossiers on an external
50
- schedule.
51
53
  - Shipped product skills under `skills/` (`chain-insights-*`), packaged
52
54
  into the npm tarball.
53
- - The local Bittensor graph devkit under `devkit/`.
54
55
 
55
56
  Never touches:
56
57
 
@@ -64,65 +65,30 @@ Never touches:
64
65
 
65
66
  ### What You Can Do Today
66
67
 
67
- | Tool | Use it for |
68
- | --- | --- |
69
- | `aml_address_risk` | Screen one address for risk, behavior, neighborhood context, and exchange exposure |
70
- | `graph_query` | Run one read-only GQL/Cypher query against a Chain Insights Graph layer |
71
- | `graph_query_batch` | Run related read-only graph queries as one MCP call |
72
- | `meta_network_capabilities` | Check supported Chain Insights networks and graph tools |
73
- | `meta_usage_status` | Check the caller's daily free-tier graph query allowance |
74
- | `meta_help` | Show Chain Insights tool and workflow guidance |
75
- | `wallet_balance` | Show the local payment wallet amount |
76
-
77
- ### Continuous Monitoring
78
-
79
- `cia monitor` re-renders each open case's dossier on a schedule. It turns one
80
- investigation into a standing view: seeds, scope changes, and render state
81
- stay as plain files in the workspace.
82
-
83
- | Command | What it does |
84
- | --- | --- |
85
- | `cia monitor run` | One pass: render the dossier of every open case |
86
- | `cia monitor status` | Open cases and the last run |
87
- | `cia monitor render` | Re-render all open cases (or one case) from the case document |
88
- | `cia monitor init victim` | Bootstrap a stolen-funds case-tracking config in one command |
89
- | `cia monitor case add` | Register a monitor case with one or more seed addresses |
90
- | `cia monitor case list` | List monitor cases (open by default, `--all` for closed) |
91
- | `cia monitor case add-seed` | Widen an open case's seed set, timestamped |
92
- | `cia monitor case remove-seed` | Narrow an open case's seed set |
93
- | `cia monitor case close` | Close a case; passes skip it |
94
-
95
- Three things to know before scheduling it:
96
-
97
- - **`cia monitor run` is a one-shot.** One pass, then exit. Schedule it with
98
- cron, pm2 (`cron_restart` plus `autorestart: false`), or your agent
99
- harness's scheduled tasks.
100
- - **Exit `2` means an isolated case failed** while every other case
101
- completed. Partial success, not a crash. Only exit `1` means nothing ran.
102
- - **An unchanged case is skipped, not re-rendered.** The run document
103
- records `skipped_reason: 'unchanged'`, so a quiet watch reads as healthy
104
- by design.
105
-
106
- See [Continuous monitoring](docs/monitoring.md) for the full surface.
68
+ | Tool | Use it for |
69
+ | --------------------------- | ---------------------------------------------------------------------------------- |
70
+ | `aml_address_risk` | Screen one address for risk, behavior, neighborhood context, and exchange exposure |
71
+ | `graph_query` | Run one read-only GQL/Cypher query against a Chain Insights Graph layer |
72
+ | `graph_query_batch` | Run related read-only graph queries as one MCP call |
73
+ | `meta_network_capabilities` | Check supported Chain Insights networks and graph tools |
74
+ | `meta_usage_status` | Check the caller's daily free-tier graph query allowance |
75
+ | `meta_help` | Show Chain Insights tool and workflow guidance |
76
+ | `wallet_balance` | Show the local payment wallet amount |
107
77
 
108
78
  ## Dependencies
109
79
 
110
80
  Upstream:
111
81
 
112
82
  - **Chain Insights Graph MCP endpoint** — all graph queries and AML
113
- primitives. Configured via `graphMcpEndpoint`; defaults to a local
114
- endpoint.
83
+ primitives. Configured via `graphMcpEndpoint`; defaults to the public
84
+ production endpoint `https://mcp.chain-insights.ai/`.
115
85
  - **Base mainnet RPC** — wallet balance and payment only
116
86
  (`BASE_RPC_URL` override). Not a graph-support claim.
117
- - **Devkit fixture data** — pre-generated from the upstream export path
118
- and committed under `devkit/data/`.
119
87
 
120
88
  Downstream:
121
89
 
122
90
  - Analysts and AI agents install the npm package and call the CLI or the
123
91
  MCP tools.
124
- - Monitor case dossiers render as Markdown under the workspace
125
- (`published/cases/<case_id>/`), ready for review and handoff.
126
92
 
127
93
  ## Architecture
128
94
 
@@ -140,16 +106,15 @@ Agent or CLI user
140
106
 
141
107
  Source modules (hand-maintained):
142
108
 
143
- | Module | Entrypoint | Component doc |
144
- |---|---|---|
145
- | `config` | `src/config` | [components/config.md](docs/architecture/components/config.md) |
146
- | `federation` | `src/federation` | [components/federation.md](docs/architecture/components/federation.md) |
109
+ | Module | Entrypoint | Component doc |
110
+ | --------------- | ------------------- | ---------------------------------------------------------------------------- |
111
+ | `config` | `src/config` | [components/config.md](docs/architecture/components/config.md) |
112
+ | `federation` | `src/federation` | [components/federation.md](docs/architecture/components/federation.md) |
147
113
  | `investigation` | `src/investigation` | [components/investigation.md](docs/architecture/components/investigation.md) |
148
- | `mcp` | `src/mcp` | [components/mcp.md](docs/architecture/components/mcp.md) |
149
- | `monitor` | `src/monitor` | [components/monitor.md](docs/architecture/components/monitor.md) |
150
- | `server` | `src/server` | [components/server.md](docs/architecture/components/server.md) |
151
- | `viz` | `src/viz` | [components/viz.md](docs/architecture/components/viz.md) |
152
- | `wallet` | `src/wallet` | [components/wallet.md](docs/architecture/components/wallet.md) |
114
+ | `mcp` | `src/mcp` | [components/mcp.md](docs/architecture/components/mcp.md) |
115
+ | `server` | `src/server` | [components/server.md](docs/architecture/components/server.md) |
116
+ | `viz` | `src/viz` | [components/viz.md](docs/architecture/components/viz.md) |
117
+ | `wallet` | `src/wallet` | [components/wallet.md](docs/architecture/components/wallet.md) |
153
118
 
154
119
  Entry points:
155
120
 
@@ -166,10 +131,10 @@ and [operating rules](docs/architecture/operating-rules.md).
166
131
 
167
132
  Graph queries choose the read graph explicitly:
168
133
 
169
- | Graph | Use it for |
170
- | --- | --- |
134
+ | Graph | Use it for |
135
+ | ---------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
171
136
  | `topology` | The unified address / FLOWS_TO / LINKED graph — recent and full historical fund-flow traversal, plus the node `risk_score`/`risk_level` verdict |
172
- | `facts` | Labels, features, assets, and enrichment |
137
+ | `facts` | Labels, features, assets, and enrichment |
173
138
 
174
139
  One rule is worth reading before writing a query by hand: the `network`
175
140
  argument selects the graph, not the addresses inside it. The address-space
@@ -221,14 +186,12 @@ Use `usage` to see the real cost of a workflow call, not just of one
221
186
  - **Linux** is the reference platform; shell snippets use bash (macOS works
222
187
  the same; on Windows use WSL).
223
188
  - **Node.js 22 or newer** (`package.json` engines) and npm.
224
- - Optional: Docker with the Compose plugin, for the local devkit backend.
225
- - Optional: pm2 or cron, for standing-watch monitoring.
226
189
 
227
190
  `.env.example` documents the two supported overrides:
228
191
 
229
- | Variable | Purpose |
230
- | --- | --- |
231
- | `BASE_RPC_URL` | Base RPC override for wallet balance and the local top-up page |
192
+ | Variable | Purpose |
193
+ | ----------------------------------- | ----------------------------------------------------------------------------------------------------- |
194
+ | `BASE_RPC_URL` | Base RPC override for wallet balance and the local top-up page |
232
195
  | `CHAIN_INSIGHTS_GRAPH_MCP_ENDPOINT` | Chain Insights Graph endpoint override; local HTTP loopback allowed, remote hosts must use `https://` |
233
196
 
234
197
  ## Run
@@ -287,45 +250,20 @@ cia mcp call graph_query_batch \
287
250
  More query examples (manual fund-flow reads, pagination):
288
251
  [Graph tools](docs/graph-tools.md).
289
252
 
290
- ### Dev Compose (local devkit backend)
291
-
292
- The devkit runs a deterministic local Bittensor Chain Insights Graph
293
- backend. Compose file: `devkit/docker-compose.yml` (default compose
294
- project network). Services: `starrocks`, `memgraph`,
295
- `starrocks-import`, `memgraph-import` (one-shot), and
296
- `chain-insights-graph-devkit`. Images build locally with
297
- `docker compose build` — never pulled from a registry.
298
-
299
- Start from a clean state:
300
-
301
- ```bash
302
- docker compose -f devkit/docker-compose.yml down -v --remove-orphans
303
- docker compose -f devkit/docker-compose.yml up -d --build
304
- ```
305
-
306
- One-shot import services must exit 0. `starrocks`, `memgraph`, and
307
- `chain-insights-graph-devkit` must stay running. The MCP endpoint is
308
- `http://127.0.0.1:18012/mcp`, unmetered:
309
-
310
- ```bash
311
- export CHAIN_INSIGHTS_GRAPH_MCP_ENDPOINT=http://127.0.0.1:18012/mcp
312
- ```
313
-
314
- Full contract and procedures live in the devkit directory's own README.
315
-
316
253
  ## Configure
317
254
 
318
255
  `cia` uses `graphMcpEndpoint` for all Chain Insights Graph calls. The npm
319
- package does not hardcode a hosted endpoint.
256
+ package uses the public production endpoint by default, so a fresh install can
257
+ run `cia networks` immediately.
320
258
 
321
- Local development endpoint (default):
259
+ For local development, override the default explicitly:
322
260
 
323
261
  ```bash
324
262
  cia config set graphMcpEndpoint http://127.0.0.1:8012/mcp
325
263
  ```
326
264
 
327
- Public production Graph (operator configuration, never a package default).
328
- Use the host root. Do not add `/mcp`.
265
+ The public production Graph is already the default. Use the host root. Do not
266
+ add `/mcp`.
329
267
 
330
268
  ```bash
331
269
  cia config set graphMcpEndpoint https://mcp.chain-insights.ai/
@@ -342,7 +280,7 @@ Configuration precedence:
342
280
  1. `CHAIN_INSIGHTS_GRAPH_MCP_ENDPOINT` env var (`GRAPH_MCP_ENDPOINT`
343
281
  legacy alias also supported).
344
282
  2. `cia config set graphMcpEndpoint ...` saved value.
345
- 3. Local default `http://127.0.0.1:8012/mcp`.
283
+ 3. Public production default `https://mcp.chain-insights.ai/`.
346
284
 
347
285
  Validation rules:
348
286
 
@@ -375,14 +313,6 @@ npm test
375
313
  npm run release:check # PR-only step in verify.yml
376
314
  ```
377
315
 
378
- Devkit-backed tiers (need the dev compose lane running):
379
-
380
- ```bash
381
- npm run devkit:smoke
382
- npm run devkit:smoke:parity
383
- npm run test:devkit
384
- ```
385
-
386
316
  CI install step, when reproducing CI:
387
317
 
388
318
  ```bash
@@ -396,8 +326,6 @@ release:check, tests, npm pack contents), `security.yml`, `scorecard.yml`,
396
326
  ## Debug
397
327
 
398
328
  - Diagnostics and debug workflows: [docs/debugging.md](docs/debugging.md).
399
- - Skip payment negotiation against the unmetered devkit:
400
- `cia debug on --token <any-string> --endpoint http://127.0.0.1:18012/mcp`.
401
329
  - MCP proxy structured logs: `~/.chain-insights/runtime/logs/mcp-proxy.jsonl`.
402
330
 
403
331
  Health checks (each is runnable):
@@ -418,8 +346,6 @@ cia mcp tools --refresh
418
346
  # Installed CLI sanity
419
347
  cia --version && cia update --check
420
348
 
421
- # Devkit service state (all imports exited 0, backends running)
422
- docker compose -f devkit/docker-compose.yml ps -a
423
349
  ```
424
350
 
425
351
  If network or tool discovery fails, check the endpoint and access mode
@@ -430,27 +356,25 @@ investigation workflow without a reachable endpoint.
430
356
 
431
357
  Product docs:
432
358
 
433
- | Doc | Use it for |
434
- | --- | --- |
435
- | [Graph tools](docs/graph-tools.md) | Graph layers, `graph_query`, `graph_query_batch`, AML tool contracts, graph reports |
436
- | [Graph query compatibility](docs/graph-query-compatibility.md) | GQL/Cypher support per layer, rewrite recipes, traversal guidance |
437
- | [Search limits](docs/search-limits.md) | Tunable search/row/frontier/hop bounds, precedence, ceilings |
438
- | [Investigation workspaces](docs/investigation-workspaces.md) | `cia init`, workspace layout, artifacts, templates, reports, visualization |
439
- | [Continuous monitoring](docs/monitoring.md) | `cia monitor` commands, case tracking, dossier rendering, scheduling, exit codes |
440
- | [MCP proxy](docs/mcp-proxy.md) | Stdio proxy behavior, endpoint configuration, agent installers, auth modes |
441
- | [Architecture overview](docs/architecture.md) | Product layers, data flow, local storage, security model, config keys |
442
- | [Development](docs/development.md) | Build, test, and local install commands |
443
- | [Contributing](docs/contributing.md) | Development workflow, pull requests, release expectations |
444
- | [Stability policy](docs/stability.md) | Guaranteed surfaces (exit codes, MCP tool names, workspace layout), deprecation rules |
445
- | [Debugging](docs/debugging.md) | Local troubleshooting, diagnostics, debug workflows |
446
- | Bittensor devkit (in this repo under `devkit/`) | Local Bittensor graph backend contract, fixture, smoke procedures |
359
+ | Doc | Use it for |
360
+ | -------------------------------------------------------------- | ------------------------------------------------------------------------------------- |
361
+ | [Graph tools](docs/graph-tools.md) | Graph layers, `graph_query`, `graph_query_batch`, AML tool contracts, graph reports |
362
+ | [Graph query compatibility](docs/graph-query-compatibility.md) | GQL/Cypher support per layer, rewrite recipes, traversal guidance |
363
+ | [Search limits](docs/search-limits.md) | Tunable search/row/frontier/hop bounds, precedence, ceilings |
364
+ | [Investigation workspaces](docs/investigation-workspaces.md) | `cia init`, workspace layout, artifacts, templates, reports, visualization |
365
+ | [MCP proxy](docs/mcp-proxy.md) | Stdio proxy behavior, endpoint configuration, agent installers, auth modes |
366
+ | [Architecture overview](docs/architecture.md) | Product layers, data flow, local storage, security model, config keys |
367
+ | [Development](docs/development.md) | Build, test, and local install commands |
368
+ | [Contributing](docs/contributing.md) | Development workflow, pull requests, release expectations |
369
+ | [Stability policy](docs/stability.md) | Guaranteed surfaces (exit codes, MCP tool names, workspace layout), deprecation rules |
370
+ | [Debugging](docs/debugging.md) | Local troubleshooting, diagnostics, debug workflows |
447
371
 
448
372
  Architecture depth:
449
373
 
450
374
  - [docs/architecture/](docs/architecture/ARCHITECTURE.md) — index, C4
451
375
  diagrams, context, containers, components.
452
376
  - [Data contracts](docs/architecture/data-contracts.md) — tool surface,
453
- search limits, endpoint rules, shared-graph model, devkit contract.
377
+ search limits, endpoint rules, shared-graph model.
454
378
  - [Operating rules](docs/architecture/operating-rules.md) — repo
455
379
  invariants, findings rules, CI gotchas.
456
380
  - [docs/acceptance/](docs/acceptance/) — per-component acceptance evidence.
package/bin/cli.js CHANGED
@@ -1,9 +1,9 @@
1
1
  #!/usr/bin/env node
2
- 'use strict';
2
+ 'use strict'
3
3
 
4
4
  // CJS shim: bridges the npm bin entry to the ESM dist built by tsdown.
5
5
  // Dynamic import() is the correct bridge pattern from CommonJS to ESM.
6
6
  import('../dist/cli.mjs').catch((err) => {
7
- console.error('Failed to load chain-insights:', err.message);
8
- process.exit(1);
9
- });
7
+ console.error('Failed to load chain-insights:', err.message)
8
+ process.exit(1)
9
+ })