From 0143e7d44e5ad35ceb7da7a67ace683d1b59c882 Mon Sep 17 00:00:00 2001 From: Jon Michael Aanes Date: Sat, 10 May 2025 00:39:49 +0200 Subject: [PATCH] Improved CLI --- test_langgraph/__main__.py | 11 +++++++++-- test_langgraph/tools.py | 3 ++- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/test_langgraph/__main__.py b/test_langgraph/__main__.py index 81b95ec..504ae04 100644 --- a/test_langgraph/__main__.py +++ b/test_langgraph/__main__.py @@ -9,11 +9,16 @@ from langchain_core.messages import HumanMessage, SystemMessage from langgraph.graph import StateGraph, START, END from langgraph.graph.message import add_messages import logging +import prompt_toolkit +import prompt_toolkit.history +import prompt_toolkit.auto_suggest logger = logging.getLogger(__name__) from . import tools +cli_history = prompt_toolkit.history.FileHistory('output/cli_history.txt') + #MODEL = "gemma3:27b" MODEL = "qwen3:latest" @@ -33,8 +38,10 @@ def main(): llm = create_model() prev_idx = 0 while True: - - user_input = input("User: ") + user_input = prompt_toolkit.prompt("Human: ", + history=cli_history, + auto_suggest=prompt_toolkit.auto_suggest.AutoSuggestFromHistory(), + ) messages.append(HumanMessage(user_input)) result = llm.invoke({ diff --git a/test_langgraph/tools.py b/test_langgraph/tools.py index 33a41dd..558dc47 100644 --- a/test_langgraph/tools.py +++ b/test_langgraph/tools.py @@ -27,7 +27,8 @@ def wrap(class_, method): result = list(result) return result - wrapper.__name__ = f'{class_.__name__}.{method.__name__}' + #wrapper.__name__ = f'{class_.__name__}.{method.__name__}' + wrapper.__name__ = f'{method.__name__}' wrapper.__doc__ = method.__doc__ wrapper.__annotations__ = method.__annotations__ return tool(wrapper)