{"id":29561103,"url":"https://github.com/karamble/braibot","last_synced_at":"2025-07-18T15:40:03.920Z","repository":{"id":287598573,"uuid":"965205356","full_name":"karamble/braibot","owner":"karamble","description":"BisonRelay Chatbot to access diffusion models on fal.ai","archived":false,"fork":false,"pushed_at":"2025-06-18T11:19:13.000Z","size":314,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-18T11:49:35.107Z","etag":null,"topics":["ai","chatbot","decred","lightning-network"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/karamble.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-04-12T16:39:52.000Z","updated_at":"2025-06-18T11:19:17.000Z","dependencies_parsed_at":"2025-04-12T18:39:40.196Z","dependency_job_id":"5e484d5c-c48b-4231-8cc5-a3b89e0f0dc5","html_url":"https://github.com/karamble/braibot","commit_stats":null,"previous_names":["karamble/braibot"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/karamble/braibot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karamble%2Fbraibot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karamble%2Fbraibot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karamble%2Fbraibot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karamble%2Fbraibot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/karamble","download_url":"https://codeload.github.com/karamble/braibot/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karamble%2Fbraibot/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265787756,"owners_count":23828494,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","chatbot","decred","lightning-network"],"created_at":"2025-07-18T15:40:03.202Z","updated_at":"2025-07-18T15:40:03.725Z","avatar_url":"https://github.com/karamble.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Braibot\n\n**Braibot** is an AI-powered assistant for the **[Bison Relay](https://bisonrelay.org/)** private messaging platform.\n\nIt connects to the **[Fal.ai](https://fal.ai/)** service to let you generate images, videos, and audio directly within your private chats. To pay for the AI services, Braibot uses small, private payments over the **[Decred](https://decred.org/)** Lightning Network.\n\n*(Braibot is built using the helpful [BisonBotKit](https://github.com/vctt94/bisonbotkit) framework).*\n\n## What Can Braibot Do?\n\n*   **AI Image Generation:** Create unique images from text descriptions using various AI models.\n*   **AI Image Transformation:** Modify existing images using AI (e.g., apply artistic styles).\n*   **AI Video Generation:** Create short video clips from text descriptions or existing images.\n*   **AI Text-to-Speech:** Convert your text messages into spoken audio clips using different voices.\n*   **Decred Lightning Payments:** Add funds to your bot balance by sending tips via Bison Relay's built-in Decred Lightning Network feature. The bot automatically uses your balance to pay for AI tasks.\n*   **Easy Model Selection:** List available AI models for different tasks and choose the one you prefer.\n*   **Balance Checking:** Check your current DCR balance with the bot at any time.\n*   **Simple Commands:** Interact with the bot using straightforward commands in your private chat.\n*   **Helpful Guidance:** Get general help or specific details about commands and AI models.\n\n## What You Need to Use Braibot\n\n1.  **Bison Relay:** You need to have Bison Relay installed and an active account.\n2.  **Fal.ai Account \u0026 API Key:** Sign up at [Fal.ai](https://fal.ai/), get an API key, and add some credits to pay for the AI generation.\n3.  **Decred:** You'll need some Decred (DCR) if you want users (or yourself) to be able to add funds to the bot by sending tips over the Lightning Network.\n\n## Setting Up Braibot\n\n*(These steps are for the person running the bot server).*\n\n1.  **Get the Code:** Download or clone the Braibot code from its repository.\n    ```bash\n    git clone https://github.com/karamble/braibot.git\n    cd braibot\n    ```\n2.  **Build the Bot:** Compile the bot application.\n    ```bash\n    go build\n    ```\n3.  **Configure Bison Relay:** Ensure your Bison Relay client is configured to allow external programs (like Braibot) to connect to it via its RPC interface. This usually involves editing your `brclient.conf` file to enable the `clientrpc` settings (like `jsonrpclisten`, `rpccertpath`, etc.). Refer to Bison Relay documentation for details.\n4.  **Configure Braibot:**\n    *   The first time you run Braibot, it will try to find your Bison Relay configuration and create its own configuration directory (usually `~/.braibot/`).\n    *   It will create a `braibot.conf` file inside that directory.\n    *   The bot will likely ask you for your Fal.ai API key during this first run if it's not already in the config file.\n    *   You can also manually edit `~/.braibot/braibot.conf` and add your key like this:\n        `falapikey=your-fal-ai-api-key`\n\n## Running Braibot\n\n1.  **Start Bison Relay:** Make sure your Bison Relay client is running.\n2.  **Start Braibot:** Run the compiled program.\n    ```bash\n    ./braibot\n    ```\n    *(You might need to run it from the directory containing the code or provide the full path).*\n\n## Using Braibot (Commands)\n\nOnce the bot is running and you've added it as a contact in Bison Relay, send it these commands in a private chat:\n\n*   **`!help`**: Shows the main help message, including your current balance and selected models.\n*   **`!help [command]`**: Shows detailed help for a specific command (e.g., `!help text2image`).\n*   **`!help [command] [model]`**: Shows details about a specific AI model for a command (e.g., `!help text2image fast-sdxl`).\n*   **`!balance`**: Shows your current DCR balance held by the bot. (Add funds by sending tips!).\n*   **`!rate`**: Shows the current DCR/USD exchange rate used for pricing AI tasks.\n*   **`!listmodels [task]`**: Lists available AI models for a task. Tasks are: `text2image`, `image2image`, `text2speech`, `image2video`, `text2video`.\n    *   Example: `!listmodels text2image`\n*   **`!setmodel [task] [model_name]`**: Sets the default AI model you want to use for a specific task. Use a model name from `!listmodels`.\n    *   Example: `!setmodel text2image fast-sdxl`\n*   **`!text2image [your text prompt]`**: Creates an image from your text description using your currently selected text-to-image model.\n    *   Example: `!text2image a photo of an astronaut riding a horse on the moon`\n*   **`!image2image [image URL] [optional prompt]`**: Transforms the image at the URL using your selected image-to-image model. Some models might use the optional text prompt.\n    *   Example: `!image2image https://example.com/photo.jpg turn this into a van gogh painting`\n*   **`!image2video [image URL] [optional prompt]`**: Creates a video from the image at the URL using your selected image-to-video model.\n    *   Example: `!image2video https://example.com/cat.jpg make the cat slowly blink`\n*   **`!text2video [your text prompt]`**: Creates a video from your text description using your selected text-to-video model.\n    *   Example: `!text2video cinematic drone shot flying over a futuristic city`\n*   **`!text2speech [optional voice ID] [text to speak]`**: Creates an audio clip of the text being spoken. If you don't specify a voice ID, a default voice is used. Check `!help text2speech` for available voice IDs.\n    *   Example: `!text2speech Hello from BraiBot!`\n    *   Example: `!text2speech Friendly_Person How are you today?`\n\n## Troubleshooting Tips\n\n*   **Bot not responding?** Make sure your Bison Relay client is running and that Braibot is running and connected to it. Check the Braibot logs for connection errors.\n*   **Commands failing?**\n    *   Check your balance using `!balance`. You might need to send the bot a tip.\n    *   Make sure you've entered the command correctly (`!help` is your friend!).\n    *   Ensure your Fal.ai account has credits.\n\n## Contributing\n\n(Standard contributing guidelines - Fork, Branch, Commit, Push, Pull Request)\n\n## License\n\nThis project uses the ISC License. See the LICENSE file for details.\n\n## Acknowledgments\n\n*   [Bison Relay](https://github.com/companyzero/bisonrelay/)\n*   [BisonBotKit](https://github.com/vctt94/bisonbotkit)\n*   [Fal.ai](https://fal.ai/)\n*   [Decred](https://decred.org/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaramble%2Fbraibot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkaramble%2Fbraibot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkaramble%2Fbraibot/lists"}