refactor to use octokit