{"id":22863509,"url":"https://github.com/philnash/langflow-bluesky-bot","last_synced_at":"2026-05-19T14:39:01.239Z","repository":{"id":267733656,"uuid":"902187672","full_name":"philnash/langflow-bluesky-bot","owner":"philnash","description":"A simple bot that connects a Bluesky account to Langflow to create responses","archived":false,"fork":false,"pushed_at":"2024-12-12T04:47:12.000Z","size":14,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-08-31T13:38:39.443Z","etag":null,"topics":["bluesky","bluesky-bot","datastax","genai","langflow"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/philnash.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}},"created_at":"2024-12-12T04:41:39.000Z","updated_at":"2025-06-07T17:48:06.000Z","dependencies_parsed_at":"2024-12-12T05:26:36.173Z","dependency_job_id":"9fe74daf-6e46-4c7c-a70c-526730123e3b","html_url":"https://github.com/philnash/langflow-bluesky-bot","commit_stats":null,"previous_names":["philnash/langflow-bluesky-bot"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/philnash/langflow-bluesky-bot","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philnash%2Flangflow-bluesky-bot","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philnash%2Flangflow-bluesky-bot/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philnash%2Flangflow-bluesky-bot/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philnash%2Flangflow-bluesky-bot/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/philnash","download_url":"https://codeload.github.com/philnash/langflow-bluesky-bot/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/philnash%2Flangflow-bluesky-bot/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33220327,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-19T07:54:09.561Z","status":"ssl_error","status_checked_at":"2026-05-19T07:54:08.508Z","response_time":58,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["bluesky","bluesky-bot","datastax","genai","langflow"],"created_at":"2024-12-13T11:16:01.130Z","updated_at":"2026-05-19T14:39:01.217Z","avatar_url":"https://github.com/philnash.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Bluesky bots with Langflow\n\nThis is an example of a [Bluesky](https://bsky.social/about) bot that responds to mentions and replies by passing the post text to a flow built with [Langflow](https://docs.datastax.com/en/langflow/index.html) and responding with the result of the flow.\n\n- [The bot](#the-bot)\n  - [Prerequisites](#prerequisites)\n  - [Preparation](#preparation)\n    - [Langflow](#langflow)\n  - [Running the bot](#running-the-bot)\n\n## The bot\n\nThe bot uses the [AT Protocol](https://atproto.com/) to communicate with Bluesky and is powered by [@skyware/bot](https://skyware.js.org/guides/bot/introduction/getting-started/).\n\nIt listens for mentions and replies to an account you provide. When it receives an incoming post it will trigger a Langflow flow with the text from the post, and reply using the output from the flow.\n\n### Prerequisites\n\nTo run this application you will need:\n\n- [Node.js](https://nodejs.org/en) (version 22)\n- [A Bluesky account](https://bsky.app/)\n  - Generate an [app password for the account](https://blueskyfeeds.com/en/faq-app-password), you will need it later\n- A DataStax account ([sign up for a free account here](https://astra.datastax.com/signup))\n  - You can use the [self-hosted version of Langflow](https://www.langflow.org/) but you will need to adjust the code to remove or update how the API key is handled\n- For generative AI flows: accounts API keys for any service you want to use\n\n### Preparation\n\nClone the repo:\n\n```sh\ngit clone https://github.com/philnash/langflow-bluesky-bot.git\ncd langflow-bluesky-bot\n```\n\nInstall the dependencies:\n\n```sh\nnpm install\n```\n\nCopy the `.env.example` file to `.env`:\n\n```sh\ncp .env.example .env\n```\n\nFill in the `.env` file with your Bluesky account name and app password.\n\n#### Langflow\n\nLog into your DataStax account and open the [Langflow dashboard](https://astra.datastax.com/langflow). Create a flow that has a chat input, does some processing in the middle, and returns the result as a chat output.\n\nIf you're getting started with Langflow, the [_Basic Prompting_ template](https://docs.langflow.org/starter-projects-basic-prompting) is the simplest generative AI flow that will work. Make sure you fill in the model component with an API key.\n\nOnce you are happy with the flow, click on the _API_ button. This will show you how to access the flow via API. You will need the URL, which is most easily found on the cURL tab. You will also need an API token, which you can generate from the modal.\n\nOnce you have the URL and token, fill in the rest of the variables in the `.env` file.\n\n### Running the bot\n\nOnce you have all your credentials you can run the application with the following command:\n\n```sh\nnpm run dev\n```\n\nThis runs the app in a development mode where it will recompile and restart when you make a change.\n\nIf you want to run the application without that, you can build it first, which will compile the TypeScript into plain JavaScript.\n\n```sh\nnpm run build\n```\n\nThen you can run the JavaScript directly with:\n\n```sh\nnpm start\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilnash%2Flangflow-bluesky-bot","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fphilnash%2Flangflow-bluesky-bot","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fphilnash%2Flangflow-bluesky-bot/lists"}