feat(config,recall): people recall block in the envelope, reply log in мета/бобер/реплики
This commit is contained in:
@@ -45,6 +45,7 @@ from policy import (
|
||||
skill_tracker,
|
||||
vault_zones,
|
||||
)
|
||||
from recall import Recall, ReplyLog
|
||||
|
||||
TZ = "Europe/Warsaw"
|
||||
VAULT = Path("/vault")
|
||||
@@ -57,6 +58,10 @@ SKILLS = BEAVER / "скиллы"
|
||||
DAYS = BEAVER / "дни"
|
||||
DIGESTS = BEAVER / "выжимки"
|
||||
INDEX = BEAVER / "индекс.md"
|
||||
NOTES = BEAVER / "наблюдения"
|
||||
REPLIES = BEAVER / "реплики"
|
||||
PEOPLE = VAULT / "👤 люди"
|
||||
BOARDS = VAULT / "📆 доски"
|
||||
STATE = BEAVER / "состояние.md"
|
||||
STATE_MAX_LINES = 60
|
||||
# §4.5: ночное закрытие трогает только чаты с активностью после запуска.
|
||||
@@ -545,11 +550,30 @@ watch = VaultWatch(
|
||||
"📶 ресерчи/**",
|
||||
"мета/бобер/**",
|
||||
),
|
||||
ignore=("💬 чаты/**", "мета/**", "**/attachments/**", ".obsidian/**"),
|
||||
ignore=(
|
||||
"💬 чаты/**",
|
||||
"мета/**",
|
||||
"мета/бобер/реплики/**", # пишет сам gateway на каждое сообщение
|
||||
"**/attachments/**",
|
||||
".obsidian/**",
|
||||
),
|
||||
),
|
||||
tz=TZ,
|
||||
)
|
||||
|
||||
# §3.3: справка под сообщением - карточка и записки агента по упомянутым людям,
|
||||
# дни, где они встречались, раз в день сроки из досок; лог реплик Бобра -
|
||||
# единственное grep-абельное место для сказанного в телеге (§6.0 «спящее»).
|
||||
recall = Recall(
|
||||
vault=VAULT,
|
||||
people_dir=PEOPLE,
|
||||
notes_dir=NOTES,
|
||||
diary_dir=DIARY,
|
||||
boards_dir=BOARDS,
|
||||
tz=TZ,
|
||||
)
|
||||
replies = ReplyLog(REPLIES, tz=TZ)
|
||||
|
||||
|
||||
# §4.5 джобы. Хендлер только ставит работу в очередь и выходит.
|
||||
async def rotate(run: JobRun) -> None:
|
||||
@@ -781,6 +805,8 @@ gateway = Gateway(
|
||||
# счётчику Claude Code), считаем как он - вход последнего API-вызова.
|
||||
rotation=RotationPolicy(tz=TZ, max_context_tokens=500_000),
|
||||
watch=watch,
|
||||
recall=recall.block,
|
||||
user_sink=replies.write,
|
||||
budget=Budget(threshold=0.7),
|
||||
distiller=Distiller(agent="beaver-distiller", dir=DIGESTS, index=INDEX),
|
||||
tz=TZ,
|
||||
|
||||
Reference in New Issue
Block a user