Skip to content

Commit b7632bb

Browse files
fswairKludex
andauthored
Add prog_name parameter to Agent.to_cli() (#1804)
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
1 parent 154fec5 commit b7632bb

File tree

1 file changed

+13
-14
lines changed

1 file changed

+13
-14
lines changed

pydantic_ai_slim/pydantic_ai/agent.py

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1751,9 +1751,13 @@ def to_a2a(
17511751
lifespan=lifespan,
17521752
)
17531753

1754-
async def to_cli(self: Self, deps: AgentDepsT = None) -> None:
1754+
async def to_cli(self: Self, deps: AgentDepsT = None, prog_name: str = 'pydantic-ai') -> None:
17551755
"""Run the agent in a CLI chat interface.
17561756
1757+
Args:
1758+
deps: The dependencies to pass to the agent.
1759+
prog_name: The name of the program to use for the CLI. Defaults to 'pydantic-ai'.
1760+
17571761
Example:
17581762
```python {title="agent_to_cli.py" test="skip"}
17591763
from pydantic_ai import Agent
@@ -1768,29 +1772,24 @@ async def main():
17681772

17691773
from pydantic_ai._cli import run_chat
17701774

1771-
# TODO(Marcelo): We need to refactor the CLI code to be able to be able to just pass `agent`, `deps` and
1772-
# `prog_name` from here.
1775+
await run_chat(stream=True, agent=self, deps=deps, console=Console(), code_theme='monokai', prog_name=prog_name)
17731776

1774-
await run_chat(
1775-
stream=True,
1776-
agent=self,
1777-
deps=deps,
1778-
console=Console(),
1779-
code_theme='monokai',
1780-
prog_name='pydantic-ai',
1781-
)
1782-
1783-
def to_cli_sync(self: Self, deps: AgentDepsT = None) -> None:
1777+
def to_cli_sync(self: Self, deps: AgentDepsT = None, prog_name: str = 'pydantic-ai') -> None:
17841778
"""Run the agent in a CLI chat interface with the non-async interface.
17851779
1780+
Args:
1781+
deps: The dependencies to pass to the agent.
1782+
prog_name: The name of the program to use for the CLI. Defaults to 'pydantic-ai'.
1783+
17861784
```python {title="agent_to_cli_sync.py" test="skip"}
17871785
from pydantic_ai import Agent
17881786
17891787
agent = Agent('openai:gpt-4o', instructions='You always respond in Italian.')
17901788
agent.to_cli_sync()
1789+
agent.to_cli_sync(prog_name='assistant')
17911790
```
17921791
"""
1793-
return get_event_loop().run_until_complete(self.to_cli(deps=deps))
1792+
return get_event_loop().run_until_complete(self.to_cli(deps=deps, prog_name=prog_name))
17941793

17951794

17961795
@dataclasses.dataclass(repr=False)

0 commit comments

Comments
 (0)