@pyxmate/memory 0.2.11-beta → 0.2.13-beta

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.
@@ -94,9 +94,12 @@ var MemoryClient = class {
94
94
  return this.fetchApi(`/api/memory/entries${qs ? `?${qs}` : ""}`);
95
95
  }
96
96
  // --- Additional endpoints ---
97
- async ingestFile(file) {
97
+ async ingestFile(file, options) {
98
98
  const formData = new FormData();
99
99
  formData.append("file", file);
100
+ if (options?.description) {
101
+ formData.append("description", options.description);
102
+ }
100
103
  const res = await fetch(`${this.baseUrl}/api/memory/ingest/file`, {
101
104
  method: "POST",
102
105
  body: formData,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  MemoryClient
3
- } from "./chunk-265LTIGS.mjs";
3
+ } from "./chunk-FEOGTCSW.mjs";
4
4
 
5
5
  // ../dashboard/src/aggregations/consolidation-analytics.ts
6
6
  function analyzeConsolidationLog(entries) {
@@ -11,8 +11,8 @@ import {
11
11
  toGraphologyFormat,
12
12
  transformGraphData,
13
13
  unreachableHealth
14
- } from "./chunk-TUTB4CH5.mjs";
15
- import "./chunk-265LTIGS.mjs";
14
+ } from "./chunk-L62JXWDM.mjs";
15
+ import "./chunk-FEOGTCSW.mjs";
16
16
  export {
17
17
  DashboardClient,
18
18
  Poller,
package/dist/index.d.ts CHANGED
@@ -95,7 +95,9 @@ declare class MemoryClient implements ExtendedMemoryInterface {
95
95
  stats(): Promise<MemoryStats$1>;
96
96
  shutdown(): Promise<void>;
97
97
  list(params?: MemoryListParams): Promise<MemoryListResult>;
98
- ingestFile(file: File): Promise<IngestionResult>;
98
+ ingestFile(file: File, options?: {
99
+ description?: string;
100
+ }): Promise<IngestionResult>;
99
101
  /** @deprecated Use {@link list} instead. Kept for backwards compatibility. */
100
102
  listEntries(params?: {
101
103
  page?: number;
@@ -305,6 +307,8 @@ interface MemoryStats {
305
307
  recentAccessCount: number;
306
308
  graphNodeCount?: number;
307
309
  graphEdgeCount?: number;
310
+ /** Name of the active graph store ('neo4j', 'sqlite', or undefined if none). */
311
+ graphStore?: string;
308
312
  /** Whether the memory service is connected. False when using DisabledMemory. */
309
313
  connected?: boolean;
310
314
  }
package/dist/index.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  MemoryClient,
3
3
  MemoryServerError
4
- } from "./chunk-265LTIGS.mjs";
4
+ } from "./chunk-FEOGTCSW.mjs";
5
5
 
6
6
  // ../shared/src/constants/defaults.ts
7
7
  var DEFAULTS = {
package/dist/react.mjs CHANGED
@@ -11,8 +11,8 @@ import {
11
11
  toGraphologyFormat,
12
12
  transformGraphData,
13
13
  unreachableHealth
14
- } from "./chunk-TUTB4CH5.mjs";
15
- import "./chunk-265LTIGS.mjs";
14
+ } from "./chunk-L62JXWDM.mjs";
15
+ import "./chunk-FEOGTCSW.mjs";
16
16
 
17
17
  // ../dashboard/src/hooks/use-consolidation-log.ts
18
18
  import { useCallback as useCallback2, useMemo } from "react";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pyxmate/memory",
3
- "version": "0.2.11-beta",
3
+ "version": "0.2.13-beta",
4
4
  "type": "module",
5
5
  "description": "SDK for pyx-memory — Memory as a Service for AI agents",
6
6
  "license": "MIT",
@@ -16,7 +16,7 @@
16
16
  ],
17
17
  "repository": {
18
18
  "type": "git",
19
- "url": "https://github.com/fysoul17/pyx-memory.git",
19
+ "url": "https://github.com/pyx-corp/pyx-memory-v1.git",
20
20
  "directory": "packages/sdk"
21
21
  },
22
22
  "exports": {
@@ -3,12 +3,16 @@ name: pyx-memory
3
3
  description: >
4
4
  Persistent memory system for AI agents. Use this skill to store and retrieve
5
5
  knowledge across conversations via pyx-memory. Triggers whenever you need to
6
- remember something, recall prior context, store a decision or bug fix, or
7
- search for what was discussed before. Also use when integrating the pyx-memory
8
- SDK into code, working with MemoryClient, or using the HTTP API.
6
+ remember something, recall prior context, store a decision or bug fix, ingest
7
+ files or images, or search for what was discussed before. Also use when
8
+ integrating the pyx-memory SDK into code, working with MemoryClient, or using
9
+ the HTTP API.
9
10
  Triggers on: 'remember', 'recall', 'store memory', 'search memory',
11
+ 'ingest file', 'store this image', 'remember this document',
10
12
  'what did we decide', 'pyx-memory', 'memory', 'MemoryClient',
11
13
  'integrate memory', 'memory consolidation'.
14
+ allowed-tools: Read, Grep, Glob, Bash(curl *)
15
+ argument-hint: "[store|search|ingest] <content or query>"
12
16
  ---
13
17
 
14
18
  # pyx-memory — Agent Memory System
@@ -56,6 +60,27 @@ curl -s "{{ENDPOINT}}/api/memory/search?q=QUERY&limit=5" \
56
60
  -H "Authorization: Bearer {{API_KEY}}"
57
61
  ```
58
62
 
63
+ ## Ingest files & images: when a file is worth remembering
64
+
65
+ Upload files directly when the content is worth persisting — diagrams, screenshots, documents, data files.
66
+
67
+ - **User shares a document or image** and says "remember this" or "store this" → ingest it
68
+ - **A screenshot captures important context** (error screen, architecture diagram, UI state) → ingest with a description
69
+ - **A document contains reference material** (spec, config, report) → ingest it
70
+
71
+ ```bash
72
+ curl -s -X POST {{ENDPOINT}}/api/memory/ingest/file \
73
+ -H "Authorization: Bearer {{API_KEY}}" \
74
+ -F "file=@path/to/file" \
75
+ -F "description=What this file contains or shows"
76
+ ```
77
+
78
+ Supported formats: txt, md, csv, pdf, docx, json, jsonl, html, png, jpg, jpeg, webp, gif, bmp, tiff, svg (50MB limit).
79
+
80
+ **Images require a `description`** — this is how the content gets embedded and becomes searchable. Without it, the image is stored but not findable. Use your vision capabilities to generate the description when the user doesn't provide one.
81
+
82
+ **Documents don't need a `description`** — text content is extracted and chunked automatically.
83
+
59
84
  ## Rules
60
85
 
61
86
  - Always include `topic` and `project` in metadata
@@ -23,7 +23,7 @@ const client = new MemoryClient('http://localhost:7822', process.env.MEMORY_API_
23
23
  | GET | `/health` | Public health check (status only — no internals exposed) |
24
24
  | GET | `/admin/health` | Admin health check (version, uptime, embedding provider, memory stats) |
25
25
  | POST | `/api/memory/ingest` | Store a memory (JSON: `{ content, type, metadata, agentId?, sessionId?, targets?, entities?, relationships?, importance?, source?, eventTime?, id?, parentId?, ingestTime? }`) |
26
- | POST | `/api/memory/ingest/file` | Upload file (multipart, 50MB limit) |
26
+ | POST | `/api/memory/ingest/file` | Upload file (multipart, 50MB limit). Supports optional `description` field for agent-provided image descriptions (via LLM vision). Formats: txt, md, csv, pdf, docx, json, jsonl, html, png, jpg, jpeg, webp, gif, bmp, tiff, svg |
27
27
  | GET | `/api/memory/search?query=...&strategy=...&limit=...` | Search memories — **does NOT support** filters, enableHyDE, enableRerank |
28
28
  | GET | `/api/memory/stats` | Memory statistics |
29
29
  | GET | `/api/memory/entries?page=...&limit=...` | List entries (paginated) |