@mindstudio-ai/agent 0.1.121 → 0.1.122
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/dist/cli.js +41 -10
- package/dist/index.d.ts +30 -2
- package/dist/index.js +34 -3
- package/dist/index.js.map +1 -1
- package/dist/postinstall.js +41 -10
- package/llms.txt +6 -1
- package/package.json +1 -1
package/llms.txt
CHANGED
|
@@ -1909,6 +1909,11 @@ for await (const doc of Policies.allDocuments()) { /* doc.id, doc.metadata, doc.
|
|
|
1909
1909
|
// introspection — what is in the corpus, and how one document was split
|
|
1910
1910
|
const { chunkCount, pipeline } = await Policies.stats(); // counts + the config actually in effect
|
|
1911
1911
|
const chunks = await Policies.chunks(docs[0].id); // why a document does or doesn't match
|
|
1912
|
+
|
|
1913
|
+
// how many passages contain the words — exact, same filter grammar as search. Say
|
|
1914
|
+
// "N passages mention these words", never "N relevant results": no such total exists,
|
|
1915
|
+
// and search's hits are not this set (semantic hits need not contain the words).
|
|
1916
|
+
const { chunks: mentions } = await Policies.count({ contains: 'client secret rotation' });
|
|
1912
1917
|
```
|
|
1913
1918
|
|
|
1914
1919
|
`SearchHit`: `{ score, text, citation: { documentId, filename, pageNumber, chunkIndex, headingPath, boundingBox?, url } }`. `citation.url` is a stable on-domain link to the source document for a signed-in user — drop it in an `<a href>`. A document is a cousin of a file and shares its share verbs: for a public app or another origin, `search(q, { shareCitations: 3600 })` returns every `citation.url` as an absolute signed link that needs no session, and `Policies.shareUrl(hit.citation, { expiresIn })` signs one document on demand (default 24h). `(documentId, chunkIndex)` is a chunk's stable identity — key an eval set on that, not on `text`.
|
|
@@ -1925,7 +1930,7 @@ Search is deterministic for a fixed corpus and configuration — same query, sam
|
|
|
1925
1930
|
|
|
1926
1931
|
On dedicated capacity `search()` throws `index_building` (HTTP 503) instead, while a bulk load runs and while the index is built after one: the index is built once at the end of a load rather than behind every write, and the message carries "N of M vectors indexed". Handle it like `index_warming` — the knowledge base is being built, never empty; say so and retry later.
|
|
1927
1932
|
|
|
1928
|
-
Other methods: `stats()`, `documents()` (the first thousand, or `documents({ ids })` to poll what `add` returned), `documentsPage({ cursor?, limit? })` and `allDocuments()` (walk a corpus of any size, oldest first — how an app builds its own timeline or index of a big source after ingest, in a background task), `chunks(documentId, {vectors?})`, `remove(documentId)`, `removeWhere(selector)`, `ensure(name?)` (rarely needed — `add` and `search` create-on-reference), and `DataSource.contentHash(bytes)` to check for an existing document before adding.
|
|
1933
|
+
Other methods: `stats()`, `documents()` (the first thousand, or `documents({ ids })` to poll what `add` returned), `documentsPage({ cursor?, limit?, order? })` (one page; `order: "newest"` is what just arrived) and `allDocuments()` (walk a corpus of any size, oldest first — how an app builds its own timeline or index of a big source after ingest, in a background task), `chunks(documentId, {vectors?})`, `remove(documentId)`, `removeWhere(selector)`, `ensure(name?)` (rarely needed — `add` and `search` create-on-reference), and `DataSource.contentHash(bytes)` to check for an existing document before adding.
|
|
1929
1934
|
|
|
1930
1935
|
`removeWhere({ metadata?, filename?, documentIds?, externalIdPrefix? })` removes every matching document (vectors, row and bytes) in pages of a thousand and returns `{ deleted, remaining }`. Chunk-level filter fields and an empty selector are refused; deleting a whole source is an owner operation (`remy-admin datasources delete`), not something app code does.
|
|
1931
1936
|
|