Back to skills
SKILL.md
2567 Hackathon Mad Combos 55a31a4e
ASecurity> **Goal:** Implement high-impact features that MemU is missing, sourced from competitor analysis of 7 memory repos (memoripy, memlayer, ReMe, memX, memphora-sdk, MemOS, memor). ---
- 9 stars
- 0 votes
- 0 copies
- 0 views
- Added October 11, 2026
Works with
Security analysis
100/100npx -y skills add tools-only/X-Skills --skill 2567-hackathon_mad_combos_55a31a4e --agent claude-codeAre you the author of 2567 Hackathon Mad Combos 55a31a4e?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/tools-only-2567-hackathon-mad-combos-55a31a4e)# π₯π₯π₯ MAD COMBO OPTIONS FOR MEMU HACKATHON π₯π₯π₯
> **Goal:** Implement high-impact features that MemU is missing, sourced from competitor analysis of 7 memory repos (memoripy, memlayer, ReMe, memX, memphora-sdk, MemOS, memor).
---
## π COMPLETE FEATURE GAP ANALYSIS
### FEATURES MEMU IS MISSING (Deep Scan Results)
#### FROM MEMORIPY:
- β `access_counts[]` - Track how often each memory is accessed
- β `timestamps[]` - Track when memory was created/last accessed
- β `decay_factor` - Exponential time-based decay: `np.exp(-decay_rate * time_diff)`
- β `reinforcement_factor` - Log-scaled access boost: `np.log1p(access_count)`
- β `adjusted_similarity` - `similarity * decay_factor * reinforcement_factor`
- β Short-term β Long-term memory promotion (when `access_count > 10`)
- β `nx.Graph()` concept associations (NetworkX graph)
- β `spreading_activation()` - Spread activation through concept graph
- β `cluster_interactions()` - KMeans clustering for hierarchical memory
- β `semantic_memory` clusters - Retrieve from semantic memory clusters
#### FROM MEMLAYER:
- β `SalienceGate` - Filter what's worth saving vs noise
- β `SalienceMode.LOCAL` - Local ML model for salience
- β `SalienceMode.ONLINE` - OpenAI API for salience
- β `SalienceMode.LIGHTWEIGHT` - Keyword-based salience (no embeddings)
- β `SALIENT_PROTOTYPES` / `NON_SALIENT_PROTOTYPES` - Prototype sentences
- β `is_worth_saving()` - Determine if text should be saved
- β `CurationService` - Background memory decay/expiration
- β `_calculate_relevance()` - Score based on age, recency, attention
- β Auto-archive low-relevance memories
- β Auto-delete expired memories (`expiration_timestamp`)
- β `SchedulerService` - Background task scheduler
- β `get_due_tasks_for_user()` - Check for pending scheduled tasks
- β `ConsolidationService` - Background knowledge extraction
- β `analyze_and_extract_knowledge()` - Extract facts, entities, relationships
- β `NetworkXStorage` - Graph storage for entities/relationships
- β `add_entity()` / `add_relationship()` - Knowledge graph operations
- β `get_subgraph_context()` - Graph traversal for context
- β `find_matching_nodes()` - Fuzzy entity matching
- β `_find_canonical_entity()` - Entity deduplication
- β `_merge_entity_nodes()` - Merge duplicate entities
- β `importance_score` / `expiration_timestamp` metadata
- β `track_memory_access()` - Track when memories are accessed
- β Task reminders system (`add_task`, `get_pending_tasks`, `update_task_status`)
#### FROM REME:
- β `UpdateMemoryFreqOp` - Increment frequency counter on recall
- β `metadata["freq"]` - Frequency counter in metadata
- β `UpdateMemoryUtilityOp` - Increment utility score when useful
- β `metadata["utility"]` - Utility score in metadata
- β `DeleteMemoryOp` - Delete based on freq/utility thresholds
- β `utility/freq < threshold` pruning - Prune low-value memories
- β **MEMORY TYPES:**
- β `TaskMemory` - Task-related information
- β `PersonalMemory` - Personal info with `target` and `reflection_subject`
- β `ToolMemory` - Tool call execution history
- β `ToolCallResult` - Record tool execution results with hash deduplication
- β `MemoryDeduplicationOp` - Remove duplicate memories using embedding similarity
- β `WorkingMemory` operations:
- β `MessageCompressOp` - LLM-based compression for long conversations
- β `MessageCompactOp` - Compact verbose tool messages
- β `MessageOffloadOp` - Orchestrate compaction + compression
- β `WorkingSummaryMode.COMPACT/COMPRESS/AUTO`
- β `UpdateMemory` tool - Update/edit existing memories
- β `session_memory_id` tracking - Track memories per session
- β Tool memory statistics (`avg_token_cost`, `success_rate`, `avg_time_cost`, `avg_score`)
#### FROM MEMX:
- β `pubsub.py` - Real-time pub/sub system
- β `subscribe(key, websocket)` - WebSocket subscriptions
- β `publish(key, payload)` - Broadcast updates to subscribers
- β `set_value()` with timestamps - Last-write-wins with timestamps
- β Redis-backed shared memory - Multi-agent shared state
- β `register_schema()` / `validate_schema()` - JSON schema validation
#### FROM MEMOS (MemOS):
- β **Memory Scheduler System:**
- β `BaseScheduler` - Full task scheduling infrastructure
- β `SchedulerDispatcher` - Parallel task dispatch
- β `ScheduleTaskQueue` - Priority task queue
- β `TaskStatusTracker` - Track task status in Redis
- β `TaskPriorityLevel` - Priority levels for tasks
- β `MemoryMonitorItem` - Monitor memory with importance scores
- β `replace_working_memory()` - Replace working memory after reranking
- β `update_activation_memory()` - Update activation memory periodically
- β `transform_working_memories_to_monitors()` - Convert memories to monitors
- β `visibility` field - Public/private memory visibility
- β `confidence` score - Confidence level for memories
- β `status` field (activated/archived) - Memory activation status
- β `tags` field - Memory tagging system
- β `entities` extraction - Extract entities from memories
#### FROM MEMPHORA-SDK:
- β `store_shared()` - Store shared memory for groups
- β Multi-agent crew memory - Shared memory for agent crews
- β Per-agent namespaces - Isolated memory per agent
- β Framework integrations (AutoGen, CrewAI, LangChain, LlamaIndex)
---
---
## π COMBO 1: "INTELLIGENT MEMORY LIFECYCLE"
**Theme:** Memory that learns, ages, and self-curates like human memory
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Decay & Reinforcement | memoripy | 3 pts | LOW |
| Frequency & Utility Tracking | ReMe | 3 pts | LOW |
| Auto-Pruning Low-Value Memories | ReMe | 3 pts | LOW |
**Total: 9 pts | LOW-MEDIUM effort**
### Why it's MAD:
```
Memory accessed often β gets STRONGER (reinforcement)
Memory ignored β gets WEAKER (decay)
Memory with low utility/freq ratio β gets DELETED automatically
Result: Self-healing, self-optimizing memory that mimics human forgetting!
```
### The Pitch:
> "MemU now has HUMAN-LIKE memory - it remembers what matters and forgets what doesn't!"
### Technical Implementation:
```python
# Decay formula (from memoripy)
decay_factor = np.exp(-decay_rate * time_diff)
reinforcement_factor = np.log1p(access_count)
adjusted_similarity = similarity * decay_factor * reinforcement_factor
# Pruning logic (from ReMe)
if freq >= freq_threshold:
if utility / freq < utility_threshold:
delete_memory(memory_id)
```
---
## π COMBO 2: "SMART MEMORY GATE"
**Theme:** Don't save garbage, only save gold
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Salience Filtering | memlayer | 3-5 pts | MEDIUM |
| Decay & Reinforcement | memoripy | 3 pts | LOW |
| Background Curation Service | memlayer | 3 pts | MEDIUM |
**Total: 9-11 pts | MEDIUM effort**
### Why it's MAD:
```
INPUT: "Hello!" β BLOCKED (not salient)
INPUT: "My name is John, I work at Google" β SAVED (salient)
BACKGROUND: Old unused memories β AUTO-ARCHIVED
RETRIEVAL: Frequently accessed β BOOSTED
Result: Clean, high-quality memory that doesn't bloat!
```
### The Pitch:
> "MemU now has a BOUNCER - only important memories get in, garbage stays out!"
### Technical Implementation:
```python
# Salience Gate (from memlayer)
class SalienceGate:
SALIENT_PROTOTYPES = ["My name is...", "I work at...", "The deadline is..."]
NON_SALIENT_PROTOTYPES = ["Hello", "Thanks", "Okay", "Got it"]
def is_worth_saving(self, text: str) -> bool:
# Compare similarity to salient vs non-salient prototypes
salient_score = max_similarity(text, SALIENT_PROTOTYPES)
non_salient_score = max_similarity(text, NON_SALIENT_PROTOTYPES)
return salient_score > (non_salient_score + threshold)
```
---
## π COMBO 3: "KNOWLEDGE BRAIN"
**Theme:** Memory that understands relationships
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Knowledge Graph | memlayer | 5 pts | HIGH |
| Entity Extraction | memlayer | 3 pts | MEDIUM |
| Graph Traversal Retrieval | memlayer | 3 pts | MEDIUM |
**Total: 11 pts | HIGH effort**
### Why it's MAD:
```
INPUT: "John works at Google. Sarah is John's wife."
GRAPH:
John --[works_at]--> Google
John --[married_to]--> Sarah
QUERY: "Who is related to Google?"
RESULT: John (works there), Sarah (married to John who works there)
Result: Memory that REASONS about relationships!
```
### The Pitch:
> "MemU now has a BRAIN - it understands how things connect!"
### Technical Implementation:
```python
# Knowledge Graph (from memlayer)
import networkx as nx
class KnowledgeGraph:
def __init__(self):
self.graph = nx.Graph()
def add_entity(self, name: str, node_type: str):
self.graph.add_node(name, type=node_type)
def add_relationship(self, subject: str, predicate: str, obj: str):
self.graph.add_edge(subject, obj, relation=predicate)
def get_subgraph_context(self, entity: str, depth: int = 2):
# Traverse graph for related entities
return nx.ego_graph(self.graph, entity, radius=depth)
```
---
## π COMBO 4: "MEMORY EVOLUTION" β TOP PICK
**Theme:** Memory that evolves and improves itself
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Salience Gate (LIGHTWEIGHT mode) | memlayer | 3 pts | LOW |
| Decay & Reinforcement | memoripy | 3 pts | LOW |
| Frequency & Utility | ReMe | 3 pts | LOW |
| Auto-Pruning | ReMe | 3 pts | LOW |
**Total: 12 pts | LOW-MEDIUM effort**
### Why it's MAD:
```
STAGE 1: Salience Gate filters noise at INPUT
STAGE 2: Decay/Reinforcement adjusts scores at RETRIEVAL
STAGE 3: Frequency/Utility tracks VALUE over time
STAGE 4: Auto-Pruning DELETES low-value memories
Result: FULL LIFECYCLE MANAGEMENT - from birth to death!
```
### The Pitch:
> "MemU memories now have a LIFECYCLE - they're born, they grow, they age, they die!"
### Memory Lifecycle Diagram:
```
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β MEMORY LIFECYCLE β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β INPUT βββΊ [SALIENCE GATE] βββΊ SAVE or REJECT β
β β β
β βΌ β
β βββββββββββ β
β β MEMORY β βββ access_count, last_accessed β
β β ITEM β βββ freq, utility, salience_score β
β ββββββ¬βββββ β
β β β
β ββββββββββ΄βββββββββ β
β βΌ βΌ β
β [RETRIEVAL] [BACKGROUND] β
β β β β
β decay_factor auto_prune() β
β reinforcement if utility/freq < threshold β
β β β β
β βΌ βΌ β
β BOOSTED SCORE DELETE MEMORY β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
```
---
## π COMPARISON TABLE
| Combo | Points | Effort | WOW Factor | Complexity | Recommendation |
|-------|--------|--------|------------|------------|----------------|
| 1. Intelligent Lifecycle | 9 | LOW | ββββ | LOW | β
SAFE BET |
| 2. Smart Gate | 9-11 | MEDIUM | ββββ | MEDIUM | β
GOOD |
| 3. Knowledge Brain | 11 | HIGH | βββββ | HIGH | β οΈ RISKY |
| 4. Memory Evolution | 12 | LOW-MED | βββββ | MEDIUM | π **BEST COMBO** |
---
## π― RECOMMENDATION: COMBO 4 "MEMORY EVOLUTION"
### Why This Combo Wins:
1. **12 points** - highest point potential
2. **LOW-MEDIUM effort** - achievable in hackathon timeframe
3. **4 features that SYNERGIZE** - each builds on the other
4. **UNIQUE story** - "memory lifecycle" is a compelling narrative
5. **Easy to demo** - show memory being filtered, decaying, getting pruned
### Implementation Order:
```
Step 1: Add fields to MemoryItem model
- access_count: int = 0
- last_accessed: datetime
- freq: int = 0
- utility: int = 0
- salience_score: float = 0.0
Step 2: Implement lightweight salience gate (keyword-based, no ML)
- SALIENT_KEYWORDS list
- NON_SALIENT_KEYWORDS list
- is_worth_saving() function
Step 3: Implement decay-aware retrieval
- Modify cosine_topk() to apply decay formula
- Update access_count and last_accessed on retrieval
Step 4: Implement frequency/utility tracking
- Increment freq on every retrieval
- Increment utility when memory contributes to response
Step 5: Implement auto-pruning
- Background check for low utility/freq ratio
- Delete memories below threshold
```
### Files to Modify:
```
memU/src/memu/database/models.py # Add new fields
memU/src/memu/database/inmemory/vector.py # Decay-aware retrieval
memU/src/memu/app/memorize.py # Salience gate
memU/src/memu/app/retrieve.py # Frequency/utility tracking
memU/src/memu/app/service.py # Auto-pruning service
```
---
## π Reference Implementations
### From memoripy (Decay & Reinforcement):
- File: `prospects/memoripy/memoripy/memory_store.py`
- Key functions: `retrieve()`, `classify_memory()`
### From memlayer (Salience Gate):
- File: `prospects/memlayer/memlayer/ml_gate.py`
- Key class: `SalienceGate`
### From ReMe (Frequency & Utility):
- Files:
- `prospects/ReMe/reme_ai/vector_store/update_memory_freq_op.py`
- `prospects/ReMe/reme_ai/vector_store/update_memory_utility_op.py`
- `prospects/ReMe/reme_ai/vector_store/delete_memory_op.py`
---
## π Ready to Implement?
Choose your combo and let's build! π₯
## π UPDATED MAD COMBOS (After Deep Scan)
---
## π COMBO 1: "INTELLIGENT MEMORY LIFECYCLE"
**Theme:** Memory that learns, ages, and self-curates like human memory
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Decay & Reinforcement | memoripy | 3 pts | LOW |
| Frequency & Utility Tracking | ReMe | 3 pts | LOW |
| Auto-Pruning Low-Value Memories | ReMe | 3 pts | LOW |
**Total: 9 pts | LOW-MEDIUM effort**
### Why it's MAD:
```
Memory accessed often β gets STRONGER (reinforcement)
Memory ignored β gets WEAKER (decay)
Memory with low utility/freq ratio β gets DELETED automatically
Result: Self-healing, self-optimizing memory that mimics human forgetting!
```
### The Pitch:
> "MemU now has HUMAN-LIKE memory - it remembers what matters and forgets what doesn't!"
---
## π COMBO 2: "SMART MEMORY GATE"
**Theme:** Don't save garbage, only save gold
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Salience Filtering | memlayer | 3-5 pts | MEDIUM |
| Decay & Reinforcement | memoripy | 3 pts | LOW |
| Background Curation Service | memlayer | 3 pts | MEDIUM |
**Total: 9-11 pts | MEDIUM effort**
### Why it's MAD:
```
INPUT: "Hello!" β BLOCKED (not salient)
INPUT: "My name is John, I work at Google" β SAVED (salient)
BACKGROUND: Old unused memories β AUTO-ARCHIVED
RETRIEVAL: Frequently accessed β BOOSTED
Result: Clean, high-quality memory that doesn't bloat!
```
### The Pitch:
> "MemU now has a BOUNCER - only important memories get in, garbage stays out!"
---
## π COMBO 3: "KNOWLEDGE BRAIN"
**Theme:** Memory that understands relationships
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Knowledge Graph (NetworkX) | memlayer | 5 pts | HIGH |
| Entity Extraction & Deduplication | memlayer | 3 pts | MEDIUM |
| Graph Traversal Retrieval | memlayer | 3 pts | MEDIUM |
**Total: 11 pts | HIGH effort**
### Why it's MAD:
```
INPUT: "John works at Google. Sarah is John's wife."
GRAPH:
John --[works_at]--> Google
John --[married_to]--> Sarah
QUERY: "Who is related to Google?"
RESULT: John (works there), Sarah (married to John who works there)
Result: Memory that REASONS about relationships!
```
### The Pitch:
> "MemU now has a BRAIN - it understands how things connect!"
---
## π COMBO 4: "MEMORY EVOLUTION" β TOP PICK
**Theme:** Memory that evolves and improves itself
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| Salience Gate (LIGHTWEIGHT mode) | memlayer | 3 pts | LOW |
| Decay & Reinforcement | memoripy | 3 pts | LOW |
| Frequency & Utility | ReMe | 3 pts | LOW |
| Auto-Pruning | ReMe | 3 pts | LOW |
**Total: 12 pts | LOW-MEDIUM effort**
### Why it's MAD:
```
STAGE 1: Salience Gate filters noise at INPUT
STAGE 2: Decay/Reinforcement adjusts scores at RETRIEVAL
STAGE 3: Frequency/Utility tracks VALUE over time
STAGE 4: Auto-Pruning DELETES low-value memories
Result: FULL LIFECYCLE MANAGEMENT - from birth to death!
```
### The Pitch:
> "MemU memories now have a LIFECYCLE - they're born, they grow, they age, they die!"
---
## π COMBO 5: "MEMORY TYPES" (NEW!)
**Theme:** Different memory types for different purposes
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| TaskMemory type | ReMe | 3 pts | MEDIUM |
| PersonalMemory type | ReMe | 3 pts | MEDIUM |
| ToolMemory type | ReMe | 5 pts | HIGH |
| Memory Deduplication | ReMe | 3 pts | MEDIUM |
**Total: 14 pts | MEDIUM-HIGH effort**
### Why it's MAD:
```
TaskMemory: "Complete the report by Friday"
- when_to_use: "When user asks about deadlines"
- content: "Report due Friday"
PersonalMemory: "User prefers dark mode"
- target: "user_preferences"
- reflection_subject: "ui_settings"
ToolMemory: "file_reader tool usage history"
- tool_call_results: [...]
- statistics: {avg_token_cost, success_rate, avg_score}
Result: Specialized memory for specialized tasks!
```
### The Pitch:
> "MemU now has SPECIALIZED MEMORY - task memory, personal memory, tool memory!"
---
## π COMBO 6: "WORKING MEMORY COMPRESSION" (NEW!)
**Theme:** Handle long conversations without losing context
| Component | Source | Points | Effort |
|-----------|--------|--------|--------|
| MessageCompressOp | ReMe | 3 pts | MEDIUM |
| MessageCompactOp | ReMe | 3 pts | MEDIUM |
| MessageOffloadOp | ReMe | 3 pts | MEDIUM |
**Total: 9 pts | MEDIUM effort**
### Why it's MAD:
```
LONG CONVERSATION (50k tokens) β COMPRESS β STATE SNAPSHOT (5k tokens)
Modes:
- COMPACT: Store full content externally, keep short previews
- COMPRESS: LLM-based compression to generate dense summaries
- AUTO: Compact first, then compress if needed
Result: Handle infinite conversations without context overflow!
```
### The Pitch:
> "MemU now handles INFINITE conversations - compress, compact, never forget!"
---
## π UPDATED COMPARISON TABLE
| Combo | Points | Effort | WOW Factor | Complexity | Recommendation |
|-------|--------|--------|------------|------------|----------------|
| 1. Intelligent Lifecycle | 9 | LOW | ββββ | LOW | β
SAFE BET |
| 2. Smart Gate | 9-11 | MEDIUM | ββββ | MEDIUM | β
GOOD |
| 3. Knowledge Brain | 11 | HIGH | βββββ | HIGH | β οΈ RISKY |
| 4. Memory Evolution | 12 | LOW-MED | βββββ | MEDIUM | π **BEST COMBO** |
| 5. Memory Types | 14 | MED-HIGH | βββββ | HIGH | π₯ HIGH POINTS |
| 6. Working Memory | 9 | MEDIUM | ββββ | MEDIUM | β
GOOD |
---
## π― FINAL RECOMMENDATION
### For MAX POINTS with REASONABLE EFFORT: **COMBO 4 "MEMORY EVOLUTION"**
**Why?**
1. **12 points** - highest point potential for effort
2. **LOW-MEDIUM effort** - achievable in hackathon timeframe
3. **4 features that SYNERGIZE** - each builds on the other
4. **UNIQUE story** - "memory lifecycle" is a compelling narrative
5. **Easy to demo** - show memory being filtered, decaying, getting pruned
### Implementation Order:
```
Step 1: Add fields to MemoryItem model
- access_count: int = 0
- last_accessed: datetime
- freq: int = 0
- utility: int = 0
- salience_score: float = 0.0
Step 2: Implement lightweight salience gate (keyword-based, no ML)
- SALIENT_KEYWORDS list
- NON_SALIENT_KEYWORDS list
- is_worth_saving() function
Step 3: Implement decay-aware retrieval
- Modify cosine_topk() to apply decay formula
- Update access_count and last_accessed on retrieval
Step 4: Implement frequency/utility tracking
- Increment freq on every retrieval
- Increment utility when memory contributes to response
Step 5: Implement auto-pruning
- Background check for low utility/freq ratio
- Delete memories below threshold
```
### Files to Modify:
```
memU/src/memu/database/models.py # Add new fields
memU/src/memu/database/inmemory/vector.py # Decay-aware retrieval
memU/src/memu/app/memorize.py # Salience gate
memU/src/memu/app/retrieve.py # Frequency/utility tracking
memU/src/memu/app/service.py # Auto-pruning service
```
---
## π Reference Implementations
### From memoripy (Decay & Reinforcement):
- File: `prospects/memoripy/memoripy/memory_store.py`
- Key functions: `retrieve()`, `classify_memory()`
### From memlayer (Salience Gate + Knowledge Graph):
- File: `prospects/memlayer/memlayer/ml_gate.py` - SalienceGate
- File: `prospects/memlayer/memlayer/storage/networkx.py` - Knowledge Graph
- File: `prospects/memlayer/memlayer/services.py` - CurationService
### From ReMe (Frequency & Utility + Memory Types):
- File: `prospects/ReMe/reme_ai/vector_store/update_memory_freq_op.py`
- File: `prospects/ReMe/reme_ai/vector_store/update_memory_utility_op.py`
- File: `prospects/ReMe/reme_ai/vector_store/delete_memory_op.py`
- File: `prospects/ReMe/reme_ai/schema/memory.py` - Memory types
- File: `prospects/ReMe/reme_ai/summary/task/memory_deduplication_op.py`
- File: `prospects/ReMe/reme_ai/summary/working/` - Working memory ops
### From MemOS (Scheduler):
- File: `prospects/MemOS/src/memos/mem_scheduler/base_scheduler.py`
---
## π Ready to Implement?
Choose your combo and let's build! π₯
Attribution
Comments
Loading commentsβ¦
Newsletter
Get the weekly list of safe new skills, and the ones we pulled.