{
"event": "PreToolUse",
"tool_name": "Grep",
"tool_input": {
"pattern": "ALLOWED_MODELS|claude-opus|claude-sonnet|ollama:",
"path": "\/var\/www\/dev.campus.systemische-tools.de\/src\/Controller\/ChatController.php",
"output_mode": "content",
"-A": 5,
"-n": true
}
}
{
"tool_response": {
"mode": "content",
"numFiles": 0,
"filenames": [],
"content": "313: $stmt->execute([$uuid, 'claude-opus-4-5-20251101', '[\"documents\"]', 5]);\n314-\n315- return $uuid;\n316- }\n317-\n318- \/**\n--\n510: * Format: claude-* or ollama:*\n511- *\/\n512- private function validateModel(string $model): string\n513- {\n514: if (str_starts_with($model, 'claude-') || str_starts_with($model, 'ollama:')) {\n515- return $model;\n516- }\n517-\n518: return 'claude-opus-4-5-20251101';\n519- }\n520-\n521- \/**\n522- * Get available Qdrant collections (cached per request)\n523- *\n--\n762: $modelLabel = str_starts_with($model, 'ollama:') ? substr($model, 7) : $model;\n763-\n764- \/\/ Convert markdown-style formatting to HTML\n765- $answer = $this->formatAnswer($answer);\n766-\n767- echo '<div class=\"chat-message chat-message--user\">';\n--\n825: } elseif (str_starts_with($model, 'ollama:')) {\n826- $html .= '<span class=\"tokens-info local\">lokal<\/span>';\n827- }\n828-\n829- $html .= '<\/div>';\n830-",
"numLines": 35
}
}