meeting_memory/prompts.py

29 lines
819 B
Python
Raw Normal View History

2026-06-24 07:09:26 +00:00
from __future__ import annotations
from typing import Iterable
from providers.prompt_loader import load_prompt
from skills import SkillStore
from tools.registry import ToolRegistry
DEFAULT_SYSTEM_PROMPT = load_prompt("base")["system"]
def build_system_prompt(
*,
skill_store: SkillStore,
active_skills: Iterable[str],
tool_registry: ToolRegistry,
workspace: str | None = None,
base_prompt: str = DEFAULT_SYSTEM_PROMPT,
) -> str:
tool_fragment = ", ".join(tool_registry.names())
prompt = f"{base_prompt}\nAvailable tools: {tool_fragment}."
if workspace:
prompt += f"\nWorkspace root: {workspace}."
skill_fragment = skill_store.build_prompt_fragment(active_skills)
if skill_fragment:
prompt += f"\n\nLoaded skills:\n{skill_fragment}"
return prompt