trellis 3.2.0 → 3.2.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 (260) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/README.md +61 -171
  3. package/dist/browser/index.d.ts +18 -0
  4. package/dist/browser/index.d.ts.map +1 -0
  5. package/dist/browser/index.js +95 -0
  6. package/dist/{chunk-3ETIIPPB.js → chunk-2AACZRII.js} +312 -30
  7. package/dist/{chunk-3GDRZTAW.js → chunk-5KSGGKET.js} +1 -1
  8. package/dist/{chunk-MBNBTJCR.js → chunk-6GEZ6DN5.js} +2 -2
  9. package/dist/chunk-6RWGFC3N.js +403 -0
  10. package/dist/{chunk-X762XWVC.js → chunk-7DUMWO5L.js} +1 -1
  11. package/dist/chunk-CAG4FULI.js +121 -0
  12. package/dist/{chunk-GD5QJXSS.js → chunk-FWRS4CSC.js} +2 -2
  13. package/dist/{chunk-36VSSTL7.js → chunk-GU374KWZ.js} +1 -1
  14. package/dist/{chunk-BJ7EZ7FP.js → chunk-JHHEXEDM.js} +17 -0
  15. package/dist/{chunk-7WQGTFVJ.js → chunk-L5N5PR2S.js} +130 -75
  16. package/dist/{chunk-BXSTJVE3.js → chunk-N6MYZT4O.js} +2 -1
  17. package/dist/chunk-NWSW5YNS.js +225 -0
  18. package/dist/{chunk-HO4TURXW.js → chunk-S3XLFZ27.js} +28 -11
  19. package/dist/{chunk-BQBUVMRN.js → chunk-S6GBJ2ZB.js} +25 -14
  20. package/dist/{chunk-B3ZIFA2O.js → chunk-VBYUTRXX.js} +1 -1
  21. package/dist/cli/deploy-cli.d.ts +18 -0
  22. package/dist/cli/deploy-cli.d.ts.map +1 -0
  23. package/dist/cli/deploy-cli.js +67 -0
  24. package/dist/cli/index.d.ts +1 -1
  25. package/dist/cli/index.d.ts.map +1 -1
  26. package/dist/cli/index.js +153 -100
  27. package/dist/client/index.browser.d.ts +29 -0
  28. package/dist/client/index.browser.d.ts.map +1 -0
  29. package/dist/client/index.browser.js +64 -0
  30. package/dist/client/index.js +10 -10
  31. package/dist/client/sdk.browser.d.ts +131 -0
  32. package/dist/client/sdk.browser.d.ts.map +1 -0
  33. package/dist/{sdk-LZ7W3EEY.js → client/sdk.browser.js} +2 -2
  34. package/dist/client/sdk.js +1 -1
  35. package/dist/db/index.js +16 -16
  36. package/dist/db/inspector.js +6 -6
  37. package/dist/decisions/index.js +2 -2
  38. package/dist/embeddings/auto-embed.d.ts.map +1 -1
  39. package/dist/embeddings/index.js +1 -1
  40. package/dist/embeddings/store.d.ts.map +1 -1
  41. package/dist/engine.d.ts +27 -7
  42. package/dist/engine.d.ts.map +1 -1
  43. package/dist/index.js +6 -6
  44. package/dist/mcp/server.d.ts.map +1 -1
  45. package/dist/react/index.js +2 -2
  46. package/dist/react/schema-hooks.js +7 -7
  47. package/dist/{remote-manager-SG545WNY.js → remote-manager-ODE3T2KR.js} +5 -5
  48. package/dist/scaffold/seed.d.ts.map +1 -1
  49. package/dist/scaffold/write.d.ts +1 -1
  50. package/dist/scaffold/write.d.ts.map +1 -1
  51. package/dist/schema/index.js +4 -3
  52. package/dist/server/cors.d.ts +13 -0
  53. package/dist/server/cors.d.ts.map +1 -0
  54. package/dist/server/deploy-meta.d.ts +25 -0
  55. package/dist/server/deploy-meta.d.ts.map +1 -0
  56. package/dist/server/deploy.d.ts +8 -3
  57. package/dist/server/deploy.d.ts.map +1 -1
  58. package/dist/server/deploy.js +9 -0
  59. package/dist/server/index.d.ts +5 -2
  60. package/dist/server/index.d.ts.map +1 -1
  61. package/dist/server/index.js +51 -17
  62. package/dist/server/realtime.d.ts +4 -1
  63. package/dist/server/realtime.d.ts.map +1 -1
  64. package/dist/server/server.d.ts +1 -0
  65. package/dist/server/server.d.ts.map +1 -1
  66. package/dist/server/sprites.d.ts +18 -1
  67. package/dist/server/sprites.d.ts.map +1 -1
  68. package/dist/server/tenancy.d.ts +4 -0
  69. package/dist/server/tenancy.d.ts.map +1 -1
  70. package/dist/server/usage-meter.d.ts +53 -0
  71. package/dist/server/usage-meter.d.ts.map +1 -0
  72. package/dist/{server-IGBIIJSF.js → server-OGVWNDNK.js} +6 -1
  73. package/dist/sprites-KQGTGM6W.js +27 -0
  74. package/dist/{tenancy-OP34NFFS.js → tenancy-POMWQP6M.js} +5 -3
  75. package/dist/vcs/index.js +3 -3
  76. package/dist/vcs/types.d.ts +2 -0
  77. package/dist/vcs/types.d.ts.map +1 -1
  78. package/package.json +17 -6
  79. package/dist/better-sqlite-backend-PII64VE6.js +0 -159
  80. package/dist/better-sqlite-backend-VUBVQ7SN.js +0 -209
  81. package/dist/better-sqlite-backend-Y3AQN65E.js +0 -159
  82. package/dist/better-sqlite-backend-Y3M7DXOX.js +0 -159
  83. package/dist/boot-middleware-FJDGVUM4.js +0 -9
  84. package/dist/boot-middleware-MLJUTLUM.js +0 -9
  85. package/dist/boot-middleware-ZZPDZNYR.js +0 -9
  86. package/dist/chunk-276LKLZR.js +0 -359
  87. package/dist/chunk-2CX5UCRV.js +0 -111
  88. package/dist/chunk-2ESYSVXG.js +0 -48
  89. package/dist/chunk-2I5JU73Y.js +0 -340
  90. package/dist/chunk-2UNSRRNB.js +0 -171
  91. package/dist/chunk-335UEHQR.js +0 -907
  92. package/dist/chunk-4CF2L46N.js +0 -29
  93. package/dist/chunk-5CINODKT.js +0 -41
  94. package/dist/chunk-5ESGWJ5L.js +0 -45
  95. package/dist/chunk-5FGLQGMF.js +0 -1676
  96. package/dist/chunk-5IQZFITY.js +0 -357
  97. package/dist/chunk-5JWFAQDW.js +0 -150
  98. package/dist/chunk-62UHTVU3.js +0 -141
  99. package/dist/chunk-66UJQT2I.js +0 -35
  100. package/dist/chunk-6RNNVOAS.js +0 -355
  101. package/dist/chunk-6X23PZ6H.js +0 -969
  102. package/dist/chunk-7C7LL6MB.js +0 -315
  103. package/dist/chunk-7F4HM3JG.js +0 -394
  104. package/dist/chunk-7KJ7T4D3.js +0 -910
  105. package/dist/chunk-7QQQNUB5.js +0 -92
  106. package/dist/chunk-7QWJBS72.js +0 -946
  107. package/dist/chunk-7R36OZK3.js +0 -957
  108. package/dist/chunk-7UPKCOHE.js +0 -946
  109. package/dist/chunk-A3BONW34.js +0 -35
  110. package/dist/chunk-AHMDVHBL.js +0 -141
  111. package/dist/chunk-AW6A4OZY.js +0 -171
  112. package/dist/chunk-BJ5EKCJ5.js +0 -458
  113. package/dist/chunk-BRGYDO7D.js +0 -223
  114. package/dist/chunk-C5KPSEDN.js +0 -359
  115. package/dist/chunk-CCTNYTUC.js +0 -940
  116. package/dist/chunk-CYQ2OVD2.js +0 -35
  117. package/dist/chunk-DDAK7YOE.js +0 -299
  118. package/dist/chunk-DRILKBY6.js +0 -965
  119. package/dist/chunk-DXE24HNN.js +0 -45
  120. package/dist/chunk-E7ICUNW7.js +0 -945
  121. package/dist/chunk-EAL2PUOE.js +0 -10022
  122. package/dist/chunk-ELT7MLZB.js +0 -109
  123. package/dist/chunk-EWEIRF6G.js +0 -171
  124. package/dist/chunk-F5VDGQJC.js +0 -120
  125. package/dist/chunk-FCPL3IEQ.js +0 -98
  126. package/dist/chunk-FDPKYSV7.js +0 -96
  127. package/dist/chunk-FES3TC24.js +0 -171
  128. package/dist/chunk-FF36CQHZ.js +0 -61
  129. package/dist/chunk-FOWKR5TW.js +0 -129
  130. package/dist/chunk-FZVCXDYW.js +0 -150
  131. package/dist/chunk-G3XIHPSQ.js +0 -361
  132. package/dist/chunk-GKJLYLVU.js +0 -359
  133. package/dist/chunk-GNXHXNVQ.js +0 -113
  134. package/dist/chunk-GSR6ILTM.js +0 -277
  135. package/dist/chunk-GWRIMRSX.js +0 -45
  136. package/dist/chunk-H72UW2HJ.js +0 -45
  137. package/dist/chunk-HGI74PXB.js +0 -7417
  138. package/dist/chunk-HGRA37LO.js +0 -145
  139. package/dist/chunk-HXSRQO3L.js +0 -145
  140. package/dist/chunk-IG2X2BVO.js +0 -373
  141. package/dist/chunk-IIJVDD54.js +0 -373
  142. package/dist/chunk-IUWVEEOX.js +0 -145
  143. package/dist/chunk-IX4BBOIT.js +0 -394
  144. package/dist/chunk-IXU4RMQM.js +0 -349
  145. package/dist/chunk-J6OUIION.js +0 -857
  146. package/dist/chunk-K46RNFDE.js +0 -171
  147. package/dist/chunk-KAGU2XMY.js +0 -359
  148. package/dist/chunk-KCVYJNVX.js +0 -394
  149. package/dist/chunk-KKDRMIV6.js +0 -419
  150. package/dist/chunk-KYLIQ3YI.js +0 -399
  151. package/dist/chunk-KZYJJIRN.js +0 -946
  152. package/dist/chunk-LFOX744K.js +0 -96
  153. package/dist/chunk-LHOVJEWR.js +0 -7403
  154. package/dist/chunk-LOPXTPF3.js +0 -120
  155. package/dist/chunk-LZR3VIFU.js +0 -907
  156. package/dist/chunk-MCKGQKYU.js +0 -15
  157. package/dist/chunk-MU6EOS6F.js +0 -0
  158. package/dist/chunk-MWRQ2TXT.js +0 -357
  159. package/dist/chunk-NO73OK2I.js +0 -102
  160. package/dist/chunk-NPE2YJHK.js +0 -394
  161. package/dist/chunk-NSDXU6QX.js +0 -2213
  162. package/dist/chunk-NXIRDSZ6.js +0 -145
  163. package/dist/chunk-NZWFNHCS.js +0 -407
  164. package/dist/chunk-OB4CMMX6.js +0 -260
  165. package/dist/chunk-OBKU74FU.js +0 -7411
  166. package/dist/chunk-OQNDWRDE.js +0 -145
  167. package/dist/chunk-OVWAJMB6.js +0 -394
  168. package/dist/chunk-PDHLBTTD.js +0 -45
  169. package/dist/chunk-PEQNRKLG.js +0 -210
  170. package/dist/chunk-QERIS7QY.js +0 -7403
  171. package/dist/chunk-QHA2DM3C.js +0 -373
  172. package/dist/chunk-QLM4HSYC.js +0 -45
  173. package/dist/chunk-S2OT3TQJ.js +0 -283
  174. package/dist/chunk-S5PHSN5K.js +0 -907
  175. package/dist/chunk-SIAA4J6H.js +0 -21
  176. package/dist/chunk-SQBNLUIA.js +0 -171
  177. package/dist/chunk-STLN6A6B.js +0 -355
  178. package/dist/chunk-U7HV7GU2.js +0 -17
  179. package/dist/chunk-UGZHOGRA.js +0 -39
  180. package/dist/chunk-UICF66FS.js +0 -359
  181. package/dist/chunk-UK3EQREE.js +0 -1078
  182. package/dist/chunk-UPKPURVY.js +0 -394
  183. package/dist/chunk-URC74VCN.js +0 -959
  184. package/dist/chunk-V3G7Q3QQ.js +0 -102
  185. package/dist/chunk-VUJ6SA55.js +0 -303
  186. package/dist/chunk-VUJQLIML.js +0 -141
  187. package/dist/chunk-VWKLKLYB.js +0 -267
  188. package/dist/chunk-VYC3RZMK.js +0 -277
  189. package/dist/chunk-WMERMSWI.js +0 -154
  190. package/dist/chunk-WMR777PO.js +0 -2213
  191. package/dist/chunk-X46IECAC.js +0 -517
  192. package/dist/chunk-XEN3OEYY.js +0 -2234
  193. package/dist/chunk-XZQ66K7A.js +0 -124
  194. package/dist/chunk-YY3GF7DH.js +0 -7411
  195. package/dist/chunk-ZE5R3H4C.js +0 -907
  196. package/dist/chunk-ZHVI7BQN.js +0 -1077
  197. package/dist/chunk-ZMN5LUB7.js +0 -7411
  198. package/dist/chunk-ZUV4MD5U.js +0 -94
  199. package/dist/config-KMY6RRK3.js +0 -19
  200. package/dist/config-VDMK2DUJ.js +0 -19
  201. package/dist/db/trellis.css +0 -1
  202. package/dist/deploy-66EC752W.js +0 -9
  203. package/dist/deploy-SO7AFK6L.js +0 -9
  204. package/dist/engine-7GXBM4IT.js +0 -7
  205. package/dist/engine-NSR6BIF7.js +0 -7
  206. package/dist/factory-2P64OC7M.js +0 -34
  207. package/dist/factory-YP4ZZK5K.js +0 -34
  208. package/dist/import-AJLYHFIA.js +0 -10
  209. package/dist/launch-explorer-AI6L2AWJ.js +0 -91
  210. package/dist/query-GJL3CVGN.js +0 -31
  211. package/dist/query-MBJSK3EB.js +0 -31
  212. package/dist/query-TJHEVSKL.js +0 -31
  213. package/dist/query-WUIKOHPE.js +0 -524
  214. package/dist/remote-manager-BLJZ6KF6.js +0 -224
  215. package/dist/remote-manager-BPYE46SI.js +0 -223
  216. package/dist/remote-manager-FMESEAFA.js +0 -224
  217. package/dist/remote-manager-K2WZ5RHY.js +0 -223
  218. package/dist/remote-manager-SG5PQKCH.js +0 -224
  219. package/dist/remote-manager-WGP6MIQZ.js +0 -224
  220. package/dist/sdk-3KBB3E6V.js +0 -16
  221. package/dist/sdk-4ZQO6UTU.js +0 -16
  222. package/dist/sdk-6JA6GV3G.js +0 -16
  223. package/dist/sdk-6VTP5UTZ.js +0 -16
  224. package/dist/sdk-7VS6TYCD.js +0 -16
  225. package/dist/sdk-HQ3FTLRT.js +0 -16
  226. package/dist/sdk-HZ7NU3XE.js +0 -15
  227. package/dist/sdk-KBQE2OXT.js +0 -16
  228. package/dist/sdk-MSCDZ7JU.js +0 -15
  229. package/dist/sdk-WNZOGO3S.js +0 -15
  230. package/dist/sdk-YLV33ZCW.js +0 -9
  231. package/dist/sdk-ZSUD2LLJ.js +0 -16
  232. package/dist/server-AFXFFBWA.js +0 -11
  233. package/dist/server-AGHC4VUL.js +0 -11
  234. package/dist/server-BOH7M4TT.js +0 -13
  235. package/dist/server-DBUY2KY5.js +0 -11
  236. package/dist/server-GWBQJPRG.js +0 -11
  237. package/dist/server-JZZFULVU.js +0 -11
  238. package/dist/server-L5XAF4M5.js +0 -11
  239. package/dist/server-NYFUHANA.js +0 -12
  240. package/dist/server-OABUB2LO.js +0 -12
  241. package/dist/server-P2CKZWWV.js +0 -12
  242. package/dist/sprites-RU3E4XQN.js +0 -15
  243. package/dist/sprites-XVSMQLSI.js +0 -15
  244. package/dist/sql-wasm-FORCZFHZ.js +0 -2148
  245. package/dist/sql-wasm-JZH76RLO.js +0 -2148
  246. package/dist/sqljs-backend-CJQOIQYE.js +0 -266
  247. package/dist/sqljs-backend-KWXBUDUO.js +0 -266
  248. package/dist/state-demo.bundle.js +0 -1033
  249. package/dist/tenancy-CBWYEVUB.js +0 -11
  250. package/dist/tenancy-FO6WVYFN.js +0 -13
  251. package/dist/tenancy-FWDBESMX.js +0 -14
  252. package/dist/tenancy-HGPIS5QA.js +0 -13
  253. package/dist/tenancy-HXFALA37.js +0 -14
  254. package/dist/tenancy-S676GLID.js +0 -14
  255. package/dist/tenancy-V7ARWNNV.js +0 -14
  256. package/dist/tenancy-ZDN4GXK5.js +0 -13
  257. package/dist/tenancy-ZT5VMY7B.js +0 -14
  258. package/dist/vm-config-YZRJ3KUB.js +0 -21
  259. /package/dist/{chunk-2BRTCEHB.js → chunk-PZ4XYZ4J.js} +0 -0
  260. /package/dist/{chunk-EO3J7GRP.js → chunk-WXSWA3MV.js} +0 -0
