[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-72803":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":14,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":19,"hasPages":19,"topics":21,"createdAt":10,"pushedAt":10,"updatedAt":35,"readmeContent":36,"aiSummary":37,"trendingCount":15,"starSnapshotCount":15,"syncStatus":38,"lastSyncTime":39,"discoverSource":40},72803,"ai-renamer","ozgrozer\u002Fai-renamer","ozgrozer","A Node.js CLI that uses Ollama and LM Studio models (Llava, Gemma, Llama etc.) to intelligently rename files by their contents","https:\u002F\u002Fairenamer.app",null,"JavaScript",2085,140,17,0,10,28.45,"GNU General Public License v3.0",false,"main",[22,23,24,25,26,27,28,29,30,31,32,33,34],"ai","automation","cli-tool","file-management","file-renamer","files","image-renamer","llama3","lm-studio","machine-learning","ollama","openai","video-renamer","2026-06-12 02:03:08","# ai-renamer\n\nA Node.js CLI that uses Ollama and LM Studio models (Llava, Gemma, Llama etc.) to intelligently rename files by their contents\n\n[![npm](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fv\u002Fai-renamer.svg?style=flat-square)](https:\u002F\u002Fwww.npmjs.com\u002Fpackage\u002Fai-renamer)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fnpm\u002Fl\u002Fai-renamer?style=flat-square)](https:\u002F\u002Fgithub.com\u002Fozgrozer\u002Fai-renamer\u002Fblob\u002Fmain\u002Flicense)\n\n## Desktop\n\nFor the desktop app, visit [airenamer.app](https:\u002F\u002Fairenamer.app)\n\n## Preview\n\nRename videos\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F502aedba-044e-4ed5-a1c7-bca84af2f3ce\n\nRename images\n\nhttps:\u002F\u002Fgithub.com\u002Fozgrozer\u002Fai-renamer\u002Fassets\u002F651938\u002F0d229179-8385-4f17-a9fb-44d40c79d1e9\n\nRename files\n\nhttps:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Ff8b37c3a-9cc0-48fc-aaea-f25f7b6ee4cc\n\n## Usage\n\nYou need to have [Ollama](https:\u002F\u002Follama.com\u002Fdownload) or [LM Studio](https:\u002F\u002Flmstudio.ai\u002F) and at least one LLM (Llava, Gemma, Llama etc.) installed on your system. You need to have [ffmpeg](https:\u002F\u002Fwww.ffmpeg.org\u002Fdownload.html) to rename videos.\n\nRun with NPX\n\n```bash\nnpx ai-renamer \u002Fpath\n```\n\nRun with NPM\n\n```bash\n# Install it globally\nnpm install -g ai-renamer\n\n# Run it\nai-renamer \u002Fpath\n```\n\n## Ollama Usage\n\nOllama is the default provider so you don't have to do anything. You can just run `npx ai-renamer \u002Fimages`. At the first launch it will try to auto-select the Llava model but if it couldn't do that you can specify the model.\n\n```bash\nnpx ai-renamer \u002Fpath --provider=ollama --model=llava:13b\n```\n\n## LM Studio Usage\n\nYou need to set the provider as `lm-studio` and it will auto-select the loaded model in LM Studio.\n\n```bash\nnpx ai-renamer \u002Fpath --provider=lm-studio\n```\n\n## OpenAI Usage\n\nYou need to set the provider as `openai` and the api-key with your API key and it will auto-select the gpt-4o model. But you can assign any model with `--model` flag.\n\n```bash\nnpx ai-renamer \u002Fpath --provider=openai --api-key=OPENAI_API_KEY\n```\n\n## Custom Ports\n\nIf you're using a different port in Ollama or LM Studio you could simply specify the base URLs.\n\n```bash\nnpx ai-renamer \u002Fpath --provider=ollama --base-url=http:\u002F\u002F127.0.0.1:11434\nnpx ai-renamer \u002Fpath --provider=lm-studio --base-url=http:\u002F\u002F127.0.0.1:1234\n```\n\n## Params\n\nThe values of the flags will be saved to your disk when you use them. You can find the config file at `~\u002Fai-renamer.json`. If you're using a Mac it's `\u002FUsers\u002Fyour-user-name\u002Fai-renamer.json`. Also when you set a flag you don't have to use them again. The script gets the values from this config file.\n\n```bash\nnpx ai-renamer --help\nOptions:\n  -h, --help                    Show help                              [boolean]\n      --version                 Show version number                    [boolean]\n  -p, --provider                Set the provider (e.g. ollama, openai,\n                                lm-studio)                              [string]\n  -a, --api-key                 Set the API key if you're using openai as\n                                provider                                [string]\n  -u, --base-url                Set the API base URL (e.g.\n                                http:\u002F\u002F127.0.0.1:11434 for ollama)      [string]\n  -m, --model                   Set the model to use (e.g. gemma2, llama3,\n                                gpt-4o)                                 [string]\n  -f, --frames                  Set the maximum number of frames to extract from\n                                videos (e.g. 3, 5, 10)                  [number]\n  -c, --case                    Set the case style (e.g. camelCase, pascalCase,\n                                snakeCase, kebabCase)                   [string]\n  -x, --chars                   Set the maximum number of characters in the new\n                                filename (e.g. 25)                      [number]\n  -l, --language                Set the output language (e.g. English, Turkish)\n                                                                        [string]\n  -s, --include-subdirectories  Include files in subdirectories when processing\n                                (e.g: true, false)                      [string]\n  -r, --custom-prompt           Add a custom prompt to the LLM (e.g. \"Only\n                                describe the background\")               [string]\n```\n\n`ai-renamer` uses `change-case` library for case styling\n\n```bash\n# value: result\ncamelCase: twoWords\ncapitalCase: Two Words\nconstantCase: TWO_WORDS\ndotCase: two.words\nkebabCase: two-words\nnoCase: two words\npascalCase: TwoWords\npascalSnakeCase: Two_Words\npathCase: two\u002Fwords\nsentenceCase: Two words\nsnakeCase: two_words\ntrainCase: Two-Words\n```\n\n## Contribution\n\nFeel free to contribute. Open a new [issue](https:\u002F\u002Fgithub.com\u002Fozgrozer\u002Fai-renamer\u002Fissues), or make a [pull request](https:\u002F\u002Fgithub.com\u002Fozgrozer\u002Fai-renamer\u002Fpulls).\n\n## License\n\n[GPL-3.0](https:\u002F\u002Fgithub.com\u002Fozgrozer\u002Fai-renamer\u002Fblob\u002Fmain\u002Flicense)\n","ai-renamer 是一个基于 Node.js 的命令行工具，利用 Ollama 和 LM Studio 模型（如 Llava、Gemma、Llama 等）根据文件内容智能重命名文件。其核心功能包括支持多种语言模型和自定义端口配置，能够处理图片、视频及普通文件的重命名任务。技术上，它通过调用本地或云端的语言模型来解析文件内容，并据此生成更具描述性的新文件名。适用于需要批量整理和管理大量多媒体文件或文档的场景，例如个人照片库维护、视频素材分类等。",2,"2026-06-11 03:43:38","high_star"]