Hubot v3 aims to be a bot framework optimized for developers and developer workflows, with great integration with the most popular chat clients and developer tools, and an active community that is sharing scripts and best practices.
This roadmap represents some of priorities for us over the next couple months. Issues or pull requests will be opened to discuss each of these items as they progress.
1. Return to a “maintained” status
- Create a Hubot core team with at least 2 GitHub employees and at least 1 community member. The core team is @technicalpickles, @bkeepers, @mose, and @gr2m (#1323)
- Document all maintainer processes (triage, release, etc.)
- Create an issue template that addresses common requests
- Configure automation (probot stale, Greenkeeper, semantic-release)
- Review all open PRs and triage open issues
- Establish a release process and regular release cadence of the first Tuesday of every month.
- Establish a first-responder rotation, which will aim to reduce the average time to first response on all new Issues and PRs to 48 hours.
2. Modernize the community
- Consolidate all officially supported Hubot projects into a single GitHub organization. This will include github/hubot and a handful of supported scripts, but will not include all community scripts in https://github.com/hubot-scripts (#1327)
- Create a community forum to provide a place for people to ask questions, get help, and share best practices. Discourse is the obvious choice here.
- Choose a chat platform for maintainers and contributors, and post notices in various existing places (#hubot on freenode, github/hubot on Gitter). Slack is the obvious choice here. Join us on Slack.
- Add a code of conduct based on http://contributor-covenant.org/ and processes to enforce it in all official spaces. (#1334)
- Publish weekly community updates (blog, newsletter, etc) which highlight recent and upcoming changes, give shoutouts to contributors / maintainers, and maybe mention interesting uses of Hubot
- Create Hubot Evolution—inspired by Swift Evolution—for proposing user-visible enhancements. (hubotio/evolution#1)
3. Modernize the project
Each of these proposals will go through the Hubot Evolution process.
- Revisit new bot generator (yeoman has a ton of dependencies, some of which can be error prone on windows)
- Support for running multiple adapters and archetypes (chat, deployment, CI, github, etc)
- Merge with @probot and build out first class GitHub integration.
- Introduce "Commands”, an explicit interface for registering commands (like Slack’s slash commands) as an alternative to regular expressions
- Publish a ChatOps RPC spec and implement support for Hubot acting as both a client and a server.
- Support rich messages and interactions on platforms that support it
- Publish a public script directory backed by NPM