ltcai 3.4.1 → 3.6.0
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 +206 -247
- package/docs/CARRYOVER_AUDIT_v3.6.0.md +61 -0
- package/docs/CHANGELOG.md +32 -0
- package/docs/HANDOVER_v3.6.0.md +46 -0
- package/docs/RUNTIME_HOOK_COVERAGE_v3.5.0.md +56 -0
- package/docs/RUNTIME_HOOK_COVERAGE_v3.6.0.md +49 -0
- package/docs/architecture.md +13 -12
- package/docs/kg-schema.md +55 -0
- package/docs/privacy.md +18 -2
- package/docs/security-model.md +17 -0
- package/kg_schema.py +46 -0
- package/knowledge_graph.py +520 -1
- package/latticeai/__init__.py +1 -1
- package/latticeai/api/auth.py +37 -9
- package/latticeai/api/browser.py +217 -0
- package/latticeai/api/chat.py +4 -1
- package/latticeai/api/computer_use.py +21 -8
- package/latticeai/api/portability.py +93 -0
- package/latticeai/api/tools.py +29 -26
- package/latticeai/core/config.py +3 -0
- package/latticeai/core/marketplace.py +1 -1
- package/latticeai/core/multi_agent.py +1 -1
- package/latticeai/core/oidc.py +205 -0
- package/latticeai/core/security.py +59 -5
- package/latticeai/core/workspace_os.py +1 -1
- package/latticeai/server_app.py +39 -0
- package/latticeai/services/ingestion.py +271 -0
- package/latticeai/services/kg_portability.py +177 -0
- package/package.json +5 -4
- package/requirements.txt +1 -0
- package/scripts/build_vsix.mjs +72 -0
- package/scripts/check_python.py +87 -0
- package/static/css/reference/account.css +1 -1
- package/static/css/reference/admin.css +1 -1
- package/static/css/reference/base.css +8 -5
- package/static/css/reference/chat.css +8 -8
- package/static/css/reference/graph.css +2 -2
- package/static/css/responsive.css +2 -2
- package/static/v3/asset-manifest.json +9 -9
- package/static/v3/css/{lattice.shell.6ceea7c8.css → lattice.shell.8fcc9d33.css} +2 -1
- package/static/v3/css/lattice.shell.css +2 -1
- package/static/v3/js/{app.d086489d.js → app.c541f955.js} +1 -1
- package/static/v3/js/core/{api.12b568ad.js → api.33d6320e.js} +38 -0
- package/static/v3/js/core/api.js +38 -0
- package/static/v3/js/core/{routes.d214b399.js → routes.2ce3815a.js} +1 -1
- package/static/v3/js/core/routes.js +1 -1
- package/static/v3/js/core/{shell.d05266f5.js → shell.8c163e0e.js} +2 -2
- package/static/v3/js/views/knowledge-graph.a96040a5.js +513 -0
- package/static/v3/js/views/knowledge-graph.js +293 -17
- package/static/workspace.css +1 -1
- package/tools/__init__.py +276 -0
- package/tools/commands.py +188 -0
- package/tools/computer.py +185 -0
- package/tools/documents.py +243 -0
- package/tools/filesystem.py +560 -0
- package/tools/knowledge.py +97 -0
- package/tools/local_files.py +69 -0
- package/tools/network.py +66 -0
- package/static/v3/js/views/knowledge-graph.a14ea7e7.js +0 -237
- package/tools.py +0 -1525
package/README.md
CHANGED
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
|
|
4
4
|
# Lattice AI
|
|
5
5
|
|
|
6
|
-
**
|
|
6
|
+
**A local-first Digital Brain Platform. Your Knowledge Graph is the durable asset; models just read it.**
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
Every source — files, folders, web pages, browser tabs — converges into one
|
|
9
|
+
Knowledge Graph on your own machine. Connect models, agents, and search to that
|
|
10
|
+
graph instead of placing your work inside any single model.
|
|
11
11
|
</div>
|
|
12
12
|
|
|
13
13
|
<div align="center">
|
|
@@ -23,7 +23,107 @@
|
|
|
23
23
|
|
|
24
24
|
</div>
|
|
25
25
|
|
|
26
|
-

|
|
26
|
+

