Coder Social home page Coder Social logo
ClaudeBot photo

claudebot Goto Github PK

repos: 30.0 gists: 0.0

Name: ClaudeBot

Type: Organization

Bio: [No longer actively maintained] Hubot on steroids. Welcome to world wide web domination #ChatOps

Location: The Cloud

ClaudeBot

Build Status Dependency Status

A general-purpose IRC bot powered by Github's Hubot.

We are in the midst of revising our documentation for ClaudeBot to reflect changes in Hubot, community scripts, and our personal scripts. Suggestions and contributions are welcomed.

About

Hubot is Github's extendable and scriptable chat bot.

ClaudeBot is a personalised instance of Hubot, and it currently reside in the FyreChat IRC network. It is configured to be deployed on Heroku, but efforts are being made to migrate it to a self-managed platform.

It leverages on Hubot's core scripts, and tries to maintain consistency with its standards / conventions. In practice, this philosophy may be omitted if an alternative or a need for immediate action is required. Simply put, we may deviate from Hubot's codebase, and community if we have to.

It is designed to bring the power of numerous web APIs onto a single chat interface.

Running

If you are just getting started with node.js, npm and Hubot, please check out Hubot's documentation. This documentation assumes you have reasonable experience with the aforementioned technologies.

Locally (Shell)

Fork and/or download this repository. Now, execute in the project directory:

% bin/hubot

Deployment

Refer to Hubot's bin/hubot file for a list of available flags. Change Procfile accordingly if you are deploying it on Heroku. Hubot's official documentation provides more thorough information on deployment.

If you would like to change the bot's name (currently set to ClaudeBot), modify ClaudeBot's bin/hubot (the bot's alias is defined in this file as well). This is not the same as Hubot's bin/hubot (which is a dependency of ClaudeBot).

Persistence

ClaudeBot's brain data (in-memory key-value store) is frequently synchronised to and from a Redis store (RedisLabs). Scripts may use robot.brain to store and retrieve long-term data (e.g. user information).

It previously relied on Dweet.io for persistence, but it has since been deprecated as it is not practical in the long-run.

Environment Variables

The following environment variables (the bot's configuration) are required for certain aspects of the bot to work:

IRC Adapter

  • HUBOT_IRC_SERVER
  • HUBOT_IRC_ROOMS (comma-separated)
  • HUBOT_IRC_NICK

View hubot-irc documentation for more information. You may also decide to change the bot's adapter. Alter the -a or --adapter flag (see Procfile for an example on how it is used).

Services

  • REDIS_URL
  • GOOGLE_API_KEY
  • PASTEBIN_API_KEY
  • STEAM_API_KEY
  • TWITCH_API_KEY

Ensure they are set to avoid any unexpected behaviour or errors. Alternatively, you may disable the scripts that require them (e.g. hubot-steam-webapi uses the STEAM_API_KEY).

Scripts

ClaudeBot neither relies on nor supports the old hubot-scripts repository. Scripts may be added via npm and external-scripts.json, or through the scripts/ directory (search npm or visit the organisation for a list of available scripts). We strongly discourage the use of hubot-scripts.

Commands

Refer to the installed / external scripts' documentation (i.e. their README) or visit the online help page for ClaudeBot.

Assuming your copy of the bot is online, its own help page is located at localhost:8080/BotName/help by default. The default web port is 5000 if it is executed using foreman, i.e. Procfile. Also, typing ! help (on your bot's adapter interface, e.g. Shell, IRC, Slack, etc) will return a list of available commands. ! is an alias for ClaudeBot, and may be used interchangeably.

Community

We love developing scripts, and improvements for Hubot. It is also a good learning experience and we welcome you to join us!

We are available to help you at FyreChat's #sandbox channel. Feel free to open up issues or pull requests. Comments, feature requests, bug reports, questions, etc will be entertained.

ClaudeBot's Projects

claudebot icon claudebot

:cloud: A general-purpose IRC bot powered by Github's Hubot.

hippie icon hippie

:speech_balloon: A simple, but extensible webhooks-based HipChat bot written in Golang.

hubot icon hubot

A customizable life embetterment robot.

hubot-ab icon hubot-ab

:game_die: A Hubot script for Muan's AB. A 4-digit number guessing game.

hubot-archive-today icon hubot-archive-today

:package: A Hubot script for archiving the contents of a URL on archive.is (formerly archive.today).

hubot-cc icon hubot-cc

:loudspeaker: A Hubot script for defining aliases to easily @mention groups of people in a room or a global context.

hubot-googl icon hubot-googl

:link: A Hubot script for generating short goo.gl URLs with public click analytics.

hubot-help icon hubot-help

A hubot script to show available hubot commands

hubot-hitbox icon hubot-hitbox

:tv: A Hubot script for interacting with Hitbox.tv API.

hubot-links icon hubot-links

:globe_with_meridians: A Hubot script for keeping track of what's been shared.

hubot-longtext icon hubot-longtext

:paperclip: A Hubot script for handling long messages by returning a link to an online paste containing the message.

hubot-mail icon hubot-mail

:mailbox: A Hubot script for preparing messages that will be delivered upon the recipient's next activity (i.e. joins room, enters a message).

hubot-manpages icon hubot-manpages

:notebook: A Hubot script for searching, and viewing examples in a collection of simplified, and community-driven man pages (powered by http://tldr-pages.github.io/).

hubot-memegen-link icon hubot-memegen-link

:trollface: A Hubot script for creating memes from templates using memegen.link.

hubot-messenger-bot icon hubot-messenger-bot

:electric_plug: A Hubot adapter for Facebook Messenger Platform (Bots) with zero external dependencies.

hubot-paste icon hubot-paste

:clipboard: A Hubot script for creating a new paste on several online services: Dpaste.com and Pastebin.com.

hubot-rbac icon hubot-rbac

:closed_lock_with_key: A Hubot script for restricting access to commands through role-based access control (RBAC), and Listener IDs.

hubot-search icon hubot-search

:mag: An extendable Hubot script for querying several search engine services: Google Custom Search, Azure Marketplace - Bing Search API v2, and Microsoft Cognitive Services - Bing Search API v5.

hubot-skype-bot icon hubot-skype-bot

:electric_plug: A Hubot adapter for the official Skype Bots API (Preview).

hubot-steam-webapi icon hubot-steam-webapi

:video_game: A Hubot script for interacting with Steam Web API (primarily for Dota 2).

hubot-telegram-bot icon hubot-telegram-bot

:electric_plug: A Hubot adapter for Telegram Bots with zero external dependencies.

hubot-twitch icon hubot-twitch

:tv: A Hubot script for interacting with Twitch.tv API.

hubot-wikipedia icon hubot-wikipedia

:books: A Hubot script for interacting with Wikipedia's API (searching for articles and returning extracts).

hubot-youtube-info icon hubot-youtube-info

:information_source: Show video metadata when YouTube URLs are seen. [Original: https://github.com/github/hubot-scripts/blob/master/src/scripts/youtube-info.coffee]

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.