J.A.R.V.I.S-rust/resources/commands/memory_admin/command.toml
Bossiara13 8f46bd735a
Some checks are pending
Rust CI / cargo test (jarvis-core) (push) Waiting to run
Rust CI / cargo clippy (push) Waiting to run
Rust CI / cargo check (workspace) (push) Waiting to run
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

66 lines
1.5 KiB
TOML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 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",
]