Documentation
Continuity Engine

Pinning & Memory

Learn how to pin important messages and manage persistent user memory to ensure the AI never forgets what matters.

Message Pinning

Pinning lets you mark specific messages as critically important. Pinned messages are never compressed or summarized - their content is preserved verbatim in every AI request.

How to Pin a Message

1

Hover Over a Message

Move your cursor over any assistant or user message in the conversation. You'll see action icons appear on the right side.

2

Click the Pin Icon

Click the pin icon (📌) to pin the message. A small orange dot will appear next to the message header indicating it's pinned.

3

View in Summary Drawer

Click the context indicator to open the Summary Drawer. Your pinned messages appear in the "Pinned" section at the bottom.

Best Practices for Pinning

  • Pin key decisions that affect the rest of the conversation
  • Pin important code snippets or configurations
  • Pin specific requirements that must not be forgotten
  • Avoid over-pinning - too many pins reduce their effectiveness

Unpinning Messages

To unpin a message, you have two options:

From the Message

Hover over the pinned message and click the pin icon again to toggle it off.

From the Summary Drawer

Open the Summary Drawer, find the pinned item, and click the X button to remove it.

Pin Categories

Pinned items can be categorized to help organize context:

CategoryUse For
decisionChoices made during the conversation
requirementSpecifications and constraints
referenceCode, files, URLs, or other references
otherGeneral important information

Excluding Messages

Sometimes you want to exclude a message from context entirely. This is useful for:

  • Off-topic discussions that don't need to be remembered
  • Sensitive information you don't want in the summary
  • Failed attempts or incorrect responses
  • Casual chit-chat that adds noise to the context

To exclude a message, hover over it and click the eye-off icon (👁️‍🗨️). Excluded messages won't be included in the rolling summary extraction.

Exclusion Timing

Excluding a message only prevents it from being included in future compactions. If the message was already processed into the rolling summary, that information will remain until the next deep compaction.

User Memory

While pinned memory is per-conversation, User Memory persists across all your conversations. It's perfect for information the AI should always know about you.

Preferences

How you like things done - coding style, communication tone, format preferences.

Facts

Information about you, your project, tech stack, or company.

Constraints

Rules to always follow - security requirements, forbidden patterns.

Definitions

Domain-specific terms and their meanings in your context.

Using the Memory Manager

Access the Memory Manager from your workspace settings. It provides a tabbed interface for managing each memory type:

1

Add a Memory Item

Click "Add Memory" in any tab. Enter a key (a short identifier like coding_style) and the content(the actual information to remember).

2

Edit Existing Items

Hover over any memory item and click the edit icon to modify its content. Press Enter to save or Escape to cancel.

3

Delete Items

Click the trash icon to remove a memory item. This action is immediate and cannot be undone.

4

Search & Filter

Use the search box to filter memories by key or content. The search works across all tabs simultaneously.

Example User Memories

Here are some examples of effective user memories:

Preference Examplesyaml
key: coding_style
content: I prefer functional programming patterns with TypeScript.
         Use arrow functions and avoid classes when possible.

key: response_format
content: Keep responses concise. Use bullet points for lists.
         Include code examples when explaining concepts.
Fact Examplesyaml
key: project_stack
content: Building a Next.js 14 app with TypeScript, Tailwind CSS,
         Drizzle ORM, and PostgreSQL. Using shadcn/ui components.

key: team_context
content: Working on a B2B SaaS product for enterprise customers.
         Must maintain SOC 2 compliance.
Constraint Examplesyaml
key: security_rules
content: Never store passwords in plain text. Always use bcrypt
         with salt rounds >= 12. Sanitize all user inputs.

key: code_patterns
content: Avoid using 'any' type in TypeScript. All API routes
         must have proper error handling with try/catch.
Definition Examplesyaml
key: user_definition
content: A "user" in our system is a registered customer with
         a verified email and active subscription.

key: workspace_definition
content: A "workspace" is a shared space where multiple team
         members collaborate. Each workspace has its own billing.

Memory vs Pinning: When to Use Which

AspectPinningUser Memory
ScopeSingle conversationAll conversations
Content SourceExisting messageManually written
Best ForSpecific decisions, code snippetsPreferences, persistent facts
ManagementInline or Summary DrawerMemory Manager
LifespanUntil unpinnedUntil deleted

Recommendation

Use pinning for context-specific important messages during a conversation. Use user memory for information you want the AI to know in every conversation, like your coding preferences or project constraints.