Vector35 / community-plugins

Repository for community provided Binary Ninja plugins
MIT License
430 stars 34 forks source link

[New Plugin]: BinAssist - Yet another LLM plugin #280

Closed jtang613 closed 3 weeks ago

jtang613 commented 3 weeks ago

Plugin Description

A plugin that provides LLM helpers to explain code and assist in RE.

Description:

This 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.

Current features include:

Future Roadmap:

Plugin Repository URL

https://github.com/jtang613/BinAssist

Real Release

psifertex commented 3 weeks ago

Thanks for the submission! Just added the plugin now. As a heads up in the future, you can remove the longdescription field and the plugin manager will just pull the data from the readme instead of having to maintain both.

Also, highly recommend you switch the API key fields to use the hidden bool on the key.

psifertex commented 3 weeks ago

Actually, the import failed. Please double check that the release was done appropriately (I recommend using the gh cli tool, or https://github.com/Vector35/release_helper)

jtang613 commented 3 weeks ago

Thanks for the quick turnaround! Great advice - I'll make sure to incorporate that into the next release.

psifertex commented 3 weeks ago

Well, you might be able to do that sooner rather than later. 😉

jtang613 commented 3 weeks ago

I

Actually, the import failed. Please double check that the release was done appropriately (I recommend using the gh cli tool, or https://github.com/Vector35/release_helper)

I used the instructions here: https://binary.ninja/2019/07/04/plugin-manager-2.0.html#5-create-a-release I'll try a point release using the helper.

jtang613 commented 3 weeks ago

The helper is giving me odd HTTP 404 errors. Does your import script give any hints as to what I've done wrong?

psifertex commented 3 weeks ago
ERROR: tang613/BinAssist, Couldn't get release information. Likely the user created a tag but no associated release.

Generated by:

https://github.com/Vector35/community-plugins/blob/master/generate_index.py#L56

jtang613 commented 3 weeks ago

I apologize - this is my first BN plugin. I do have a release tagged with 0.1.0. Is this not the correct format? https://github.com/jtang613/BinAssist/releases

psifertex commented 3 weeks ago

Let me investigate some.

psifertex commented 3 weeks ago

D'oh, my apologies. Copy/paste failure. 😞 Should be live shortly! You didn't do anything wrong, sorry about that.