"""
Runner 相关 Prompt

包含 AgentRunner 主循环使用的 prompt：
- 系统提示前缀
- 工具执行中断提示
- 任务名称生成
- 经验条目格式
"""

# ===== 系统提示 =====

DEFAULT_SYSTEM_PREFIX = "你是最顶尖的AI助手，可以拆分并调用工具逐步解决复杂问题。"

# ===== 工具执行 =====

TRUNCATION_HINT = """你的响应因为 max_tokens 限制被截断，tool call 参数不完整，未执行。请将大内容拆分为多次小的工具调用（例如用 write_file 的 append 模式分批写入）。"""

TOOL_INTERRUPTED_MESSAGE = """⚠️ 工具 {tool_name} 执行被中断（进程异常退出），未获得执行结果。请根据需要重新调用。"""

AGENT_INTERRUPTED_SUMMARY = "⚠️ 子Agent执行被中断（进程异常退出）"

AGENT_CONTINUE_HINT_TEMPLATE = '使用 continue_from="{sub_trace_id}" 可继续执行，保留已有进度'

# ===== 任务命名 =====

TASK_NAME_GENERATION_SYSTEM_PROMPT = "用中文为以下任务生成一个简短标题（10-30字），只输出标题本身："

TASK_NAME_FALLBACK = "未命名任务"

# ===== 辅助函数 =====

def build_tool_interrupted_message(tool_name: str) -> str:
    return TOOL_INTERRUPTED_MESSAGE.format(tool_name=tool_name)


def build_agent_continue_hint(sub_trace_id: str) -> str:
    return AGENT_CONTINUE_HINT_TEMPLATE.format(sub_trace_id=sub_trace_id)