package/CHANGELOG.md CHANGED
@@ -2,6 +2,13 @@
2
2
 
3
3
  Notable changes by release date and version. See [trellis.computer/changelog](https://trellis.computer/changelog) for the public site copy.
4
4
 
5
+ ## trellis [3.2.2] — 2026-06-10
6
+
7
+ - **`trellis db serve` on Node:** preloads the default tenant with sql.js / better-sqlite3 before accepting traffic — fixes `create-trellis` scaffolds and any `npx trellis db serve` flow that hit `SqliteKernelBackend requires the Bun runtime`.
8
+ - **`TenantPool.get()` on Node:** fails fast with a preload hint instead of attempting `bun:sqlite`.
9
+ - **`TRELLIS_BACKEND`:** `sqljs` or `better-sqlite` env override for `db serve` and custom hosts (`resolvePoolBackendFromEnv`).
10
+ - **Gitignore:** `.trellis-db/`, `.trellis-db.json`, `.trellis-deploy/` at repo root.
11
+
5
12
  ## trellis [3.2.0] — 2026-06-08
6
13
 
7
14
  - **Typed realtime SDK:** `trellis/schema` — `defineType`, `entityQuery`, `WhereFilter` operators, nested `InferResolvedType`, server `hydrateAndResolve` on subscription push.
package/README.md CHANGED
@@ -1,209 +1,99 @@
1
- ---
2
- title: Trellis
3
- description: The Agentic Framework — a local-first semantic graph OS for code, agents, and decisions.
4
- created: 2026-05-30
5
- updated: 2026-06-05
6
- ---
7
-
8
- # Trellis
9
-
10
- > **The Agentic Framework**
11
-
12
- | Use Case | How |
13
- | :----------------------------- | :-------------------------------------------------------------------------------------------------------- |
14
- | **Agentic State Engine** | Tool registry + decision traces + branching — agents operate on state they can fork, audit, and roll back |
15
- | **Building Agents End-to-End** | Unified LLM abstraction + context management + RAG + orchestration |
16
- | **Autonomous Code Editing** | Semantic patching + AST-aware tools + causal history |
17
- | **Auditable Reasoning** | Immutable op log + decision traces + precedent search |
1
+ <div align="center">
2
+ <img src="./logo.svg" alt="Trellis" width="88" height="88" />
3
+ <h1>Trellis</h1>
4
+ <p><strong>The Agentic Framework</strong> — a local-first, event-sourced graph engine for code, agents, and decisions.</p>
5
+ <p>
6
+ <a href="https://trellis.computer">Docs</a> ·
7
+ <a href="https://studio.trellis.computer">Studio</a> ·
8
+ <a href="https://github.com/trentbrew/trellis">GitHub</a>
9
+ </p>
10
+ </div>
18
11
 
19
12
  ---
20
13
 
21
- ## Why Trellis?
22
-
23
- Most agent frameworks focus on the _reasoning engine_ (the LLM) but treat _state_ as an afterthought. Trellis reverses this. It is the **System of Record for Decisions**, providing agents with a persistent, queryable, and auditable memory that compounds over time.
14
+ Most agent frameworks pour everything into the reasoning engine and treat state as an afterthought. Trellis inverts that. It is the **system of record for decisions**: a persistent, queryable, auditable memory where every thought, tool call, and file change is an immutable operation in a causal graph. It runs fully offline — servers may relay, accelerate, or back up, but never own your state.
24
15
 
25
- **[Read the story →](./docs/THE-STORY.md)**
16
+ - **Durable memory** every op is content-addressed and never rewritten or deleted.
17
+ - **Explainable by default** — decision traces record not just *what* happened, but *why*.
18
+ - **Safe to explore** — branch state to try multiple paths, then merge or discard.
19
+ - **Realtime** — one write updates current state, durable history, and every live subscriber.
26
20
 
27
- - **Durable Memory**: Every thought, tool call, and file change is an immutable operation in a causal graph
28
- - **Explainability by Default**: Decision traces don't just store _what_ happened, but _why_
29
- - **Safe Exploration**: Agents can "fork" state to explore multiple paths
30
-
31
- ---
32
-
33
- ## Quick Start
21
+ ## Install
34
22
 
35
23
  ```bash
36
- # 1. Install
37
24
  npm install -g trellis
38
-
39
- # 2. Initialize a repository
40
- mkdir my-project && cd my-project
41
- trellis init
42
-
43
- # The init command now offers two paths:
44
- # ⚡ Minimal Setup: One-shot setup with auto-detected defaults
45
- # 🔧 Custom Guided Setup: Full control over framework, IDEs, and features
46
-
47
- # 3. Create content (tracked automatically)
48
- echo "# My Project" > README.md
49
-
50
- # 4. Add structured entities
51
- trellis issue create -t "Bootstrap Visualization"
52
- trellis milestone create -m "Initial Release"
53
-
54
- # 5. Launch the live graph explorer (SvelteKit + realtime sidecar)
55
- trellis ui
56
- # Legacy VCS-only visualizer: trellis ui --legacy --port 3333
57
-
58
- # 6. Create coding session with trellis harness
59
- trellis code
60
25
  ```
61
26
 
62
- After running `trellis init`, you'll see a progressive disclosure success screen:
63
-
64
- **Next steps (VCS):**
65
-
66
- - `trellis status` — Check repository status
67
- - `trellis log` — View recent history
68
- - `trellis branch` — List or create branches
69
- - `trellis milestone` — Create narrative checkpoints
70
- - `trellis garden` — Discover abandoned work
71
- - `trellis issue` — Create and track issues
72
-
73
- **Semantic Substrate (Live local services):**
74
-
75
- - `trellis web` — Launch local web client / graph visualizer
76
- - `trellis query` — Run EQL-S semantic queries against your code graph
77
- - Agent Rules — Active for your IDE. Agents will auto-detect the graph.
78
-
79
- ![Trellis Demo](./trellis-opencode.gif)
80
-
81
- See the [CLI guide](https://trellis.computer/docs/cli) for complete documentation.
82
-
83
- ### Typed SDK + realtime (React, Vue, Svelte)
84
-
85
- Reference apps and stable entrypoints: [docs/sdk-typed-realtime.md](./docs/sdk-typed-realtime.md).
27
+ ## Quick start
86
28
 
87
29
  ```bash
88
- just graph-nav # typed live nav — examples/graph-nav
89
- just universal-presence # presence, chat, text — examples/universal-presence
30
+ mkdir my-project && cd my-project
31
+ trellis init # guided or one-shot setup
32
+ trellis ui # live graph explorer
33
+ trellis code # start an agent coding session
90
34
  ```
91
35
 
92
- ---
93
-
94
- ## CMS Client SDK
36
+ Track work as graph-native entities instead of text commits:
95
37
 
96
- Use `trellis/cms` from browser apps to read content from a Trellis-compatible HTTP server such as opencode at `http://localhost:4096`.
97
-
98
- ```typescript
99
- import { createCmsClient } from 'trellis/cms';
100
-
101
- const cms = createCmsClient({
102
- url: 'http://localhost:4096',
103
- directory: '/path/to/project',
104
- });
38
+ ```bash
39
+ trellis issue create -t "Bootstrap viz"
40
+ trellis milestone create -m "Initial release"
41
+ trellis garden # discover & revive abandoned work
42
+ trellis query 'find ?e where type = "Task"'
43
+ ```
105
44
 
106
- const posts = await cms.collection('blogpost').list({
107
- status: 'all',
108
- expand: ['author'],
109
- });
45
+ ## Build a realtime app
110
46
 
111
- const off = cms.collection('blogpost').subscribe(
112
- (entries) => {
113
- console.log(entries);
114
- },
115
- {
116
- status: 'published',
117
- onError: console.error,
118
- },
119
- );
47
+ Scaffold a typed, live-graph app — React, Vue, or Svelte — backed by Trellis:
120
48
 
121
- off();
49
+ ```bash
50
+ npm create trellis@latest
122
51
  ```
123
52
 
124
- - **Collections**: `cms.collections()` returns `TypeSchema` collections marked with `cms=true`.
125
- - **Schema**: `cms.collection('blogpost').schema()` returns field definitions including types, labels, requirements, formulas, and targets.
126
- - **Normalized keys**: `cms.collection('blogpost')` matches stored entity types like `BlogPost`.
127
- - **References**: `expand` resolves reference ids from facts and graph links into nested entries.
128
- - **Scaffolds**: `scaffoldConsumer({ collection, framework, directory })` generates starter consumer code for vanilla, React, Solid, or Vue.
129
-
130
- ---
131
-
132
- ## What is Trellis?
53
+ ```ts
54
+ import { defineType } from 'trellis/schema';
55
+ import { z } from 'zod';
133
56
 
134
- Trellis is an **event-sourced causal graph engine** that unifies version control, knowledge management, and semantic analysis. Every action is an immutable operation in a causal stream:
57
+ export const Task = defineType('Task', { title: z.string(), done: z.boolean() });
58
+ ```
135
59
 
136
- ```typescript
137
- interface VcsOp {
138
- hash: string; // content-addressed
139
- kind: VcsOpKind; // e.g. 'vcs:fileModify'
140
- timestamp: string; // ISO 8601
141
- agentId: string; // Author identity
142
- previousHash?: string; // Causal chain link
143
- vcs: VcsPayload; // Op-specific data
144
- signature?: string; // Ed25519 signature
145
- }
60
+ ```svelte
61
+ <script>
62
+ import { entitiesStore, mutations } from 'trellis/svelte/typed';
63
+ const tasks = entitiesStore(client, Task); // re-renders live, across every client
64
+ const task = mutations(client, Task);
65
+ </script>
146
66
  ```
147
67
 
148
- Ops are written to `.trellis/ops.json` and **never rewritten or deleted**.
68
+ A single mutation produces current state, durable history, and a realtime push to every subscriber — the same write path.
149
69
 
150
- ### Platform Surfaces
70
+ ## API surface
151
71
 
152
- | Surface | Purpose |
153
- | :-------------------- | :--------------------------------------- |
154
- | `trellis` npm package | Core platform APIs via subpaths |
155
- | `trellis` CLI | Repository management and automation |
156
- | VS Code extension | Visual timeline and knowledge navigation |
72
+ The `trellis` package exposes focused subpaths:
157
73
 
158
- ---
74
+ | Import | Purpose |
75
+ | --- | --- |
76
+ | `trellis/client` | Local + remote client SDK |
77
+ | `trellis/schema` | `defineType`, typed entities, EQL-S queries |
78
+ | `trellis/{react,vue,svelte}/typed` | Live, schema-typed reads + mutations |
79
+ | `trellis/realtime` | Presence, chat, CRDT text |
80
+ | `trellis/cms` | Read content collections over HTTP |
81
+ | `trellis/server` | HTTP + WebSocket DB server |
159
82
 
160
83
  ## Documentation
161
84
 
162
- - **[Documentation hub](./docs/README.md)** — Canonical docs index for Trellis
163
- - **[The Story](./docs/THE-STORY.md)** — Why Trellis exists
164
- - **[Vision](./docs/VISION.md)** Local-first agentic OS framing
165
- - **[Architecture](./docs/ARCHITECTURE.md)** — Current package layout and target runtime shape
166
- - **[Five Pillars](./docs/PILLARS.md)** — Core architectural principles
167
- - **[Design spec](./docs/DESIGN.md)** — Full architecture specification
168
- - **[Roadmap](./docs/ROADMAP.md)** — Active Trellis issue and milestone sequence
169
- - **[Agents guide](./docs/AGENTS.md)** — Building agents on Trellis
170
- - **[Full documentation](https://trellis.computer)** — Published docs site
171
- - **[CLI reference](./docs/README-ARCHIVED.md#cli-overview)** — Command details (archived)
172
- - **[API modules](./docs/README-ARCHIVED.md#module--subpath-guide)** — Subpath imports (archived)
173
-
174
- ---
85
+ - **[trellis.computer](https://trellis.computer)** — full documentation
86
+ - **[The Story](./docs/THE-STORY.md)** — why Trellis exists
87
+ - **[Architecture](./docs/ARCHITECTURE.md)** · **[Design spec](./docs/DESIGN.md)** · **[Roadmap](./docs/ROADMAP.md)**
175
88
 
176
- ## Development
89
+ ## Develop
177
90
 
178
91
  ```bash
179
- # Prerequisites
180
- # Requires Bun ≥ 1.0
181
-
182
- # Install dependencies
183
- bun install
184
-
185
- # Run tests
92
+ bun install # requires Bun ≥ 1.0
186
93
  bun test
187
-
188
- # Build for npm
189
94
  bun run build
190
95
  ```
191
96
 
192
- ---
193
-
194
- ## Status
195
-
196
- | Phase | Deliverable | Status |
197
- | :---- | :------------------------- | :----- |
198
- | P0 | Causal stream + CLI | ✅ |
199
- | P0.5 | VS Code extension | ✅ |
200
- | P1 | Git import bridge | ✅ |
201
- | P2 | Branches, milestones | ✅ |
202
- | P2.5 | Blob store, modularization | ✅ |
203
- | P3 | File-level diff + merge | ✅ |
204
- | P4 | Identity + governance | ✅ |
205
- | P5 | Idea Garden | ✅ |
206
-
207
- ---
97
+ ## License
208
98
 
209
- _For comprehensive documentation including detailed CLI commands, API examples, and subsystem guides, see [docs/README-ARCHIVED.md](./docs/README-ARCHIVED.md)._
99
+ [AGPL-3.0-or-later](./LICENSE) © Turtle Labs LLC
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Trellis Browser — remote DB, schema, realtime, and live-read primitives.
3
+ *
4
+ * Import from `trellis/browser` in browser applications to avoid Node/server
5
+ * modules such as filesystem config, embedded tenancy, or local SQLite.
6
+ *
7
+ * @module trellis/browser
8
+ */
9
+ export { TrellisDb, FetchError } from '../client/sdk.browser.js';
10
+ export type { AuthResult, EntityData, ListResult, QueryResult, Subscription, SubscriptionCallback, TrellisDbLocalOptions, TrellisDbOptions, TrellisDbRemoteOptions, UploadResult, } from '../client/sdk.browser.js';
11
+ export { Signal, BatchSignal } from '../client/reactive.js';
12
+ export { liveQuery, liveEntities, liveEntity } from '../client/live.js';
13
+ export type { LiveEntitiesOptions, LiveEntityOptions, LiveResource, ReadState, } from '../client/live.js';
14
+ export { defineType, rel, rollup, formula, entitiesQuery, entityQuery, escapeValue, formatEqlLiteral, isWhereFilter, whereCondition, entityMutations, resolveRelations, inverseForeignKey, bindingEntityId, bindingToEntity, entityRecordToPlain, hydrateBindings, isSparseBinding, } from '../schema/index.js';
15
+ export type { AnyType, ComputedField, ComputedMap, DefineTypeOptions, EntityMutations, InferEntitiesRead, InferEntityRead, InferResolvedType, InferType, Ref, Relation, RelationMap, RelTarget, ResolveSpec, ResolveSpecFor, TrellisType, WhereFilter, WhereInput, WhereOp, WhereValue, } from '../schema/index.js';
16
+ export { RealtimeRoom, MemoryHub, MemoryRealtimeTransport, BroadcastChannelTransport, WebSocketRelayTransport, DurableObjectRelayTransport, joinPresence, createPresenceTransport, PersistentChannel, localStorageChannelStore, DEFAULT_MAX_RECORDS, RealtimeText, REALTIME_PROTOCOL, } from '../realtime/index.js';
17
+ export type { BroadcastChannelTransportOptions, BroadcastEvent, ChannelRecord, ChannelStore, DurableObjectRelayReconnect, DurableObjectRelayTransportOptions, PersistentChannelOptions, PresenceOptions, PresencePeer, PresenceState, RealtimeMessage, RealtimeRoomOptions, RealtimeTransport, RealtimeTextOptions, TextNode, TextOp, WebSocketRelayTransportOptions, } from '../realtime/index.js';
18
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,YAAY,EACV,UAAU,EACV,UAAU,EACV,UAAU,EACV,WAAW,EACX,YAAY,EACZ,oBAAoB,EACpB,qBAAqB,EACrB,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,GACb,MAAM,0BAA0B,CAAC;AAElC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACxE,YAAY,EACV,mBAAmB,EACnB,iBAAiB,EACjB,YAAY,EACZ,SAAS,GACV,MAAM,mBAAmB,CAAC;AAE3B,OAAO,EACL,UAAU,EACV,GAAG,EACH,MAAM,EACN,OAAO,EACP,aAAa,EACb,WAAW,EACX,WAAW,EACX,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,eAAe,EACf,gBAAgB,EAChB,iBAAiB,EACjB,eAAe,EACf,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,eAAe,GAChB,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,OAAO,EACP,aAAa,EACb,WAAW,EACX,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,eAAe,EACf,iBAAiB,EACjB,SAAS,EACT,GAAG,EACH,QAAQ,EACR,WAAW,EACX,SAAS,EACT,WAAW,EACX,cAAc,EACd,WAAW,EACX,WAAW,EACX,UAAU,EACV,OAAO,EACP,UAAU,GACX,MAAM,oBAAoB,CAAC;AAE5B,OAAO,EACL,YAAY,EACZ,SAAS,EACT,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,2BAA2B,EAC3B,YAAY,EACZ,uBAAuB,EACvB,iBAAiB,EACjB,wBAAwB,EACxB,mBAAmB,EACnB,YAAY,EACZ,iBAAiB,GAClB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EACV,gCAAgC,EAChC,cAAc,EACd,aAAa,EACb,YAAY,EACZ,2BAA2B,EAC3B,kCAAkC,EAClC,wBAAwB,EACxB,eAAe,EACf,YAAY,EACZ,aAAa,EACb,eAAe,EACf,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,QAAQ,EACR,MAAM,EACN,8BAA8B,GAC/B,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,95 @@
1
+ import {
2
+ liveEntities,
3
+ liveEntity,
4
+ liveQuery
5
+ } from "../chunk-J3WYZO3Q.js";
6
+ import {
7
+ FetchError,
8
+ TrellisDb
9
+ } from "../chunk-6RWGFC3N.js";
10
+ import "../chunk-WXSWA3MV.js";
11
+ import {
12
+ entityMutations
13
+ } from "../chunk-USEINYUL.js";
14
+ import {
15
+ defineType,
16
+ formula,
17
+ rel,
18
+ rollup
19
+ } from "../chunk-44FFQKQX.js";
20
+ import {
21
+ bindingEntityId,
22
+ bindingToEntity,
23
+ entitiesQuery,
24
+ entityQuery,
25
+ entityRecordToPlain,
26
+ escapeValue,
27
+ formatEqlLiteral,
28
+ hydrateBindings,
29
+ inverseForeignKey,
30
+ isSparseBinding,
31
+ isWhereFilter,
32
+ resolveRelations,
33
+ whereCondition
34
+ } from "../chunk-JUEMDWLU.js";
35
+ import {
36
+ BroadcastChannelTransport,
37
+ DEFAULT_MAX_RECORDS,
38
+ DurableObjectRelayTransport,
39
+ MemoryHub,
40
+ MemoryRealtimeTransport,
41
+ PersistentChannel,
42
+ REALTIME_PROTOCOL,
43
+ RealtimeRoom,
44
+ RealtimeText,
45
+ WebSocketRelayTransport,
46
+ createPresenceTransport,
47
+ joinPresence,
48
+ localStorageChannelStore
49
+ } from "../chunk-KSU2GW22.js";
50
+ import "../chunk-GFZCJ4EH.js";
51
+ import {
52
+ BatchSignal,
53
+ Signal
54
+ } from "../chunk-UBGUDMUV.js";
55
+ import "../chunk-KFQGP6VL.js";
56
+ export {
57
+ BatchSignal,
58
+ BroadcastChannelTransport,
59
+ DEFAULT_MAX_RECORDS,
60
+ DurableObjectRelayTransport,
61
+ FetchError,
62
+ MemoryHub,
63
+ MemoryRealtimeTransport,
64
+ PersistentChannel,
65
+ REALTIME_PROTOCOL,
66
+ RealtimeRoom,
67
+ RealtimeText,
68
+ Signal,
69
+ TrellisDb,
70
+ WebSocketRelayTransport,
71
+ bindingEntityId,
72
+ bindingToEntity,
73
+ createPresenceTransport,
74
+ defineType,
75
+ entitiesQuery,
76
+ entityMutations,
77
+ entityQuery,
78
+ entityRecordToPlain,
79
+ escapeValue,
80
+ formatEqlLiteral,
81
+ formula,
82
+ hydrateBindings,
83
+ inverseForeignKey,
84
+ isSparseBinding,
85
+ isWhereFilter,
86
+ joinPresence,
87
+ liveEntities,
88
+ liveEntity,
89
+ liveQuery,
90
+ localStorageChannelStore,
91
+ rel,
92
+ resolveRelations,
93
+ rollup,
94
+ whereCondition
95
+ };