J.A.R.V.I.S-rust/resources/commands/memory_admin/command.toml

67 lines
1.5 KiB
TOML
Raw Permalink Normal View History

feat: Wave 6 — focus mode, cooking timer, memory admin Focus mode (`focus/`): - focus.start ("режим фокуса" / "focus mode"): three side-effects in one voice trigger: 1. switch profile to "work" (silences fun/banter) 2. enable Windows Focus Assist via registry tweak (QuietHours key) 3. schedule a stretch reminder in 50 minutes through the persistent scheduler — so it survives daemon restart - focus.stop: undoes all three, including cancelling pending stretch reminders by matching their scheduler name. Best-effort: any one failing doesn't block the others. Cooking timer (`cooking/`): - Recognises 16+ dish names (чай, кофе, омлет, яйца, макароны, паста, рис, гречка, картошка, курица, пицца, etc.) and starts a preset- duration scheduler reminder ("Сэр, чай готов."). - Single Lua script, table-driven — adding a recipe is one line. - EN phrases for the same dishes ("boiling pasta", "frying eggs", ...). Memory admin (`memory_admin/`): - memory_admin.count → speak fact count with full RU pluralisation. - memory_admin.list → speak 5 most-recent + toast the rest. - memory_admin.wipe → ONLY fires on "точно забудь все" prefix (not bare "забудь все") so we can't disaster-wipe by accident. - Adds `long_term_memory::clear_all() -> usize` returning removed count + Lua binding `jarvis.memory.clear_all()`. - One extra unit test for `clear_all`. Tests: 139 → 140 (+1). Pack count: 92 → 95.
2026-05-16 14:39:55 +03:00
# Memory admin — voice-driven housekeeping for the long-term memory.
# - "сколько фактов помнишь" → speak count
# - "выгрузи список фактов" → notify with first ~10 keys
# - "забудь все" → wipe everything (with safety prefix "точно забудь все")
[[commands]]
id = "memory_admin.count"
type = "lua"
script = "count.lua"
sandbox = "minimal"
timeout = 2000
[commands.phrases]
ru = [
"сколько фактов помнишь",
"сколько ты помнишь",
"сколько у тебя в памяти",
"размер памяти",
]
en = [
"how many facts do you remember",
"how big is your memory",
"memory size",
]
[[commands]]
id = "memory_admin.list"
type = "lua"
script = "list.lua"
sandbox = "minimal"
timeout = 2000
[commands.phrases]
ru = [
"выгрузи список фактов",
"покажи что помнишь",
"перечисли что помнишь",
"что у тебя в памяти",
]
en = [
"list what you remember",
"show me your memory",
"what's in memory",
]
[[commands]]
id = "memory_admin.wipe"
type = "lua"
script = "wipe.lua"
sandbox = "minimal"
timeout = 2000
[commands.phrases]
ru = [
"точно забудь все",
"точно забудь всё",
"сотри всю память",
"wipe memory",
]
en = [
"wipe all memory",
"really forget everything",
"clear all memory",
]