{"_id":"@elizaos/plugin-ollama-root","_rev":"4-7d7f5f06aca6e548e25ad93ac45353e1","name":"@elizaos/plugin-ollama-root","dist-tags":{"next":"2.0.0-alpha.1","latest":"2.0.0-alpha.1"},"versions":{"2.0.0-alpha.1":{"name":"@elizaos/plugin-ollama-root","version":"2.0.0-alpha.1","keywords":[],"author":{"name":"elizaOS"},"license":"MIT","_id":"@elizaos/plugin-ollama-root@2.0.0-alpha.1","maintainers":[{"name":"shawticus","email":"shawmakesmagic@gmail.com"},{"name":"shakkernerd","email":"shakkerdroid@gmail.com"},{"name":"wtfsayo","email":"hi@sayo.wtf"},{"name":"odilitime","email":"janesmith@airmail.cc"},{"name":"cjft","email":"cjft@trimboli.io"}],"homepage":"https://github.com/elizaos-plugins/plugin-ollama#readme","bugs":{"url":"https://github.com/elizaos-plugins/plugin-ollama/issues"},"dist":{"shasum":"8d1a364031cabde48d87258913a2b26d37931578","tarball":"https://registry.npmjs.org/@elizaos/plugin-ollama-root/-/plugin-ollama-root-2.0.0-alpha.1.tgz","fileCount":75,"integrity":"sha512-dCGZCOPYvsmjjcwa1oMrVA0n/Wj/Z5eekam2IVhKTUFHf3b//NYTPjvEkvWu6GzhepuUALbzoIIPHCMY0g6A+A==","signatures":[{"sig":"MEUCICUPdvgoIaAE00U/PtDn2Fh2R2TEslAqib8SPPbONl/8AiEA8ryiZEJeBze/FlUDYh8wFhDEo+oNE6gJS5Un5Kfe1JM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":297498},"main":"typescript/dist/node/index.node.js","type":"module","types":"typescript/dist/node/index.d.ts","exports":{".":{"types":"./typescript/dist/node/index.d.ts","import":"./typescript/dist/node/index.node.js","default":"./typescript/dist/node/index.node.js"},"./rust":{"import":"./rust/pkg/node/elizaos_plugin_plugin_ollama.js"},"./package.json":"./package.json"},"gitHead":"05d4ca11d769db8c7f54a722ee24b2ce2b951543","scripts":{"dev":"cd typescript && bun --hot build.ts","lint":"bunx @biomejs/biome check --write ./typescript","test":"bun run test:ts && bun run test:rust && bun run test:python","build":"bun run build:ts && bun run build:rust && bun run build:python","clean":"rm -rf typescript/dist python/dist rust/target .turbo node_modules","test:ts":"cd typescript && vitest run || echo 'TypeScript tests skipped - no tests found'","build:ts":"cd typescript && bun run build.ts","lint:rust":"test -d rust && cd rust && cargo clippy --all-targets --fix --allow-dirty --allow-staged -- -D warnings && cargo fmt || echo 'Rust lint skipped'","test:rust":"test -d rust && cd rust && cargo test || echo 'Rust tests skipped'","typecheck":"tsc --noEmit -p typescript/tsconfig.json","build:rust":"test -d rust && cd rust && cargo build --release || echo 'Rust build skipped - no rust directory'","lint:check":"bunx @biomejs/biome check ./typescript","lint:python":"test -d python && cd python && ruff check --fix . && ruff format . || echo 'Python lint skipped'","test:python":"test -d python && cd python && pytest -p no:anchorpy --asyncio-mode=auto || echo 'Python tests skipped'","build:python":"test -d python && cd python && (python3 -m build 2>/dev/null || pyproject-build) || echo 'Python build skipped - no python directory'","lint:python:fix":"test -d python && cd python && ruff check --fix . && ruff format . || echo 'Python lint fix skipped'"},"_npmUser":{"name":"shawticus","email":"shawmakesmagic@gmail.com"},"repository":{"url":"git+https://github.com/elizaos-plugins/plugin-ollama.git","type":"git"},"_npmVersion":"lerna/9.0.3/node@v22.20.0+arm64 (darwin)","agentConfig":{"pluginType":"elizaos:plugin:1.0.0","pluginParameters":{"LARGE_MODEL":{"type":"string","default":"gemma3:latest","required":false,"sensitive":false,"description":"Fallback environment variable for specifying a large model if OLLAMA_LARGE_MODEL is not set."},"SMALL_MODEL":{"type":"string","default":"gemma3:latest","required":false,"sensitive":false,"description":"Fallback environment variable for specifying a small model if OLLAMA_SMALL_MODEL is not set."},"OLLAMA_LARGE_MODEL":{"type":"string","default":"gemma3:latest","required":false,"sensitive":false,"description":"Name or tag of the large-sized Ollama model to use for text and object generation."},"OLLAMA_SMALL_MODEL":{"type":"string","default":"gemma3:latest","required":false,"sensitive":false,"description":"Name or tag of the small-sized Ollama model to use for text and object generation."},"OLLAMA_API_ENDPOINT":{"type":"string","default":"http://localhost:11434/api","required":true,"sensitive":false,"description":"Base URL for the Ollama API. The plugin will strip this to the domain part and append the necessary API paths."},"OLLAMA_MEDIUM_MODEL":{"type":"string","required":false,"sensitive":false,"description":"Name or tag of the medium-sized Ollama model (defined in config but not currently used)."},"OLLAMA_EMBEDDING_MODEL":{"type":"string","default":"nomic-embed-text:latest","required":false,"sensitive":false,"description":"Name or tag of the Ollama model used to generate text embeddings."}}},"description":"This plugin provides integration with [Ollama](https://ollama.com/)'s local models through the ElizaOS platform. It allows you to leverage locally running LLMs for text generation, embeddings, and object generation.","directories":{},"_nodeVersion":"22.20.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"@types/bun":"^1.3.5","typescript":"^5.9.3","@types/node":"^25.0.3","@biomejs/biome":"^2.3.11"},"peerDependencies":{"@elizaos/core":"2.0.0-alpha.1"},"_npmOperationalInternal":{"tmp":"tmp/plugin-ollama-root_2.0.0-alpha.1_1769034076796_0.9066395165262","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-01-21T22:21:16.676Z","modified":"2026-06-16T05:14:56.770Z","2.0.0-alpha.1":"2026-01-21T22:21:16.965Z"},"bugs":{"url":"https://github.com/elizaos-plugins/plugin-ollama/issues"},"author":{"name":"elizaOS"},"license":"MIT","homepage":"https://github.com/elizaos-plugins/plugin-ollama#readme","keywords":[],"repository":{"url":"git+https://github.com/elizaos-plugins/plugin-ollama.git","type":"git"},"description":"This plugin provides integration with [Ollama](https://ollama.com/)'s local models through the ElizaOS platform. It allows you to leverage locally running LLMs for text generation, embeddings, and object generation.","maintainers":[{"email":"shawmakesmagic@gmail.com","name":"shawticus"},{"email":"janesmith@airmail.cc","name":"odilitime"}],"readme":"# Ollama Plugin\n\nThis plugin provides integration with [Ollama](https://ollama.com/)'s local models through the ElizaOS platform. It allows you to leverage locally running LLMs for text generation, embeddings, and object generation.\n\n## Overview\n\nOllama enables running large language models locally on your machine. This plugin connects ElizaOS with your local Ollama installation, giving your characters access to powerful language models running on your own hardware.\n\n## Requirements\n\n- [Ollama](https://ollama.com/) installed and running on your system\n- ElizaOS platform\n- At least one Ollama model pulled and available (e.g., `llama3`, `gemma3:latest`)\n\n## Installation\n\n1. Install this plugin in your ElizaOS project:\n\n   ```bash\n   bun add @elizaos/plugin-ollama\n   ```\n\n2. Make sure Ollama is running:\n   ```bash\n   ollama serve\n   ```\n\n## Usage\n\nAdd the plugin to your character configuration:\n\n```json\n\"plugins\": [\"@elizaos/plugin-ollama\"]\n```\n\n## Configuration\n\nThe plugin requires these environment variables (can be set in .env file or character settings):\n\n```json\n\"settings\": {\n  \"OLLAMA_API_ENDPOINT\": \"http://localhost:11434/api\",\n  \"OLLAMA_SMALL_MODEL\": \"gemma3:latest\",\n  \"OLLAMA_MEDIUM_MODEL\": \"gemma3:latest\",\n  \"OLLAMA_LARGE_MODEL\": \"gemma3:latest\",\n  \"OLLAMA_EMBEDDING_MODEL\": \"nomic-embed-text:latest\"\n}\n```\n\nOr in `.env` file:\n\n```\nOLLAMA_API_ENDPOINT=http://localhost:11434/api\nOLLAMA_SMALL_MODEL=gemma3:latest\nOLLAMA_MEDIUM_MODEL=gemma3:latest\nOLLAMA_LARGE_MODEL=gemma3:latest\nOLLAMA_EMBEDDING_MODEL=nomic-embed-text:latest\n```\n\n### Configuration Options\n\n- `OLLAMA_API_ENDPOINT`: Ollama API endpoint (default: http://localhost:11434/api)\n- `OLLAMA_SMALL_MODEL`: Model for simpler tasks (default: gemma3:latest)\n- `OLLAMA_MEDIUM_MODEL`: Medium-complexity model (default: gemma3:latest)\n- `OLLAMA_LARGE_MODEL`: Model for complex tasks (default: gemma3:latest)\n- `OLLAMA_EMBEDDING_MODEL`: Model for text embeddings (default: nomic-embed-text:latest)\n\nThe plugin provides these model classes:\n\n- `TEXT_SMALL`: Optimized for fast responses with simpler prompts\n- `TEXT_LARGE`: For complex tasks requiring deeper reasoning\n- `TEXT_EMBEDDING`: Text embedding model\n- `OBJECT_SMALL`: JSON object generation with simpler models\n- `OBJECT_LARGE`: JSON object generation with more complex models\n\n## API Reference\n\nFor detailed information about the Ollama API used by this plugin, refer to the [official Ollama API documentation](https://github.com/ollama/ollama/blob/main/docs/api.md).\n\n## Features\n\n### Text Generation (Small Model)\n\nGenerate text using smaller, faster models optimized for quick responses:\n\n```js\nconst text = await runtime.useModel(ModelType.TEXT_SMALL, {\n  prompt: \"What is the nature of reality?\",\n  stopSequences: [], // optional\n});\n```\n\n### Text Generation (Large Model)\n\nGenerate comprehensive text responses using more powerful models for complex tasks:\n\n```js\nconst text = await runtime.useModel(ModelType.TEXT_LARGE, {\n  prompt: \"Write a detailed explanation of quantum physics\",\n  stopSequences: [], // optional\n  maxTokens: 8192, // optional (default: 8192)\n  temperature: 0.7, // optional (default: 0.7)\n  frequencyPenalty: 0.7, // optional (default: 0.7)\n  presencePenalty: 0.7, // optional (default: 0.7)\n});\n```\n\n### Text Embeddings\n\nGenerate vector embeddings for text, which can be used for semantic search or other vector operations:\n\n```js\nconst embedding = await runtime.useModel(ModelType.TEXT_EMBEDDING, {\n  text: \"Text to embed\",\n});\n// or\nconst embedding = await runtime.useModel(\n  ModelType.TEXT_EMBEDDING,\n  \"Text to embed\",\n);\n```\n\n### Object Generation (Small Model)\n\nGenerate structured JSON objects using faster models:\n\n```js\nconst object = await runtime.useModel(ModelType.OBJECT_SMALL, {\n  prompt: \"Generate a JSON object representing a user profile\",\n  temperature: 0.7, // optional\n});\n```\n\n### Object Generation (Large Model)\n\nGenerate complex, detailed JSON objects using more powerful models:\n\n```js\nconst object = await runtime.useModel(ModelType.OBJECT_LARGE, {\n  prompt: \"Generate a detailed JSON object representing a restaurant\",\n  temperature: 0.7, // optional\n});\n```\n\n## Troubleshooting\n\n### Connection Issues\n\n- Ensure Ollama is running by testing the `OLLAMA_API_ENDPOINT`\n- Verify the `OLLAMA_API_ENDPOINT` points to the correct host and port\n- Check firewall settings if connecting to a remote Ollama instance\n\n### Model Availability\n\n- The plugin will attempt to download models automatically if they're not found\n- You can pre-download models using `ollama pull modelname`\n- Check model availability with `ollama list`\n\n## License\n\nSee LICENSE file for details.\n","readmeFilename":"README.md"}