Skip to content

Commit

Permalink
update BinAssist
Browse files Browse the repository at this point in the history
  • Loading branch information
psifertex committed Sep 13, 2024
1 parent 9f0d363 commit 30a5a3f
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 23 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
|[BD Viewer](https://github.com/PistonMiner/binaryninja-bindiff-viewer)|[Linus S. (aka PistonMiner)](https://github.com/PistonMiner)|View BinDiff results and port symbols|2022-07-26|helper, ui|MIT|
|[Binary Ninja Ollama](https://github.com/ahaggard2013/binaryninja-ollama)|[Austin Haggard](https://github.com/ahaggard2013)|Binary Ninja Ollama integrates with your own locally hosted ollama server to rename functions and variables with AI|2024-07-16|architecture, binaryview, core, helper, ui|MIT|
|[Binary Ninja Type Manager](https://github.com/Ayrx/binja-typemanager)|[Terry Chia](https://github.com/Ayrx)|Manage custom type libraries.|2021-01-30|helper|MIT|
|[BinAssist](https://github.com/jtang613/BinAssist)|[Jason Tang](https://github.com/jtang613)|A plugin that provides LLM helpers to explain code and assist in RE.|2024-09-12|helper, ui|MIT|
|[BinAssist](https://github.com/jtang613/BinAssist)|[Jason Tang](https://github.com/jtang613)|A plugin that provides LLM helpers to explain code and assist in RE.|2024-09-13|helper, ui|MIT|
|[Binja IPython console](https://github.com/skr0x1c0/ipybinja)|[skr0x1c0](https://github.com/skr0x1c0)|IPython console widget for Binary Ninja|2022-12-12|binaryview, core, helper, ui|MIT|
|[binja-doc-lookup](https://github.com/riskydissonance/binja-doc-lookup)|[riskydissonance](https://github.com/riskydissonance)|Lookup documentation for the selected token|2024-06-20|helper, ui|MIT|
|[binja-win-docs](https://github.com/matteyeux/binja-win-docs)|[matteyeux](https://github.com/matteyeux)|Binary Ninja plugin to display the documentation of a Windows function in a sidebar widget.|2024-04-11|helper, ui|Apache-2.0|
Expand Down
44 changes: 22 additions & 22 deletions plugins.json
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,8 @@
"version": "0.1.1",
"author": "Jason Tang",
"minimumbinaryninjaversion": 4000,
"longdescription": "# BinAssist\nAuthor: **Jason Tang**\n\n_A plugin that provides LLM helpers to explain code and assist in RE._\n\n## Description:\n\nThis is a LLM plugin aimed at enabling the use of local LLM's (ollama, text-generation-webui, lm-studio, etc) for assisting with binary exploration and reverse engineering. It supports any OpenAI v1-compatible API. Recommended models are LLaMA-based models such as llama3.1:8b, but others should work as well.\n\nCurrent features include:\n* Explain the current function - Works at all IL levels.\n* Explain the current instruction - Works at all IL levels.\n* General query - Query the LLM directly from the UI.\n* Propose actions - Provide a list of proposed actions to apply.\n* Function calling - Allow agent to call functions to navigate the binary, rename functions and variables.\n* RLHF dataset generation - To enable model fine tuning.\n* RAG augmentation - Supports adding contextual documents to refine query effectiveness.\n* Settings to modify API host, key, model name and max tokens.\n\nFuture Roadmap:\n* Agentic assistant - Use Autogen or similar framework for self-guided binary RE.\n* Model fine tuning - Leverage the RLHF dataset to fine tune the model.\n\n## Quickstart\n\n* If necessary, `pip install -r requirements.txt` from the plugin directory.\n* Open Settings -> BinAssist.\n* Ensure the RLHF and RAG database paths are appropriate for your environment.\n* Point the API host to your prefered API provider and set the API key. \n* Load a binary.\n* Open BinAssist with the 'BA' sidebar icon and start exploring.\n\n## Screenshot\n![Screenshot](/res/screenshots.gif)\n\n## Homepage\nhttps://github.com/jtang613/BinAssist\n\n\n## Installation Instructions\n\n### Linux\n\nAn OpenAI compatible API is required. For local LLM support, use Ollama, LMStudio, Open-WebUI, Text-Generation-WebUI, etc.\n\n`pip install -r requirements.txt`\n\n### Windows\n\nUntested but should work. Submit an Issue or Pull Request for support.\n\n### Darwin\n\nUntested but should work. Submit an Issue or Pull Request for support.\n\n## Minimum Version\n\nThis plugin requires the following minimum version of Binary Ninja:\n\n* 3164\n\n\n\n## Required Dependencies\n\nThe following dependencies are required for this plugin:\n\n * pip - openai, pysqlite3, markdown, httpx, chromadb, sentence-transformers\n\n\n## License\n\nThis plugin is released under a MIT license.\n## Metadata Version\n\n2\n",
"lastUpdated": 1726171547,
"longdescription": "# BinAssist\nAuthor: **Jason Tang**\n\n_A plugin that provides LLM helpers to explain code and assist in RE._\n\n## Support Continued Improvements\n\n[![\"Buy Me A Beer\"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://buymeacoffee.com/jtang613)\n\n## Description:\n\nThis is a LLM plugin aimed at enabling the use of local LLM's (ollama, text-generation-webui, lm-studio, etc) for assisting with binary exploration and reverse engineering. It supports any OpenAI v1-compatible API. Recommended models are LLaMA-based models such as llama3.1:8b, but others should work as well.\n\nCurrent features include:\n* Explain the current function - Works at all IL levels.\n* Explain the current instruction - Works at all IL levels.\n* General query - Query the LLM directly from the UI.\n* Propose actions - Provide a list of proposed actions to apply.\n* Function calling - Allow agent to call functions to navigate the binary, rename functions and variables.\n* RLHF dataset generation - To enable model fine tuning.\n* RAG augmentation - Supports adding contextual documents to refine query effectiveness.\n* Settings to modify API host, key, model name and max tokens.\n\nFuture Roadmap:\n* Agentic assistant - Use Autogen or similar framework for self-guided binary RE.\n* Model fine tuning - Leverage the RLHF dataset to fine tune the model.\n\n## Quickstart\n\n* If necessary, `pip install -r requirements.txt` from the plugin directory.\n* Open Settings -> BinAssist.\n* Ensure the RLHF and RAG database paths are appropriate for your environment.\n* Point the API host to your prefered API provider and set the API key. \n* Load a binary.\n* Open BinAssist with the 'BA' sidebar icon and start exploring.\n\n## Screenshot\n![Screenshot](/res/screenshots.gif)\n\n## Homepage\nhttps://github.com/jtang613/BinAssist\n\n\n## Installation Instructions\n\n### Linux\n\nAn OpenAI compatible API is required. For local LLM support, use Ollama, LMStudio, Open-WebUI, Text-Generation-WebUI, etc.\n\n`pip install -r requirements.txt`\n\n### Windows\n\nUntested but should work. Submit an Issue or Pull Request for support.\n\n### Darwin\n\nUntested but should work. Submit an Issue or Pull Request for support.\n\n## Minimum Version\n\nThis plugin requires the following minimum version of Binary Ninja:\n\n* 3164\n\n\n\n## Required Dependencies\n\nThe following dependencies are required for this plugin:\n\n * pip - openai, pysqlite3, markdown, httpx, chromadb, sentence-transformers\n\n\n## License\n\nThis plugin is released under a MIT license.\n## Metadata Version\n\n2\n",
"lastUpdated": 1726230846,
"projectUrl": "https://github.com/jtang613/BinAssist",
"projectData": {
"id": 837757379,
Expand Down Expand Up @@ -98,8 +98,8 @@
"releases_url": "https://api.github.com/repos/jtang613/BinAssist/releases{/id}",
"deployments_url": "https://api.github.com/repos/jtang613/BinAssist/deployments",
"created_at": "2024-08-03T23:56:37Z",
"updated_at": "2024-09-12T20:05:47",
"pushed_at": "2024-09-12T20:33:23Z",
"updated_at": "2024-09-13T12:34:06",
"pushed_at": "2024-09-13T12:33:44Z",
"git_url": "git://github.com/jtang613/BinAssist.git",
"ssh_url": "[email protected]:jtang613/BinAssist.git",
"clone_url": "https://github.com/jtang613/BinAssist.git",
Expand Down Expand Up @@ -153,10 +153,10 @@
"subscribers_count": 2
},
"authorUrl": "https://github.com/jtang613",
"packageUrl": "https://api.github.com/repos/jtang613/BinAssist/zipball/refs/tags/0.1.3",
"packageShortUrl": "https://v35.us/ij7uvp2",
"packageUrl": "https://api.github.com/repos/jtang613/BinAssist/zipball/refs/tags/0.1.4",
"packageShortUrl": "https://v35.us/5q9bm8d",
"path": "jtang613_BinAssist",
"commit": "ac10c3e4c98eb8b758d26d7f4818c64bcdec68cb",
"commit": "7383660fb2dcbb88ac5e44d02a82a4aef1e5b694",
"minimumBinaryNinjaVersion": 0
},
{
Expand Down Expand Up @@ -581,8 +581,8 @@
"svn_url": "https://github.com/ahaggard2013/binaryninja-ollama",
"homepage": null,
"size": 4437,
"stargazers_count": 64,
"watchers_count": 64,
"stargazers_count": 65,
"watchers_count": 65,
"language": "Python",
"has_issues": true,
"has_projects": true,
Expand All @@ -609,7 +609,7 @@
"visibility": "public",
"forks": 5,
"open_issues": 0,
"watchers": 64,
"watchers": 65,
"default_branch": "main",
"permissions": {
"admin": false,
Expand Down Expand Up @@ -2346,16 +2346,16 @@
"svn_url": "https://github.com/mrphrazer/reverser_ai",
"homepage": "",
"size": 828,
"stargazers_count": 784,
"watchers_count": 784,
"stargazers_count": 785,
"watchers_count": 785,
"language": "Python",
"has_issues": true,
"has_projects": true,
"has_downloads": true,
"has_wiki": true,
"has_pages": false,
"has_discussions": false,
"forks_count": 43,
"forks_count": 44,
"mirror_url": null,
"archived": false,
"disabled": false,
Expand All @@ -2372,9 +2372,9 @@
"web_commit_signoff_required": false,
"topics": [],
"visibility": "public",
"forks": 43,
"forks": 44,
"open_issues": 2,
"watchers": 784,
"watchers": 785,
"default_branch": "main",
"permissions": {
"admin": false,
Expand All @@ -2384,7 +2384,7 @@
"pull": true
},
"temp_clone_token": "",
"network_count": 43,
"network_count": 44,
"subscribers_count": 16
},
"authorUrl": "https://github.com/mrphrazer",
Expand Down Expand Up @@ -5690,8 +5690,8 @@
"svn_url": "https://github.com/binsync/binsync",
"homepage": "https://binsync.net",
"size": 8036,
"stargazers_count": 564,
"watchers_count": 564,
"stargazers_count": 565,
"watchers_count": 565,
"language": "Python",
"has_issues": true,
"has_projects": true,
Expand Down Expand Up @@ -5726,7 +5726,7 @@
"visibility": "public",
"forks": 37,
"open_issues": 45,
"watchers": 564,
"watchers": 565,
"default_branch": "main",
"permissions": {
"admin": false,
Expand Down Expand Up @@ -23850,8 +23850,8 @@
"svn_url": "https://github.com/lwerdna/keypatch_binja",
"homepage": "",
"size": 222,
"stargazers_count": 12,
"watchers_count": 12,
"stargazers_count": 13,
"watchers_count": 13,
"language": "Python",
"has_issues": true,
"has_projects": true,
Expand All @@ -23878,7 +23878,7 @@
"visibility": "public",
"forks": 3,
"open_issues": 1,
"watchers": 12,
"watchers": 13,
"default_branch": "master",
"permissions": {
"admin": false,
Expand Down

0 comments on commit 30a5a3f

Please sign in to comment.