Files
agent-desktop/tests/unit/runtime/test_builtin_commands_help_text.py
T

36 lines
1.4 KiB
Python

# -*- coding: utf-8 -*-
"""help_text for built-in commands comes from the definition site."""
from __future__ import annotations
from pineagents.agents.command_handler import SYSTEM_COMMAND_DESCRIPTIONS
from pineagents.runtime.builtin_commands import (
_collect_control_specs,
_collect_conversation_specs,
)
def test_control_specs_use_handler_description() -> None:
"""Control help_text is handler.description, not a secondary map."""
by_name = {spec.name: spec for spec in _collect_control_specs()}
assert by_name["model"].help_text == "Show or switch AI model"
assert by_name["skills"].help_text == (
"List chat-available skills and expose explicit skill commands"
)
# Handlers without description stay non-advertisable.
assert by_name["stop"].help_text == ""
assert by_name["approval"].help_text == ""
def test_conversation_specs_use_system_command_descriptions() -> None:
"""Conversation help_text comes from SYSTEM_COMMAND_DESCRIPTIONS."""
by_name = {spec.name: spec for spec in _collect_conversation_specs()}
assert by_name["clear"].help_text == SYSTEM_COMMAND_DESCRIPTIONS["clear"]
assert (
by_name["compact"].help_text == SYSTEM_COMMAND_DESCRIPTIONS["compact"]
)
# Non-curated conversation commands remain hidden from autocomplete.
assert by_name["history"].help_text == ""
assert by_name["new"].help_text == ""