bx-ai-memory

Create and manage BoxLang AI memories with tenant-aware scoping across multiple memory types.

Updated Apr 10, 2026
One-click install
npx skills add https://github.com/ortus-boxlang/skills --skill bx-ai-memory
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: bx-ai-memory
Source: https://github.com/ortus-boxlang/skills/tree/main/boxlang-modules/bx-ai/bx-ai-memory
Command: npx skills add https://github.com/ortus-boxlang/skills --skill bx-ai-memory

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

BoxLang AI agents often need to remember context across turns, multiple users, and conversations. This skill provides typed memory abstractions (windowed, summary, session, file, cache, JDBC, vector) with multi-tenant isolation (userId + conversationId) and easy integration with agents and pipelines. It guides choosing the right memory type and how to apply it across scenarios.

Core Features & Use Cases

  • aiMemory() supports multiple memory types (windowed, summary, session, file, cache, JDBC, chroma/pinecone/weaviate, in-memory-vector)
  • Multi-tenant isolation using userId and conversationId to keep data segregated
  • Vector memory options for semantic search and retrieval in RAG scenarios
  • Easy integration with BoxLang agents and pipelines

Quick Start

Create a windowed memory with maxMessages 20 for userId 'user-alice' and attach it to an agent.

Frequently Asked Questions about bx-ai-memory

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add persistent memory to BoxLang AI agents?

Add persistent memory to BoxLang AI agents using the aiMemory() function. It supports typed memory abstractions like windowed, summary, and session, with persistence options including file, cache, JDBC databases, or vector stores.

What is the best way to isolate AI conversation memory per user in multi-tenant agents?

Isolate AI conversation memory in multi-tenant agents by passing userId and conversationId parameters to the aiMemory() function. This tenant-aware scoping keeps per-user and per-conversation data segregated across shared pipelines.

Can I use vector memory for semantic search in BoxLang RAG scenarios?

You can use vector memory for semantic search in BoxLang RAG scenarios. The aiMemory() function supports vector stores like Chroma, Pinecone, Weaviate, and in-memory vector options for retrieval and persistence.

What memory types does BoxLang support for managing AI conversation context?

BoxLang supports multiple memory types for managing AI conversation context: windowed, summary, session, file, cache, JDBC, and vector. Each type offers distinct persistence and retrieval behaviors for different agent requirements.

How do I configure a windowed memory with a specific message limit in BoxLang?

Configure a windowed memory in BoxLang by calling aiMemory() with the windowed type and setting a maxMessages limit. Attach the configured memory object to your agent to maintain a rolling context window.

When should I use database persistence versus in-memory storage for AI agent context?

Use database persistence, like JDBC or vector stores, for durable cross-session AI agent context, and in-memory storage for temporary, fast-access data. The aiMemory() config parameter lets you select the appropriate persistence option per memory type.