# Storage

The `storage` module provides utility functions for saving and retrieving document records between sessions. Records are scoped to the agent and persist across sessions.

## Import

```typescript
import { toolsLibrary } from '@minded-ai/mindedjs';

const { saveRecord, getRecords, deleteRecord } = toolsLibrary.storage;
```

## Basic Operations

**Save a record:**

```typescript
const recordId = await saveRecord(state.sessionId, {
  invoiceId: 'INV-12345',
  status: 'processed',
  amount: 1500.00,
}, 3600); // Optional: TTL in seconds
```

**Retrieve records:**

```typescript
// Simple equality
const records = await getRecords({ status: 'processed' });
```

**Delete a record:**

```typescript
await deleteRecord('record-id-123');
```

## Record Structure

* `id`: Unique identifier
* `agentId`: Automatically set to the agent ID
* `sessionId`: Session where the record was created
* `data`: Your document data
* `createdAt`: Creation timestamp
* `updatedAt`: Last update timestamp

## Notes

* Records are agent-scoped (only accessible by the same agent)
* Filters use MongoDB query syntax and apply to the `data` field (no `data.` prefix needed)
* All operations require a valid `sessionId`
* Records persist across sessions
