ChatPharo routes requests to a selected “agent”. All agents implement the ChatPharoAgent contract so the UI and chat/session code stay backend-agnostic.
An agent typically maintains:
modelsystemPrompthistory (LLM-friendly log)| Agent | Category | Notes |
|---|---|---|
ChatPharoNullAgent |
Offline | Returns a message telling you to configure a backend |
ChatPharoOllamaAgent |
Local | Talks to an Ollama server (localhost:11434 by default) |
ChatPharoLMStudioAgent |
Local | Talks to a local LM Studio server |
ChatPharoClaudeAgent |
Cloud | Tool-call loop with max iterations; thinking content supported |
ChatPharoGeminiAgent |
Cloud | General-purpose cloud backend |
ChatPharoDeepSeekAgent |
Cloud | Code-focused cloud backend |
ChatPharoMistralAgent |
Cloud | Present but marked as not supported yet |
Some agents follow this pattern:
tool_calls, execute tools and append results to history.maximumIterations is reached.