Coverage for src/lexigram/ai/cli/shell.py: 100%

5 statements  

« prev     ^ index     » next       coverage.py v7.15.4, created at 2026-08-25 07:19 +0800

1"""CLI shell context factories for lexigram-ai.""" 

2 

3from __future__ import annotations 

4 

5from typing import TYPE_CHECKING 

6 

7if TYPE_CHECKING: 

8 from lexigram.contracts.core.di import ContainerResolverProtocol 

9 

10 

11async def provide_ai_client(container: ContainerResolverProtocol) -> object: 

12 """Provide an AI client for interactive shell use. 

13 

14 Args: 

15 container: Booted DI container. 

16 

17 Returns: 

18 The resolved AI client instance. 

19 """ 

20 from lexigram.contracts.ai.llm import LLMClientProtocol 

21 

22 return await container.resolve(LLMClientProtocol)