|
|
27
|
+
|
|
28
|
+
> **Lattice AI is not a model-personalization system. It is a Digital Brain Platform.**
|
|
29
|
+
> The Knowledge Graph is your durable asset. **Models are replaceable. Knowledge is durable.**
|
|
30
|
+
|
|
31
|
+
It isn't another chat window, and it isn't a way to "fine-tune a model on you." The
|
|
32
|
+
purpose of Lattice AI is to **connect models to your Knowledge Graph** — your digital
|
|
33
|
+
brain — not to place you inside a model. AI reads your knowledge; you own it.
|
|
34
|
+
|
|
35
|
+
- **Models are replaceable.** Swap MLX, Ollama, LM Studio, or a cloud LLM at will.
|
|
36
|
+
- **Agents, RAG, and the UI are replaceable.** They are implementations, not the asset.
|
|
37
|
+
- **Your Knowledge Graph is durable.** It outlives every model and is yours to export,
|
|
38
|
+
import, and back up locally — no cloud required.
|
|
39
|
+
|
|
40
|
+
Local-first by default; cloud only when you choose. (The Vercel site is a
|
|
41
|
+
landing/download/demo surface only — never the runtime. Lattice AI runs on your
|
|
42
|
+
machine over local SQLite.)
|
|
43
|
+
|
|
44
|
+
## Why install Lattice AI?
|
|
45
|
+
|
|
46
|
+
Most AI tools only answer questions in a chat window. Lattice AI gives you a
|
|
47
|
+
workspace around the work itself:
|
|
48
|
+
|
|
49
|
+
- **Keep everything in one place** — files, notes, chats, and decisions live
|
|
50
|
+
together instead of scattered across tabs and apps.
|
|
51
|
+
- **Turn documents into knowledge** — uploads and connected folders become
|
|
52
|
+
searchable, linked context you can reuse.
|
|
53
|
+
- **Search the way you think** — fuse keyword, vector, and knowledge-graph
|
|
54
|
+
signals in a single query.
|
|
55
|
+
- **Stay private and offline-capable** — run local models through MLX, Ollama, or
|
|
56
|
+
LM Studio; nothing leaves your machine unless you opt in.
|
|
57
|
+
- **Use cloud models only when you choose** — bring an API key for cloud LLMs
|
|
58
|
+
when you want them, not by default.
|
|
59
|
+
- **Automate with agents you can inspect** — workflows leave behind plans,
|
|
60
|
+
reviews, retries, and results you can replay.
|
|
61
|
+
|
|
62
|
+
Lattice AI is not a clone of ChatGPT, Claude, Cursor, Obsidian, or Notion. It
|
|
63
|
+
sits in a different place: a **workspace** that ties local/self-hosted AI, your
|
|
64
|
+
files, project knowledge, hybrid search, local and optional cloud models, agents,
|
|
65
|
+
and workflows together — and runs on your own hardware.
|
|
66
|
+
|
|
67
|
+
## What can you do with it?
|
|
68
|
+
|
|
69
|
+
- Build a private AI workspace for a project, scoped to your machine.
|
|
70
|
+
- Chat with your local files, images, and workspace memory.
|
|
71
|
+
- Upload documents — or connect a folder — and turn them into searchable knowledge.
|
|
72
|
+
- Explore how files, decisions, conversations, and entities connect in a
|
|
73
|
+
Knowledge Graph.
|
|
74
|
+
- Run local models through MLX, Ollama, or LM Studio, and use cloud LLMs only when
|
|
75
|
+
you want to.
|
|
76
|
+
- Create repeatable agent workflows for research, coding, analysis, and
|
|
77
|
+
documentation.
|
|
78
|
+
- Separate personal work from organization work.
|
|
79
|
+
- Switch between Basic, Advanced, and Admin modes depending on your role.
|
|
80
|
+
|
|
81
|
+
## Product Tour
|
|
82
|
+
|
|
83
|
+
### Start from the workspace home
|
|
84
|
+
|
|
85
|
+

|
|
86
|
+
|
|
87
|
+
The home view shows workspace readiness, model state, retrieval status, and the
|
|
88
|
+
main entry points — derived from real local state, never placeholder counters.
|
|
89
|
+
|
|
90
|
+
### Chat with files, images, and workspace context
|
|
91
|
+
|
|
92
|
+

|
|
93
|
+
|
|
94
|
+
Chat is wired to your files, graph context, memory, and model routing — including
|
|
95
|
+
vision-capable image input by attach, drag-and-drop, or paste.
|
|
96
|
+
|
|
97
|
+
### Bring documents into the workspace
|
|
98
|
+
|
|
99
|
+

|
|
100
|
+
|
|
101
|
+
Uploads and connected folders become indexed workspace context, searchable from
|
|
102
|
+
chat and hybrid search.
|
|
103
|
+
|
|
104
|
+
### Understand knowledge visually
|
|
105
|
+
|
|
106
|
+

|
|
107
|
+
|
|
108
|
+
The Knowledge Graph shows how files, decisions, conversations, and entities
|
|
109
|
+
connect — context that stays useful even when you switch models.
|
|
110
|
+
|
|
111
|
+
### Run agent workflows
|
|
112
|
+
|
|
113
|
+

|
|
114
|
+
|
|
115
|
+
Agents turn a goal into an inspectable run — roles, logs, review, and retry — that
|
|
116
|
+
you can read back step by step.
|
|
117
|
+
|
|
118
|
+
### Extend with hooks and the local runtime
|
|
119
|
+
|
|
120
|
+

|
|
121
|
+
|
|
122
|
+

