@hiai-gg/docsmint 0.8.2 → 0.8.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 (36) hide show
  1. package/README.md +56 -57
  2. package/dist/backend/index.js +323 -231
  3. package/dist/client.js +7 -0
  4. package/dist/frontend/{HiAiEditor-BpmzvTCP.js → HiAiEditor-Dxqt8BUN.js} +2 -2
  5. package/dist/frontend/{SettingsDialog-2d6ZA4Ze.js → SettingsDialog-DnrPV8dM.js} +4 -4
  6. package/dist/frontend/{Sidebar-Db_ffhAb.js → Sidebar-BI_ccYTl.js} +1 -1
  7. package/dist/frontend/api/settings.js +1 -1
  8. package/dist/frontend/app-shell.js +2 -2
  9. package/dist/frontend/{auth-client-DCMne8vd.js → auth-client-Dc0mkuZH.js} +10 -10
  10. package/dist/frontend/components/editor/compact-editor.js +1 -1
  11. package/dist/frontend/components/editor/document-editor.js +1 -1
  12. package/dist/frontend/components/settings.js +1 -1
  13. package/dist/frontend/components/sidebar.js +1 -1
  14. package/dist/frontend/{db-CbFRFAm2.js → db-DUOtrCBC.js} +1 -1
  15. package/dist/frontend/{identity-O4lAuchv.js → identity-D_rjww-V.js} +1 -1
  16. package/dist/frontend/offline/identity.js +1 -1
  17. package/dist/frontend/{settings-DJW8JkdF.js → settings-CW_SR-EH.js} +1 -1
  18. package/dist/frontend-ssr/api/settings.js +1 -1
  19. package/dist/frontend-ssr/app-shell.js +2 -2
  20. package/dist/frontend-ssr/assets/{HiAiEditor-DCpulE6N.js → HiAiEditor-D-FYXUht.js} +2 -2
  21. package/dist/frontend-ssr/assets/{SettingsDialog-CpPxZahd.js → SettingsDialog-BaI2MU5d.js} +4 -4
  22. package/dist/frontend-ssr/assets/{Sidebar-BJ1XZ1DH.js → Sidebar-BpTS2uCa.js} +1 -1
  23. package/dist/frontend-ssr/assets/{auth-client-DzkZlSQ8.js → auth-client-Bo5Fg-sb.js} +13 -13
  24. package/dist/frontend-ssr/assets/{db-CUkQe9AU.js → db-DUKz2X3Z.js} +1 -1
  25. package/dist/frontend-ssr/assets/{identity-veXobEfE.js → identity-_M3U9lqe.js} +1 -1
  26. package/dist/frontend-ssr/assets/{settings-DwAcLGM1.js → settings-DaOQ4Gv2.js} +1 -1
  27. package/dist/frontend-ssr/components/editor/compact-editor.js +1 -1
  28. package/dist/frontend-ssr/components/editor/document-editor.js +1 -1
  29. package/dist/frontend-ssr/components/settings.js +1 -1
  30. package/dist/frontend-ssr/components/sidebar.js +1 -1
  31. package/dist/frontend-ssr/offline/identity.js +1 -1
  32. package/dist/mcp-cli.js +4 -1
  33. package/dist/mcp-server.js +4 -1
  34. package/package.json +1 -1
  35. package/packages/cli/src/index.ts +1 -1
  36. package/server.json +2 -2
package/README.md CHANGED
@@ -1,14 +1,14 @@
1
1
  # DocsMint
2
2
 
3
- **A self-hosted AI-native knowledge workspace and installable PWA for people,
4
- applications, and AI agents.**
3
+ **Turn your documents into knowledge you and your AI agents can use.**
5
4
 
