diff --git a/src/seclab_taskflow_agent/banner.py b/src/seclab_taskflow_agent/banner.py index c5f4b93..db48cbb 100644 --- a/src/seclab_taskflow_agent/banner.py +++ b/src/seclab_taskflow_agent/banner.py @@ -3,6 +3,7 @@ """ASCII banner displayed at agent startup.""" +from .__about__ import __version__ from .capi import get_AI_endpoint __all__ = ["get_banner"] @@ -35,7 +36,7 @@ def get_banner() -> str: ║ ███████╗██║ ██║██████╔╝ ║ ║ ╚══════╝╚═╝ ╚═╝╚═════╝ ║ ║ ║ - ║ TASKFLOW AGENT ║ + ║ TASKFLOW AGENT v{__version__:<29}║ ║ ║ ╠══════════════════════════════════════════════════════════════════╣ ║ Default AI API Endpoint: {api_endpoint:<40}║ diff --git a/tests/test_cli.py b/tests/test_cli.py index 6094843..255c2e9 100644 --- a/tests/test_cli.py +++ b/tests/test_cli.py @@ -11,6 +11,21 @@ from seclab_taskflow_agent.cli import _parse_global +class TestBanner: + """Tests for startup banner rendering.""" + + def test_banner_includes_version(self, monkeypatch): + from seclab_taskflow_agent.__about__ import __version__ + from seclab_taskflow_agent.banner import get_banner + + monkeypatch.setattr("seclab_taskflow_agent.banner.get_AI_endpoint", lambda: "https://example.test") + + banner = get_banner() + + assert f"v{__version__}" in banner + assert "Default AI API Endpoint: https://example.test" in banner + + class TestParseGlobal: """Tests for _parse_global KEY=VALUE parsing."""