|
|
123
|
+
|
|
124
|
+
Advanced users wire lifecycle hooks into runs, tools, workflows, uploads, and
|
|
125
|
+
indexing — and see the on-device local runtime's real status, handshake, and
|
|
126
|
+
folder-watch activity.
|
|
27
127
|
|
|
28
128
|
## Install
|
|
29
129
|
|
|
@@ -65,279 +165,138 @@ Then open:
|
|
|
65
165
|
http://127.0.0.1:4825/app
|
|
66
166
|
```
|
|
67
167
|
|
|
68
|
-
|
|
168
|
+
Working from a development checkout:
|
|
69
169
|
|
|
70
170
|
```bash
|
|
71
171
|
npm install
|
|
72
172
|
npm run dev
|
|
73
173
|
```
|
|
74
174
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
- **
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
- **
|
|
94
|
-
|
|
95
|
-
- **
|
|
96
|
-
|
|
97
|
-
- **
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
- **
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
- **
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
## v3.4.1 Highlights
|
|
126
|
-
|
|
127
|
-
Lattice AI v3.4.1 is the **runtime completion** release: it makes the v3.4.0
|
|
128
|
-
runtime systems verifiably complete and corrects the v3.4.0 overclaims an
|
|
129
|
-
implementation audit found. Every item is verified by a **live end-to-end run**
|
|
130
|
-
against a booted server (see `docs/assets/v3.4.1/e2e_runtime_log.txt`).
|
|
131
|
-
|
|
132
|
-
- **Hooks — full lifecycle.** One shared tool-dispatch path fires `pre_tool`/
|
|
133
|
-
`post_tool` across the HTTP, agent, and workflow tool paths (v3.4.0 only fired
|
|
134
|
-
on the HTTP path); workflow hooks fire from both the designer and platform
|
|
135
|
-
paths; the upload pipeline fires granular upload + index hooks; **all 7
|
|
136
|
-
built-in hooks have real runners**, and non-executable hooks are flagged
|
|
137
|
-
`advisory`.
|
|
138
|
-
- **Local Agent — real probes.** `online`/`handshake`/`health`/
|
|
139
|
-
`filesystem_access` are no longer hardcoded — they are probed (real filesystem
|
|
140
|
-
write, live graph reachability, derived `mode`, `pid`, handshake latency).
|
|
141
|
-
- **Connect Folder — proven end-to-end.** A real local folder is connected,
|
|
142
|
-
indexed, and visible in the Files table, retrieval, and hybrid search.
|
|
143
|
-
- **Folder Watch — proven end-to-end + restore.** Creating a file triggers a
|
|
144
|
-
debounced reindex (`watchdog` installed); the watch is restored after restart.
|
|
145
|
-
|
|
146
|
-
See [RELEASE_NOTES_v3.4.1.md](RELEASE_NOTES_v3.4.1.md) and the evidence-traced
|
|
175
|
+
## Core Features
|
|
176
|
+
|
|
177
|
+
- **Local-first workspace** — your data, models, and workspace state live on your
|
|
178
|
+
machine by default; cloud is opt-in.
|
|
179
|
+
- **Files and connected folders** — upload documents or connect a local folder;
|
|
180
|
+
Lattice indexes them and watches connected folders for changes.
|
|
181
|
+
- **Chat with workspace context** — conversations are grounded in your files,
|
|
182
|
+
knowledge graph, and memory, with vision-capable image input.
|
|
183
|
+
- **Knowledge Graph** — files, images, notes, conversations, and decisions become
|
|
184
|
+
linked entities and relationships you can explore.
|
|
185
|
+
- **Hybrid Search** — keyword, vector, and graph signals are fused into one ranked
|
|
186
|
+
result set.
|
|
187
|
+
- **Local model support** — run multimodal models locally via MLX, Ollama, or LM
|
|
188
|
+
Studio, with hardware-aware recommendations and source disclosure.
|
|
189
|
+
- **Optional cloud model routing** — add OpenAI-compatible or other cloud models
|
|
190
|
+
when you choose; model cards disclose origin, run mode, and internet use.
|
|
191
|
+
- **Multi-agent workflows** — turn goals into runs with roles, handoffs, review,
|
|
192
|
+
retries, and replayable timelines.
|
|
193
|
+
- **Skills, hooks, tools, and MCP** — extend the workspace with skills, lifecycle
|
|
194
|
+
hooks, a governed tool registry, and Model Context Protocol servers.
|
|
195
|
+
- **Personal / Organization workspaces** — keep personal work separate from team
|
|
196
|
+
work with role-aware views.
|
|
197
|
+
- **Basic / Advanced / Admin modes** — show only what each role needs, from core
|
|
198
|
+
workflows to agent tooling to administration.
|
|
199
|
+
|
|
200
|
+
## Latest Release
|
|
201
|
+
|
|
202
|
+
### v3.6.0 — Knowledge Graph First
|
|
203
|
+
|
|
204
|
+
- **Unified ingestion pipeline** — one entrypoint normalizes every source
|
|
205
|
+
(file, folder, web URL, browser tab, text/markdown/code) into the graph,
|
|
206
|
+
idempotent by content hash and bracketed by the `pre_tool`/`post_tool` hook
|
|
207
|
+
lifecycle.
|
|
208
|
+
- **Formalized entity/relationship model** — first-class `Source`, `Repository`,
|
|
209
|
+
`Meeting`, `Organization`, `Workflow`, `Agent` entities and `indexed_from`,
|
|
210
|
+
`modified_by`, `belongs_to_project`, `part_of`, `discussed_in`, `decided_by`,
|
|
211
|
+
`generated_by`, `used_by_agent` relationships.
|
|
212
|
+
- **Browser & web ingestion** — `POST /api/browser/read-url` and
|
|
213
|
+
`/ingest-current-tab`, plus a local Manifest V3 extension that posts only to
|
|
214
|
+
`127.0.0.1`.
|
|
215
|
+
- **Portability** — local Knowledge Graph export/import (versioned JSON) and
|
|
216
|
+
binary backup/restore (DB + blobs, integrity-checked). No cloud required.
|
|
217
|
+
- **Provenance** — every node records where it came from; a queryable audit trail
|
|
218
|
+
makes the graph explainable.
|
|
219
|
+
- **Knowledge Graph as the primary surface** — the view becomes your digital brain
|
|
220
|
+
with Status, Sources, Capture, and Backup tabs.
|
|
221
|
+
|
|
222
|
+
See [RELEASE_NOTES_v3.6.0.md](RELEASE_NOTES_v3.6.0.md),
|
|
223
|
+
[docs/kg-schema.md](docs/kg-schema.md),
|
|
224
|
+
[docs/RUNTIME_HOOK_COVERAGE_v3.6.0.md](docs/RUNTIME_HOOK_COVERAGE_v3.6.0.md), and
|
|
147
225
|
[FEATURE_STATUS.md](FEATURE_STATUS.md).
|
|
148
226
|
|
|
149
|
-
##
|
|
150
|
-
|
|
151
|
-
Lattice AI v3.4.0 is the **platform completion** release: it closes the remaining
|
|
152
|
-
non-enterprise functionality gaps the v3.3.0 honesty audit flagged, so the
|
|
153
|
-
local-first workspace is complete and demonstrable end-to-end. Each item below is
|
|
154
|
-
runtime-verified on a live server, not only wired in source.
|
|
155
|
-
|
|
156
|
-
- **Hooks now execute.** A real dispatch engine (`run_hook` / `run_hooks` /
|
|
157
|
-
`fire_hook` + `HookContext` / `HookResult`) runs hooks at genuine lifecycle
|
|
158
|
-
points — agents (pre/post-run), workflows (start/end), tools (pre/post-tool),
|
|
159
|
-
and the upload pipeline. `pre_*` hooks can gate (block) an action; every
|
|
160
|
-
dispatch is recorded to a persisted run log surfaced in the Hooks view.
|
|
161
|
-
- **Uploads appear in Files.** Uploaded documents are listed with live ingest →
|
|
162
|
-
index state (`/knowledge-graph/documents`), completing upload → Files →
|
|
163
|
-
Knowledge Graph → Hybrid Search → Chat.
|
|
164
|
-
- **Vision (VLM) image input.** The Chat composer accepts images by attach,
|
|
165
|
-
drag-and-drop, or paste, with a preview and a **Vision Enabled / Disabled**
|
|
166
|
-
badge driven by the active model's capability.
|
|
167
|
-
- **Run agents from the Agents view.** A Run console (goal + roles → Run / Stop /
|
|
168
|
-
Status / Queue / Logs) executes the multi-agent pipeline locally; it runs
|
|
169
|
-
without a model and fires its pre/post-run hooks.
|
|
170
|
-
- **On-device Local Agent + Connect Folder + Folder Watch.** My Computer reports
|
|
171
|
-
the real local-runtime agent status and handshake; folders can be connected and
|
|
172
|
-
watched (debounced reindex on change) through the existing on-device endpoints.
|
|
173
|
-
- **Enterprise stays honestly disabled.** SSO, SCIM, DLP, Private VPC, SIEM, and
|
|
174
|
-
enterprise RBAC remain off with honest "not available in this build" states.
|
|
175
|
-
|
|
176
|
-
See [RELEASE_NOTES_v3.4.0.md](RELEASE_NOTES_v3.4.0.md),
|
|
177
|
-
[PLATFORM_COMPLETION_REPORT_v3.4.0.md](PLATFORM_COMPLETION_REPORT_v3.4.0.md), and
|
|
178
|
-
the evidence-traced [FEATURE_STATUS.md](FEATURE_STATUS.md).
|
|
179
|
-
|
|
180
|
-
## v3.3.1 Highlights
|
|
181
|
-
|
|
182
|
-
Lattice AI v3.3.1 rebuilds the visible `/app` product experience while
|
|
183
|
-
preserving the existing local-first runtime. The app now presents Chat, Files,
|
|
184
|
-
Search, Knowledge, Memory, Models, Settings, Advanced tooling, and Admin
|
|
185
|
-
workflows with clearer navigation and honest live/unavailable states.
|
|
186
|
-
|
|
187
|
-
- **Visual product rebuild** — compact rail navigation, quieter topbar,
|
|
188
|
-
command-palette search, retrieval readiness footer, and denser controls.
|
|
189
|
-
- **Truthful Home dashboard** — backend, model, retrieval, memory, source, and
|
|
190
|
-
trace readiness are derived from real endpoints instead of fabricated counts.
|
|
191
|
-
- **Basic / Advanced / Admin navigation** — Basic focuses on core workspace
|
|
192
|
-
workflows; Advanced exposes agents, workflows, skills, hooks, and MCP; Admin
|
|
193
|
-
keeps organization controls separate.
|
|
194
|
-
- **Files and Settings clarity** — manual upload is available immediately,
|
|
195
|
-
folder watching is explicitly tied to the desktop local agent, and Settings
|
|
196
|
-
shows backend, agent, model, telemetry, and embedding readiness.
|
|
197
|
-
- **Design system refresh** — cooler neutral light/dark tokens, tighter 8px
|
|
198
|
-
radius discipline, compact cards/tables/stats/buttons, and regenerated
|
|
199
|
-
hashed v3 assets.
|
|
227
|
+
## How it works — every source converges into the graph
|
|
200
228
|
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
Autonomous Planning, Long-Term Memory, Skills, Hooks, Tool Registry, MCP
|
|
204
|
-
Manager, production embedding profiles, and hash-manifested `/app` assets.
|
|
205
|
-
Release audit: [docs/V3_2_AUDIT.md](docs/V3_2_AUDIT.md).
|
|
206
|
-
|
|
207
|
-
## Screenshots
|
|
208
|
-
|
|
209
|
-
All screenshots are the v3.4.0 `/app` shell. Live model output (VLM inference,
|
|
210
|
-
agent-generated text) requires a loaded local model and is not depicted.
|
|
211
|
-
|
|
212
|
-
### Home
|
|
213
|
-
|
|
214
|
-

|
|
215
|
-
|
|
216
|
-
### Chat with Vision (VLM) image input
|
|
217
|
-
|
|
218
|
-

|
|
219
|
-
|
|
220
|
-
### Files — uploaded documents + Connect Folder
|
|
221
|
-
|
|
222
|
-

|
|
223
|
-
|
|
224
|
-
### Run agents from the Agents view
|
|
225
|
-
|
|
226
|
-

|
|
227
|
-
|
|
228
|
-
### Hooks dispatch + run log
|
|
229
|
-
|
|
230
|
-

|
|
231
|
-
|
|
232
|
-
### Local Agent (on-device runtime)
|
|
233
|
-
|
|
234
|
-

|
|
235
|
-
|
|
236
|
-
### Knowledge Graph
|
|
237
|
-
|
|
238
|
-

|
|
239
|
-
|
|
240
|
-
## Knowledge Graph Flow
|
|
229
|
+
As of v3.6.0, all data sources flow through **one unified ingestion pipeline** into
|
|
230
|
+
the Knowledge Graph — no source bypasses it, none becomes an isolated silo:
|
|
241
231
|
|
|
242
232
|
```text
|
|
243
|
-
|
|
244
|
-
->
|
|
245
|
-
-> entity
|
|
246
|
-
->
|
|
247
|
-
->
|
|
248
|
-
-> AI pipeline context
|
|
249
|
-
-> coding actions / analysis / documents / team workflows
|
|
233
|
+
source (file · folder · PDF · web URL · browser tab · text)
|
|
234
|
+
-> extraction -> normalization -> content hash (idempotent)
|
|
235
|
+
-> chunking -> entity detection -> relationship detection -> embedding
|
|
236
|
+
-> Knowledge Graph (Source -[indexed_from]- content -[contains]- chunks)
|
|
237
|
+
-> RAG / agents / memory / hybrid search
|
|
250
238
|
```
|
|
251
239
|
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
240
|
+
- **Every node is explainable.** Each ingested item carries provenance — where it
|
|
241
|
+
came from, when, how it was processed, whether it was embedded or linked.
|
|
242
|
+
- **The graph is the asset.** Memory, search, and agents are views over it; models
|
|
243
|
+
read it. Swap a model and your knowledge is unchanged.
|
|
244
|
+
- **Portable, no cloud.** Export/import the graph as JSON, or take a full local
|
|
245
|
+
binary backup (DB + blobs) and restore it.
|
|
246
|
+
- **Local-first protects the graph.** It lives in local SQLite on your machine.
|
|
255
247
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
graph data while adding derived vector rows that can be rebuilt at any time.
|
|
248
|
+
For the deeper design, see [ARCHITECTURE.md](ARCHITECTURE.md) and
|
|
249
|
+
[docs/architecture.md](docs/architecture.md).
|
|
259
250
|
|
|
260
|
-
|
|
261
|
-
`GET /api/embeddings/providers`, while `lattice-local-hash-v1` remains a
|
|
262
|
-
deterministic fallback for offline indexing and tests. It is never presented as
|
|
263
|
-
a production semantic embedding model.
|
|
264
|
-
|
|
265
|
-
Core API contracts:
|
|
251
|
+
## Documentation
|
|
266
252
|
|
|
267
|
-
|
|
268
|
-
- `GET /api/search/keyword?q=...`
|
|
269
|
-
- `GET /api/search/vector?q=...`
|
|
270
|
-
- `GET /api/graph`
|
|
271
|
-
- `GET /api/graph/node?node_id=...`
|
|
272
|
-
- `GET /api/graph/relationship`
|
|
273
|
-
- `GET /api/index/status`
|
|
274
|
-
- `POST /api/index/rebuild`
|
|
253
|
+
### Product and principles
|
|
275
254
|
|
|
276
|
-
|
|
277
|
-
|
|
255
|
+
- [PROJECT_PRINCIPLES.md](PROJECT_PRINCIPLES.md) — product principles
|
|
256
|
+
- [AI_PHILOSOPHY.md](AI_PHILOSOPHY.md) — how AI is used in the workspace
|
|
257
|
+
- [MODEL_POLICY.md](MODEL_POLICY.md) — local model recommendation policy
|
|
278
258
|
|
|
279
|
-
|
|
259
|
+
### Architecture
|
|
280
260
|
|
|
281
|
-
|
|
282
|
-
|
|
261
|
+
- [ARCHITECTURE.md](ARCHITECTURE.md) — workspace, graph, pipeline, and model overview
|
|
262
|
+
- [docs/architecture.md](docs/architecture.md) — full architecture reference
|
|
263
|
+
- [docs/V3_BACKEND_ARCHITECTURE.md](docs/V3_BACKEND_ARCHITECTURE.md) — backend storage, search, and retrieval
|
|
283
264
|
|
|
284
|
-
|
|
285
|
-
| --- | --- | --- |
|
|
286
|
-
| Gemma 4 | Default Google multimodal family | `mlx-community/gemma-4-12b-it-4bit` |
|
|
287
|
-
| Gemma 4 large | Higher-quality local multimodal work | `mlx-community/gemma-4-31b-it-4bit` |
|
|
288
|
-
| Qwen3-VL | Smaller, balanced multimodal options | `mlx-community/Qwen3-VL-4B-Instruct-4bit` |
|
|
289
|
-
| Llama 4 | Meta multimodal option | `mlx-community/Llama-4-Scout-17B-16E-Instruct-4bit` |
|
|
265
|
+
### Knowledge and retrieval
|
|
290
266
|
|
|
291
|
-
|
|
292
|
-
internet requirement, and model name. See [MODEL_POLICY.md](MODEL_POLICY.md).
|
|
267
|
+
- [KNOWLEDGE_GRAPH.md](KNOWLEDGE_GRAPH.md) — graph model and behavior
|
|
293
268
|
|
|
294
|
-
|
|
269
|
+
### Agents and workflows
|
|
295
270
|
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
-> files, chats, screenshots, model choices, workflow events
|
|
299
|
-
-> Knowledge Graph
|
|
300
|
-
-> AI Pipeline
|
|
301
|
-
-> Multi-Agent Workflow
|
|
302
|
-
-> coding actions, documents, analysis, team handoffs
|
|
303
|
-
```
|
|
271
|
+
- [docs/MULTI_AGENT_RUNTIME.md](docs/MULTI_AGENT_RUNTIME.md) — multi-agent workflow runtime
|
|
272
|
+
- [docs/WORKFLOW_DESIGNER.md](docs/WORKFLOW_DESIGNER.md) — AI pipeline designer
|
|
304
273
|
|
|
305
|
-
|
|
274
|
+
### Extensions
|
|
306
275
|
|
|
307
|
-
-
|
|
308
|
-
- Knowledge Graph storage and graph APIs
|
|
309
|
-
- AI pipeline and workflow designer
|
|
310
|
-
- Multi-agent handoff, review, retry, and replay records
|
|
311
|
-
- Local model management and model recommendation catalog
|
|
312
|
-
- VS Code / Cursor / VSCodium extension surface
|
|
313
|
-
- Personal and organization workspace boundaries
|
|
276
|
+
- [docs/PLUGIN_SDK.md](docs/PLUGIN_SDK.md) — plugin SDK
|
|
314
277
|
|
|
315
|
-
|
|
278
|
+
### Releases
|
|
316
279
|
|
|
317
|
-
- [
|
|
318
|
-
- [
|
|
319
|
-
- [
|
|
320
|
-
- [
|
|
321
|
-
- [
|
|
322
|
-
- [
|
|
323
|
-
- [docs/MULTI_AGENT_RUNTIME.md](docs/MULTI_AGENT_RUNTIME.md) — multi-agent workflow runtime
|
|
324
|
-
- [docs/WORKFLOW_DESIGNER.md](docs/WORKFLOW_DESIGNER.md) — AI pipeline designer
|
|
325
|
-
- [docs/REALTIME_COLLABORATION.md](docs/REALTIME_COLLABORATION.md) — realtime workspace events
|
|
326
|
-
- [docs/ENTERPRISE.md](docs/ENTERPRISE.md) — organization workspaces and SSO
|
|
327
|
-
- [docs/PLUGIN_SDK.md](docs/PLUGIN_SDK.md) — plugin SDK
|
|
328
|
-
- [RELEASE_NOTES.md](RELEASE_NOTES.md) and [docs/CHANGELOG.md](docs/CHANGELOG.md)
|
|
280
|
+
- [RELEASE_NOTES.md](RELEASE_NOTES.md) — current release notes
|
|
281
|
+
- [RELEASE_NOTES_v3.6.0.md](RELEASE_NOTES_v3.6.0.md)
|
|
282
|
+
- [RELEASE_NOTES_v3.5.0.md](RELEASE_NOTES_v3.5.0.md)
|
|
283
|
+
- [RELEASE_NOTES_v3.4.1.md](RELEASE_NOTES_v3.4.1.md)
|
|
284
|
+
- [RELEASE_NOTES_v3.4.0.md](RELEASE_NOTES_v3.4.0.md)
|
|
285
|
+
- [CHANGELOG.md](CHANGELOG.md) and [docs/CHANGELOG.md](docs/CHANGELOG.md)
|
|
329
286
|
|
|
330
|
-
## Release
|
|
287
|
+
## Release History
|
|
331
288
|
|
|
332
289
|
| Version | Theme |
|
|
333
290
|
| --- | --- |
|
|
334
|
-
| **3.
|
|
335
|
-
| 3.
|
|
336
|
-
| 3.
|
|
337
|
-
|
|
|
338
|
-
| 3.
|
|
339
|
-
| 3.
|
|
340
|
-
| 3.0
|
|
291
|
+
| **3.6.0** | Knowledge Graph First — unified ingestion pipeline, formalized entity/relationship model, browser/web ingestion, local export/import/backup, provenance, KG as the primary surface |
|
|
292
|
+
| 3.5.0 | Foundation stabilization & verification — OIDC verifier, trusted-proxy gating, runtime hook coverage, `tools/` package, reproducible artifacts |
|
|
293
|
+
| 3.4.1 | Runtime completion — full hooks lifecycle, real Local Agent probes, Connect Folder and Folder Watch verified end-to-end |
|
|
294
|
+
| 3.4.0 | Platform completion — hooks execution, uploads in Files, vision image input, agent run trigger, on-device Local Agent / Connect Folder / Folder Watch |
|
|
295
|
+
| 3.3.1 | Visual product rebuild — rebuilt `/app` shell, Basic/Advanced/Admin navigation, refreshed design system |
|
|
296
|
+
| **3.3.0** | Product quality & honesty release — evidence-based feature audit, single-source version truth, working document upload, documented design system |
|
|
297
|
+
| 3.2.0 | Feature-complete platform — multi-agent collaboration, agent registry, marketplace + templates, workflow agents, long-term memory, skills/hooks/tool registries, MCP manager |
|
|
298
|
+
| 3.1.0 | Mainline platform completion — native `/app` workflows, production embedding profiles, AgentRuntime/registries, hashed v3 assets |
|
|
299
|
+
| 3.0.1 | Release-blocker remediation — provider-backed embeddings, unified AgentRuntime boundary, every v3 surface connected or clearly unavailable |
|
|
341
300
|
| 3.0.0 | v3 local-first AI workspace platform — `/app`, Native Chat, Knowledge Graph, Vector Index, Hybrid Search, workspace modes |
|
|
342
301
|
| 2.2.7 | Visual system stabilization — cohesive dark/light screens, crisp chat composer, dark graph canvas, Workspace OS polish |
|
|
343
302
|
| 2.2.6 | Token-native CSS foundation |
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
# v3.5.0 → v3.6.0 Carry-Over Audit
|
|
2
|
+
|
|
3
|
+
**Date:** 2026-06-09
|
|
4
|
+
**Baseline:** v3.5.0 (tag published, GitHub Release live, CI + Visual Smoke green on `main`)
|
|
5
|
+
**Purpose:** Classify every open v3.5.0 carry-over risk as **blocking**, **non-blocking**, or
|
|
6
|
+
**obsolete** before starting v3.6.0 Knowledge Graph First work.
|
|
7
|
+
|
|
8
|
+
## Headline
|
|
9
|
+
|
|
10
|
+
**No carry-over item blocks v3.6.0.** v3.5.0 was a stabilization/verification release that added no
|
|
11
|
+
product surface. Every documented limitation is either an intentional, honestly-labeled scope
|
|
12
|
+
boundary or a closed issue. KG work can start immediately on the existing local SQLite store.
|
|
13
|
+
|
|
14
|
+
## Verified baseline state
|
|
15
|
+
|
|
16
|
+
| Check | Result | Evidence |
|
|
17
|
+
|---|---|---|
|
|
18
|
+
| `v3.5.0` git tag | exists | `git tag` |
|
|
19
|
+
| GitHub Release `v3.5.0` | published, not draft | `gh release view v3.5.0` |
|
|
20
|
+
| CI on `main` | success | `gh run list --branch main` (run 27155690240) |
|
|
21
|
+
| Visual Smoke on `main` | success | run 27155690270 |
|
|
22
|
+
| VSIX reproducibility fix | merged | commit `78deb95` |
|
|
23
|
+
|
|
24
|
+
## Classified carry-over items
|
|
25
|
+
|
|
26
|
+
### Blocking
|
|
27
|
+
*(none)*
|
|
28
|
+
|
|
29
|
+
### Non-blocking
|
|
30
|
+
|
|
31
|
+
| Item | Why it does not block | Evidence |
|
|
32
|
+
|---|---|---|
|
|
33
|
+
| OIDC is RSA-only (RS256/384/512); ES*/HS*/`alg:none` rejected fail-closed | v3.6.0 KG work does not touch the SSO callback. EC support is additive when a provider needs it. | `latticeai/core/oidc.py:36` |
|
|
34
|
+
| Memory/KG maintenance endpoints (`/api/memory/{prune,compact,rebuild,clear}`) sit outside `pre_tool`/`post_tool` | Intentional, documented decision; these ops carry their own audit events. v3.6.0 follows the same convention and adds a coverage row rather than routing maintenance through `dispatch_tool`. | `docs/RUNTIME_HOOK_COVERAGE_v3.5.0.md:47` |
|
|
35
|
+
| Knowledge Graph is config-dependent on `LATTICEAI_ENABLE_GRAPH`, backed by a large `knowledge_graph.py` | This is the surface v3.6.0 builds on. Size/coupling is refactor context, addressed additively (new service modules, not a rewrite). | `FEATURE_STATUS.md:257-263` |
|
|
36
|
+
| Memory project/graph/vector tiers PARTIAL; prune/clear API-only (no UI) | KG-adjacent tiers v3.6.0 completes; honestly labeled, not broken. v3.6.0 adds the ingestion/export/provenance UI. | `FEATURE_STATUS.md:280-286` |
|
|
37
|
+
| Hybrid-search "fusion" explainer renders illustrative bars | Cosmetic placeholder; orthogonal to KG-first ingestion work. | `FEATURE_STATUS.md:249-251` |
|
|
38
|
+
| Chat grounding chips set state but `ChatRequest` drops them | Wiring grounding into generation is a natural KG-first feature; additive, not a blocker. | `FEATURE_STATUS.md:131-138` |
|
|
39
|
+
| CI action versions inconsistent (`ci.yml` `checkout@v4` vs `release.yml` `@v5`) | None are currently deprecated. Aligning is hygiene; addressed opportunistically. | `.github/workflows/ci.yml` |
|
|
40
|
+
| Live MCP tool calls + VLM inference PARTIAL (env/model dependent) | Honestly badged; orthogonal to KG-first work. | `FEATURE_STATUS.md:169-178,392` |
|
|
41
|
+
|
|
42
|
+
### Obsolete
|
|
43
|
+
|
|
44
|
+
| Item | Why it is closed |
|
|
45
|
+
|---|---|
|
|
46
|
+
| "Hooks registered but not executing" (v3.3.0 issue) | v3.4.1 added real runners for all built-ins; v3.5.0 closed the last tool-path bypasses at 100% coverage. |
|
|
47
|
+
| Legacy `/account` `/admin` glassmorphism | Blur removed in v3.5.0 (`account.css:120`, `admin.css:48`). Remaining "not restyled" note is a deliberate scope boundary — these pages are outside the v3 SPA view set. |
|
|
48
|
+
| Vercel deployment returns HTTP 500 | Settled posture: Vercel is **landing/download/demo only, never runtime**. Lattice AI is local-first; the KG runs on local SQLite. Do not present any Vercel URL as a product surface. |
|
|
49
|
+
| CI syntax-gate staleness | Fixed in v3.5.0 by `scripts/check_python.py` (discover-based via `rglob`); new v3.6.0 modules are covered automatically with zero maintenance. |
|
|
50
|
+
|
|
51
|
+
## v3.6.0 posture decisions taken from this audit
|
|
52
|
+
|
|
53
|
+
1. **Build additively on the existing store.** Mirror the proven `tools.py → tools/` decomposition
|
|
54
|
+
pattern: preserve the import surface, add focused modules (`services/ingestion.py`,
|
|
55
|
+
`services/kg_portability.py`, `api/browser.py`, `api/portability.py`) rather than rewriting
|
|
56
|
+
`knowledge_graph.py`.
|
|
57
|
+
2. **Route new ingestion paths through `dispatch_tool`** so `pre_tool`/`post_tool` fire — this is the
|
|
58
|
+
one v3.5.0 gap (no ingest path fired hooks). Maintenance ops stay audit-only by the documented
|
|
59
|
+
convention.
|
|
60
|
+
3. **Keep Vercel landing-only and OIDC RSA-only** — settled, out of v3.6.0 scope.
|
|
61
|
+
4. **Leave legacy `/account` `/admin` pages alone** — out of the local-first KG scope.
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,37 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [3.6.0] - 2026-06-10
|
|
4
|
+
|
|
5
|
+
> Knowledge Graph First. The Knowledge Graph becomes the primary architecture:
|
|
6
|
+
> every data source converges into it through one unified ingestion pipeline, with
|
|
7
|
+
> formalized entities/relationships, browser/web inputs, local portability, and
|
|
8
|
+
> per-node provenance. Lattice AI is a Digital Brain Platform — the graph is the
|
|
9
|
+
> durable asset; models read it and are replaceable.
|
|
10
|
+
|
|
11
|
+
### Added
|
|
12
|
+
|
|
13
|
+
- Unified ingestion pipeline (`latticeai/services/ingestion.py`): one entrypoint
|
|
14
|
+
for files, folders, web URLs, browser tabs, and text — idempotent by content
|
|
15
|
+
hash, bracketed by `pre_tool`/`post_tool`.
|
|
16
|
+
- Knowledge Graph entities `Source`/`Repository`/`Meeting`/`Organization`/
|
|
17
|
+
`Workflow`/`Agent` and relationships `indexed_from`/`modified_by`/
|
|
18
|
+
`belongs_to_project`/`part_of`/`discussed_in`/`decided_by`/`generated_by`/
|
|
19
|
+
`used_by_agent` (additive, lossless `from_legacy`).
|
|
20
|
+
- Browser & web ingestion routes (`/api/browser/read-url`, `/ingest-current-tab`)
|
|
21
|
+
and a Manifest V3 extension scaffold that posts only to `127.0.0.1`.
|
|
22
|
+
- Knowledge Graph export/import (versioned JSON) and binary backup/restore
|
|
23
|
+
(`latticeai/services/kg_portability.py`,
|
|
24
|
+
`/api/knowledge-graph/{export,import,backup,restore,portability,provenance}`).
|
|
25
|
+
- Provenance trail (`ingestion_provenance` table + query API) — every node is
|
|
26
|
+
explainable.
|
|
27
|
+
- Knowledge Graph UI tabs: Status, Sources, Capture, Backup.
|
|
28
|
+
|
|
29
|
+
### Changed
|
|
30
|
+
|
|
31
|
+
- KG ingestion now fires the tool hook lifecycle (closes the v3.5.0 gap);
|
|
32
|
+
coverage documented in `docs/RUNTIME_HOOK_COVERAGE_v3.6.0.md`.
|
|
33
|
+
- README repositioned as a Digital Brain Platform; Vercel remains landing-only.
|
|
34
|
+
|
|
3
35
|
## [3.3.1] - 2026-06-08
|
|
4
36
|
|
|
5
37
|
> v3.3.1 — Visual Product Rebuild. The `/app` frontend keeps the same runtime
|