humanify icon indicating copy to clipboard operation
humanify copied to clipboard

Copilot support

Open blakegearin opened this issue 6 months ago • 7 comments

Just curious if it would be possible to add support for GitHub Copilot?

blakegearin avatar Jun 15 '25 02:06 blakegearin

@blakegearin Can you expand on your idea/how you envisage humanify working together with copilot?

0xdevalias avatar Jun 15 '25 05:06 0xdevalias

After researching more, it seems like the API is not widely accessible (reverse engineered here) and the CLI is in early stages.

Probably the easiest way to integrate is through a VS Code extension chat participant.

blakegearin avatar Jun 15 '25 07:06 blakegearin

@blakegearin I'm not sure what you think that CLI does, but it's a very niche and narrow usecase; and it's been that way for ages.

I didn't look too deeply into the reverse engineered API, but from a quick skim I'm not sure what you're hoping to get out of it; nor am I sure how the VScode chat part is coming into it.

It might help if you take a step back from the implementation details and instead describe the goal you're thinking it will help achieve.

What do you expect the benefit of integrating it would be? What do you think it would allow you to do that isn't already possible. Etc.

Being specific and detailed in describing your idea gives us a far better way to see what you're envisioning; and then from there it's a lot easier to give more useful answers about it/how it might be beneficial/possible/etc; or whether it's not really an idea that makes a lot of sense given the usecase.

0xdevalias avatar Jun 15 '25 09:06 0xdevalias

What do you expect the benefit of integrating it would be?

Copilot allows many different models through one license which is often employer-sponsored. I know many folks who have never (and may never) use Gemini, Claude, or other models directly because of intermediary services like Copilot, Cursor, and T3 Chat. Access to more models (and latest models) is the only benefit I'm aware of.

I'm not sure what you think that CLI does, but it's a very niche and narrow usecase

Correct, that's why I ruled it out. I don't see a clear path forward here, save for an extension, which I presume is out of scope considering this is an NPM package.

blakegearin avatar Jun 15 '25 09:06 blakegearin

Right, ok.

The closest I think you would get to that (off the top of my head), without breaking terms of service using reverse engineered API's/etc is probably copilot extensions:

  • https://github.com/features/copilot/extensions
  • https://github.blog/news-insights/product-news/introducing-github-copilot-extensions/
  • https://docs.github.com/en/copilot/building-copilot-extensions/setting-up-copilot-extensions

Though I think at that stage you're basically implementing something similar to Model Context Protocol (MCP), maybe just more specifically scoped to just GitHub Copilot's implementation of it:

  • https://www.anthropic.com/news/model-context-protocol
  • https://modelcontextprotocol.io/introduction

And if you were going to use those, I think you'd basically need to flip this tool around so that it starts within an existing chat and then that chat calls out to humanify as a tool; rather than how it sort of starts things off and then calls out to the AI API when needed. Though I haven't though that through much.

There's also potentially GitHub models, which has API's; but I don't know that they come under the same 'free usage' type aspect as other copilot stuff (I might be wrong there):

  • https://docs.github.com/en/github-models
  • https://github.blog/changelog/2025-05-15-github-models-api-now-available/

And at that point it's basically just like integrating with another AI API provider I think.

0xdevalias avatar Jun 15 '25 13:06 0xdevalias

And if you were going to use those, I think you'd basically need to flip this tool around so that it starts within an existing chat and then that chat calls out to humanify as a tool; rather than how it sort of starts things off and then calls out to the AI API when needed.

And then if you start to go down that path, then I wonder at what point it sort of diverges from how this tool was originally designed, and/or the scope of it, and starts heading towards something more like this or similar:

  • https://github.com/jehna/humanify/issues/414

0xdevalias avatar Jun 16 '25 00:06 0xdevalias

See also:

  • https://github.com/jehna/humanify/issues/84
  • https://github.com/jehna/humanify/issues/400
  • https://github.com/jehna/humanify/issues/414
  • https://github.com/jehna/humanify/issues/503
  • https://github.com/jehna/humanify/issues/636

0xdevalias avatar Jun 30 '25 03:06 0xdevalias