forked from Rockachopa/Timmy-time-dashboard
This commit replaces the previous memory_layers.py with a proper three-tier memory system as specified by the user: ## Tier 1 — Hot Memory (MEMORY.md) - Single flat file always loaded into system context - Contains: current status, standing rules, agent roster, key decisions - ~300 lines max, pruned monthly - Managed by HotMemory class ## Tier 2 — Structured Vault (memory/) - Directory with three namespaces: • self/ — identity.md, user_profile.md, methodology.md • notes/ — session logs, AARs, research • aar/ — post-task retrospectives - Markdown format, Obsidian-compatible - Append-only, date-stamped - Managed by VaultMemory class ## Handoff Protocol - last-session-handoff.md written at session end - Contains: summary, key decisions, open items, next steps - Auto-loaded at next session start - Maintains continuity across resets ## Implementation ### New Files: - src/timmy/memory_system.py — Core memory system - MEMORY.md — Hot memory template - memory/self/*.md — Identity, user profile, methodology ### Modified: - src/timmy/agent.py — Integrated with memory system - create_timmy() injects memory context - TimmyWithMemory class with automatic fact extraction - tests/test_agent.py — Updated for memory context ## Key Principles - Hot memory = small and curated - Vault = append-only, never delete - Handoffs = continuity mechanism - Flat files = human-readable, portable ## Usage All 973 tests pass.
85 lines
1.9 KiB
Markdown
85 lines
1.9 KiB
Markdown
# Timmy Hot Memory
|
|
|
|
> Working RAM — always loaded, ~300 lines max, pruned monthly
|
|
> Last updated: 2026-02-25
|
|
|
|
---
|
|
|
|
## Current Status
|
|
|
|
**Agent State:** Operational
|
|
**Mode:** Development
|
|
**Active Tasks:** 0
|
|
**Pending Decisions:** None
|
|
|
|
---
|
|
|
|
## Standing Rules
|
|
|
|
1. **Sovereignty First** — No cloud dependencies, no data exfiltration
|
|
2. **Local-Only Inference** — Ollama on localhost, Apple Silicon optimized
|
|
3. **Privacy by Design** — Telemetry disabled, secrets in .env only
|
|
4. **Tool Minimalism** — Use tools only when necessary, prefer direct answers
|
|
5. **Memory Discipline** — Write handoffs at session end, prune monthly
|
|
|
|
---
|
|
|
|
## Agent Roster
|
|
|
|
| Agent | Role | Status | Capabilities |
|
|
|-------|------|--------|--------------|
|
|
| Timmy | Core | Active | chat, reasoning, planning |
|
|
| Echo | Research | Standby | web_search, file_read |
|
|
| Forge | Code | Standby | shell, python, git |
|
|
| Seer | Data | Standby | python, analysis |
|
|
| Helm | DevOps | Standby | shell, deployment |
|
|
|
|
---
|
|
|
|
## User Profile
|
|
|
|
**Name:** TestUser
|
|
|
|
|
|
## Key Decisions
|
|
|
|
- **2026-02-25:** Implemented 3-tier memory architecture
|
|
- **2026-02-25:** Disabled telemetry by default (sovereign AI)
|
|
- **2026-02-25:** Fixed Agno Toolkit API compatibility
|
|
|
|
---
|
|
|
|
## Pending Actions
|
|
|
|
- [ ] Learn user's name and preferences
|
|
- [ ] Populate user profile in self/identity.md
|
|
- [ ] First AAR after meaningful task completion
|
|
|
|
---
|
|
|
|
## Current Session
|
|
|
|
**Session ID:** (active)
|
|
**Started:** 2026-02-25
|
|
**Context:** Memory system initialization
|
|
**Last Handoff:** (none yet)
|
|
|
|
---
|
|
|
|
## Quick Reference
|
|
|
|
**Available Tools:**
|
|
- `web_search` — Current events only
|
|
- `read_file` / `write_file` — Explicit request only
|
|
- `python` — Calculations, code execution
|
|
- `shell` — System commands (caution)
|
|
|
|
**Memory Locations:**
|
|
- Hot: `MEMORY.md` (this file)
|
|
- Vault: `memory/`
|
|
- Handoff: `memory/notes/last-session-handoff.md`
|
|
|
|
---
|
|
|
|
*Prune date: 2026-03-25*
|