plexus.cli.score_chat.repl module
Implementation of a Rich-based REPL for the Plexus score chat command.
This module provides an interactive REPL interface for working with Plexus scores, using Rich for beautiful terminal output and command history.
- class plexus.cli.score_chat.repl.ScoreChatREPL(scorecard: str | None = None, score: str | None = None)
Bases:
objectInteractive REPL for working with Plexus scores.
- __init__(scorecard: str | None = None, score: str | None = None)
- handle_command(command: str)
Handle explicit commands.
- handle_natural_language(user_input: str)
Handle natural language input from the user.
- initialize_system_message()
Initialize the system message with the current score’s information.
- list_scorecards()
List available scorecards.
- load_score(scorecard: str, score: str)
Load a score’s configuration.
- pull_score(scorecard: str, score: str)
Pull a score’s current version.
- push_score(scorecard: str, score: str)
Push a score’s updated version.
- recover_and_continue()
Recover from an error by creating a simplified chat history and continuing the conversation.
- run()
Run the REPL.
- show_help()
Show available commands.
- class plexus.cli.score_chat.repl.StreamingCallbackHandler(console: Console)
Bases:
BaseCallbackHandlerCallback handler for streaming LLM responses.
- __init__(console: Console)
- on_llm_end(*args, **kwargs)
Called when the LLM finishes generating.
- on_llm_error(error: Exception, *args, **kwargs)
Called when the LLM encounters an error.
- on_llm_new_token(token: str, *args, **kwargs)
Called when a new token is generated.
- on_llm_start(*args, **kwargs)
Called when the LLM starts generating.
- on_tool_end(output: str, **kwargs: Any) None
Called when a tool finishes being used.
- on_tool_start(serialized: Dict[str, Any], input_str: str, **kwargs: Any) None
Called when a tool starts being used.