maige

maige

Open-source infrastructure for running natural language workflows on your codebase.

Stars: 64

Visit
 screenshot

Maige is a tool designed to simplify repository maintenance by automating the handling of issue labels. Users can quickly set up Maige to let AI manage their issue labels effortlessly. The tool provides guidance on self-hosting, GitHub app integration, environment variables setup, and offers commands for streamlined issue management. Maige aims to streamline the process of managing issues in a repository, making it easier for users to handle tasks related to labeling and tracking issues.

README:

Maige

Repo maintenance made simpler.

Quickly set up Maige and let AI handle your issue labels with ease. Get started at Maige.app.

Self-Hosting

[!NOTE]

Self-hosting is not yet supported, but if you're immune to papercuts, feel free to continue at your own risk.

  • Install dependencies: bun i
  • Set up the environment: vercel env pull or cp .env.example .env
  • Start the app: bun run dev
  • Expose the app: in a separate terminal, run ngrok http 3000

GitHub App Integration

Create a GitHub App for webhooks and repo access. Populate your .env with the app details.

  1. Go to Settings (personal or org) > Developer > GitHub Apps

  2. Copy your app name, ID, and client secret. Add these to your .env.

  3. Callback URL: nGrok URL + GitHub auth endpoint eg. https://abc.ngrok.app/api/auth/callback/github

  4. Webhook URL: nGrok URL + handler path eg. https://abc.ngrok.app/api/webhook/github.

  5. Webhook secret: generate this with openssl rand -hex 32. Add it to your .env.

  6. Permissions: toggle Issue: Read & Write and Pull Request: Read & Write.

  7. Events: toggle issues, issue comments, and pull requests.

  8. Private key: generate a private key. Download it. Run the following command (source) to convert it to the right format:

    openssl pkcs8 -topk8 -inform PEM -outform PEM -nocrypt -in private-key.pem -out private-key-pkcs8.key

    then copy private-key-pkcs8.key's text contents to your .env.

Environment Variables

We use Infisical for a better development experience. To use it, make an account, upload your .env (then delete it), download and authenticate the CLI, then run bun dx:env [your-environment-name] && bun run dev to develop locally.

Dive In

Access Maige through your nGrok URL and link a test repo. Open an issue to test Maige out!

Try these commands:

  • "maige assign me to this issue"
  • "maige remove all labels from this issue"
  • "maige add the 'self-hosting' label anytime someone mentions 'docker'"
  • "maige what packages does this repo use?"

Enjoy streamlined issue management with Maige.

For Tasks:

Click tags to check more tools for each tasks

For Jobs:

Alternative AI tools for maige

Similar Open Source Tools

For similar tasks

For similar jobs