6
- DocsMint stores documents in a structured JSON editor model first. Markdown is
7
- the convenient second format for editing, importing, and exporting content.
8
- Automatic chunking, 1024-dimensional embeddings, multilingual hybrid search,
9
- GraphRAG, and cross-encoder rerank make the same knowledge base useful to
10
- people, applications, and agents through the web application, REST API,
11
- TypeScript SDK, CLI, and MCP server.
5
+ Write and organize notes, guides, and project documentation in one workspace.
6
+ Find answers with search that understands related concepts, then give your
7
+ agents access to the same documents through MCP, REST, the SDK, or CLI.
8
+
9
+ **[Try managed DocsMint](https://docsmint.com)** to get started without
10
+ operating the stack, or **[self-host with Docker](#quickstart)** to run the
11
+ Apache-2.0 application on your own infrastructure.
12
12
 
13
13
  [![Apache-2.0 License](https://img.shields.io/badge/License-Apache--2.0-green.svg)](LICENSE)
14
14
  [![Release](https://img.shields.io/github/v/release/hiai-gg/docsmint?sort=semver)](https://github.com/hiai-gg/docsmint/releases)
@@ -16,7 +16,7 @@ TypeScript SDK, CLI, and MCP server.
16
16
  [![Docker Pulls](https://img.shields.io/docker/pulls/vgalibov/docsmint?logo=docker)](https://hub.docker.com/r/vgalibov/docsmint)
17
17
  [![Stars](https://img.shields.io/github/stars/hiai-gg/docsmint)](https://github.com/hiai-gg/docsmint/stargazers)
18
18
  [![CI](https://github.com/hiai-gg/docsmint/actions/workflows/ci.yml/badge.svg)](https://github.com/hiai-gg/docsmint/actions/workflows/ci.yml)
19
- [![Bun](https://img.shields.io/badge/Runtime-Bun_1.3-black?logo=bun&logoColor=white)](https://bun.sh)
19
+ [![Bun](https://img.shields.io/badge/Runtime-Bun_1.4-black?logo=bun&logoColor=white)](https://bun.sh)
20
20
  [![TypeScript](https://img.shields.io/badge/TypeScript-6.x-3178C6?logo=typescript&logoColor=white)](https://www.typescriptlang.org)
21
21
  [![Svelte](https://img.shields.io/badge/Svelte-5.x-FF3E00?logo=svelte&logoColor=white)](https://svelte.dev)
22
22
  [![Elysia](https://img.shields.io/badge/Elysia-1.4-lightgrey?logo=elysia&logoColor=white)](https://elysiajs.com)
@@ -34,38 +34,47 @@ TypeScript SDK, CLI, and MCP server.
34
34
 
35
35
  ## Why DocsMint?
36
36
 
37
- - **Write naturally** in a rich visual editor or raw Markdown.
38
- - **Find meaning, not only keywords** with exact, lexical, fuzzy, vector,
39
- multilingual expansion, and graph retrieval fused through RRF, then
40
- reranked with a cross-encoder (Voyage rerank-2.5 in the reference profile).
41
- - **Keep retrieval current** with automatic, incremental chunking and
42
- re-embedding after document or metadata changes.
43
- - **Connect agents directly** through REST, a typed SDK, CLI, or MCP.
44
- - **Control access** with global keys or category-scoped `read`, `edit`, and
45
- `write` permissions.
46
- - **Own the full stack**: application data, vectors, graph, queue, and files run
47
- on infrastructure you control.
48
-
49
- ## What's new in 0.8.2?
50
-
51
- - **Correct rerank identity.** Empty candidates can no longer shift provider
52
- scores onto the wrong document ID; partial and invalid provider responses
53
- still preserve stable RRF fallback order.
54
- - **Recover optional AI stages safely.** Pipeline status includes typed graph
55
- and summary warnings, and the API or SDK can retry only failed enrichment on
56
- the current embedding generation without rebuilding ready chunks.
57
- - **Reliable public frontend imports.** The standalone frontend consumes only
58
- published `hiai-ui` exports, with no source or distribution aliases.
37
+ - **Keep knowledge easy to edit.** Use a rich visual editor or Markdown;
38
+ organize documents with folders, categories, and tags.
39
+ - **Find the document you mean.** Search combines keywords, meaning, typo
40
+ tolerance, and graph relationships across languages.
41
+ - **Keep agents close to the source.** Let your tools search, read, and update
42
+ the same knowledge through MCP, REST, a typed SDK, and CLI.
43
+ - **Choose what an integration can access.** Category keys grant explicit
44
+ `read`, `edit`, and `write` permissions for a defined part of your library.
45
+ - **Keep retrieval up to date.** Document edits and metadata changes refresh
46
+ the search index automatically in the background.
47
+ - **Choose how you run it.** Use [managed DocsMint](https://docsmint.com) or
48
+ self-host the application, database, search, queues, and files.
49
+
50
+ ## What's new in 0.8.3?
51
+
52
+ This maintenance release focuses on reliable saves and integrations:
53
+
54
+ - Pending editor saves stay attached to the document being edited, even when
55
+ you switch documents.
56
+ - Navigation waits for pending content saves; overlapping saves are serialized
57
+ so an older request cannot overwrite a newer edit.
58
+ - SDK document creation retries reuse an idempotency key to prevent duplicates
59
+ after a lost response.
60
+ - Workspace-wide tag management requires full write access; read-only and
61
+ category-scoped credentials can no longer mutate the entire tag collection.
62
+ - Partial category API-setting updates preserve omitted permissions.
63
+ - Public workspace share links retain their workspace context when loading
64
+ folders and documents.
65
+
66
+ No schema migration is added. Existing public request and response shapes
67
+ remain supported; the tag authorization fix intentionally rejects operations
68
+ that exceeded the caller's permissions.
59
69
 
60
70
  Read the complete release history in the [changelog](CHANGELOG.md) or
61
71
  [GitHub Releases](https://github.com/HiAi-gg/docsmint/releases). See the
62
72
  [roadmap](docs/ROADMAP.md) for what comes next.
63
73
 
64
- ## Fastest installation: give this prompt to your agent
74
+ ## Install with an AI agent
65
75
 
66
- If you are installing DocsMint through an AI coding agent, use this path first.
67
- It keeps the setup to Docker plus one provider choice and avoids unnecessary
68
- source-code changes.
76
+ Prefer an assisted self-hosted setup? Give your coding agent this prompt.
77
+ You will need Docker and a choice of AI provider.
69
78
 
70
79
  ```text
71
80
  Install DocsMint from https://github.com/HiAi-gg/docsmint.
@@ -112,8 +121,8 @@ docker pull vgalibov/docsmint:web-latest
112
121
  docker pull vgalibov/docsmint:caddy-latest
113
122
  ```
114
123
 
115
- Use versioned tags such as `api-v0.8.1` for reproducible deploys. The
116
- quickstart still builds the Compose stack from this repository so PostgreSQL,
124
+ Use versioned tags `api-v0.8.3`, `web-v0.8.3`, and `caddy-v0.8.3` for
125
+ reproducible deploys. The quickstart still builds the Compose stack from this repository so PostgreSQL,
117
126
  Redis, and SeaweedFS start together with the application.
118
127
 
119
128
  For OpenRouter, add one value to `.env` and run the script again:
@@ -173,7 +182,7 @@ The published package includes the CLI. It connects to an already running
173
182
  DocsMint server; installing it does not deploy the server.
174
183
 
175
184
  ```bash
176
- npm install @hiai-gg/docsmint
185
+ bun add @hiai-gg/docsmint
177
186
  ```
178
187
 
179
188
  ```bash
@@ -256,7 +265,8 @@ const results = await docs.search('what did we decide?');
256
265
  console.log(created.id, results.items);
257
266
  ```
258
267
 
259
- The SDK is a typed `fetch` client with retries for transient failures. See the
268
+ The SDK is a typed `fetch` client with retries for transient failures and
269
+ idempotent document creation retries. See the
260
270
  [SDK reference](packages/sdk/README.md) and [REST API](docs/API.md).
261
271
 
262
272
  ## API keys and integrations
@@ -283,6 +293,10 @@ affected by browser CORS. Browser integrations must add their exact origin to
283
293
 
284
294
  ## What is included?
285
295
 
296
+ Documents use structured TipTap JSON as canonical content. Markdown is the
297
+ source-editing, import, and export format. The same document store serves the
298
+ web application and public integration interfaces.
299
+
286
300
  ```text
287
301
  frontend/ SvelteKit workspace and TipTap editor
288
302
  backend/ Elysia REST API, search, workers, and authentication
@@ -328,7 +342,7 @@ For pipeline internals and tuning, see [Architecture](docs/ARCHITECTURE.md) and
328
342
 
329
343
  ## Stack
330
344
 
331
- - Bun, TypeScript, Elysia, Zod, and Pino
345
+ - Bun 1.4.0+, TypeScript, Elysia, Zod, and Pino
332
346
  - Svelte 5, SvelteKit, Tailwind CSS, and TipTap
333
347
  - Better Auth and Drizzle ORM
334
348
  - PostgreSQL 18, pgvector, pgvectorscale, and Apache AGE
@@ -336,23 +350,6 @@ For pipeline internals and tuning, see [Architecture](docs/ARCHITECTURE.md) and
336
350
  - SeaweedFS with its S3-compatible API
337
351
  - OpenAI-compatible providers through OpenRouter or local Ollama
338
352
 
339
- ## Comparison
340
-
341
- DocsMint overlaps with several excellent open-source knowledge tools, but its
342
- focus is a compact knowledge runtime shared equally by humans and agents.
343
-
344
- | Project | Primary strength | Difference from DocsMint |
345
- | ------------------------------------------------------------ | -------------------------------------------- | -------------------------------------------------------------------------------------- |
346
- | [Outline](https://github.com/outline/outline) | Polished team wiki and collaboration | DocsMint emphasizes built-in retrieval, GraphRAG, scoped agent access, CLI, and MCP |
347
- | [Docmost](https://github.com/docmost/docmost) | Collaborative wiki and real-time editing | DocsMint centers automatic embeddings and agent-facing integration surfaces |
348
- | [AppFlowy](https://github.com/AppFlowy-IO/AppFlowy) | Broad local-first productivity workspace | DocsMint is narrower: a self-hosted document and retrieval service |
349
- | [AnythingLLM](https://github.com/Mintplex-Labs/anything-llm) | Chat-oriented RAG over imported sources | DocsMint starts with the editable knowledge base and exposes it to many clients |
350
- | [Danswer](https://github.com/danswer-ai/danswer) / Onyx | Enterprise search across external connectors | DocsMint owns and edits its native corpus rather than primarily indexing other systems |
351
-
352
- This is a product-positioning summary, not a claim that every listed project
353
- lacks a feature. Check each project's current documentation when choosing a
354
- deployment.
355
-
356
353
  ## Documentation
357
354
 
358
355
  - [Documentation index](docs/README.md)
@@ -368,6 +365,8 @@ deployment.
368
365
 
369
366
  ## Development
370
367
 
368
+ Use Bun 1.4.0 or later for local development.
369
+
371
370
  ```bash
372
371
  bun install
373
372
  bun run lint