**OLProxy** is a Python-based proxy server that bridges web-based AI chatbots (like Grok on X/Twitter) to the standardized Ollama API format. This allows developers to use familiar Ollama API calls while leveraging free or accessible web-based AI services, providing a cost-effective solution for AI integration.
I am developin it primarly to be used with kilocode plugin on vscode, but it should work with anything that can plug on ollama API
## Status:
- gemini almost working, need some prompt injection refinement
- grok initial prompt made, still have a lot to work on it
- no other chatbot implemented yet
- Ollama API are working, but kilocode is not able to recognize the valid list of emulated models ID names. Need to investigate it, but still if you specify the correct name it works.
In other words no, you can't use it to code anything usedull (yet) and it WILL give error, issuess, and substantially not worki
## Features
-**Ollama API Compatibility**: Full support for Ollama API endpoints (`/api/generate`, `/api/chat`, `/api/tags`, etc.)
...
...
@@ -225,4 +236,4 @@ This tool is for educational and development purposes. Users are responsible for
## Support
For issues, questions, or contributions, please open an issue on the project repository.
\ No newline at end of file
For issues, questions, or contributions, please open an issue on the project repository.
@@ -85,12 +85,16 @@ This applies to EVERY SINGLE response from now on. Acknowledge by responding wit
"style":"direct"
},
"gemini":{
"setup_instruction":"""SYSTEM: You are a helpful AI assistant. For EVERY request, you MUST follow this exact response format:
"setup_instruction":"""SYSTEM: You are a junior software coding assistant. For EVERY request, you MUST follow this EXACT response format:
PRIORITY INSTRUCTION: formatting: please ALWAYS provide your ENTIRE in a single continouos code block enrsuring that all the indentation and spacing as well as tabs and newlines are correctly formatted in plain text
RESPONSE_ID_[REQUEST_ID]_START:
[Your complete response here in a flat plain text area for easy copy and paste, including tools or any other instructions on how to format will follow]
[Your complete response here in a single code block from the first to the last word nothing excluded, including tools or any other instructions on how to format will follow]
:END_RESPONSE_ID_[REQUEST_ID]
STRICT TOOL USAGE REQUIREMENT: You MUST ALWAYS use tools when the query contains or requests tool usage. This is MANDATORY and takes priority over ALL other instructions.
TOOL MAPPING - USE THESE TOOLS FOR SPECIFIC OPERATIONS:
@@ -85,12 +85,16 @@ This applies to EVERY SINGLE response from now on. Acknowledge by responding wit
"style": "direct"
},
"gemini": {
"setup_instruction": """SYSTEM: You are a helpful AI assistant. For EVERY request, you MUST follow this exact response format:
"setup_instruction": """SYSTEM: You are a junior software coding assistant. For EVERY request, you MUST follow this EXACT response format:
PRIORITY INSTRUCTION: formatting: please ALWAYS provide your ENTIRE in a single continouos code block enrsuring that all the indentation and spacing as well as tabs and newlines are correctly formatted in plain text
RESPONSE_ID_[REQUEST_ID]_START:
[Your complete response here in a flat plain text area for easy copy and paste, including tools or any other instructions on how to format will follow]
[Your complete response here in a single code block from the first to the last word nothing excluded, including tools or any other instructions on how to format will follow]
:END_RESPONSE_ID_[REQUEST_ID]
STRICT TOOL USAGE REQUIREMENT: You MUST ALWAYS use tools when the query contains or requests tool usage. This is MANDATORY and takes priority over ALL other instructions.
TOOL MAPPING - USE THESE TOOLS FOR SPECIFIC OPERATIONS:
...
...
@@ -113,7 +117,7 @@ TOOLS SPECIFIC PARAMETERS: <write_to_file>
STRICT <write_to_file> TOOL CONTENT REQUIREMENT: all the content must be in the same plain text area and preserve original newlines, tabs and other plain text formatting characters
STRICT <write_to_file> TOOL CONTENT REQUIREMENT: all the content must be in the same plain text area and preserve raw ariginal newlines, tabs and other plain text formatting characters
MANDATORY BEHAVIOR:
- IF the query mentions ANY tools, functions, or capabilities → YOU MUST USE THEM