feat(eve): accept an async token provider in token - #98
Merged
Conversation
Contributor
|
Someone is attempting to deploy a commit to the Vercel Labs Team on Vercel. A member of the Team first needs to authorize it. |
Contributor
|
Thank you for following the naming conventions! 🙏 |
tokentoken
Member
|
@ycarmel Hey! Thanks for the PR, I've made a few small updates and it's almost ready to be merged. We just need the first commit to be signed, otherwise we won't be able to merge the PR. |
ycarmel
force-pushed
the
eve-extension-token-factory
branch
from
August 25, 2026 14:42
c5c47d9 to
5b256ee
Compare
The extension's config schema narrowed `token` to `z.string()` while the SDK underneath (`EveGithubToolsOptions.token`) already accepts `GithubTokenInput = string | (() => Promise<string>)`. Agents that authenticate as a GitHub App mint short-lived installation tokens (≤1h), so a string forces them off the extension and onto the `@github-tools/sdk/eve-runtime` subpath — which, since eve 0.43 made dynamic-tool callbacks durable-by-transform, no longer produces replayable tools from library code. Widening the schema (same `z.custom` shape `connector` already uses) lets those agents mount the extension and pass their token minter directly; `buildSessionOptions` forwards it unchanged.
Re-exporting GithubTokenInput from eve-runtime pulled chat and the PR review example into --affected, where they already fail on unrelated ai version skew.
ycarmel
force-pushed
the
eve-extension-token-factory
branch
from
August 25, 2026 14:44
5b256ee to
e6e7e3a
Compare
Contributor
Author
|
Re-signed the branch (SSH) and force-pushed — all three commits now show Verified. Your two follow-ups are preserved as-is (you remain author; I'm the committer, which is what the ruleset checks). Ready to merge from my side, thanks! |
This was referenced Aug 25, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The extension's config schema narrowed
tokentoz.string()while theSDK underneath (
EveGithubToolsOptions.token) already acceptsGithubTokenInput = string | (() => Promise<string>). Agents thatauthenticate as a GitHub App mint short-lived installation tokens (≤1h),
so a string forces them off the extension and onto the
@github-tools/sdk/eve-runtimesubpath — which, since eve 0.43 madedynamic-tool callbacks durable-by-transform, no longer produces replayable
tools from library code. Widening the schema (same
z.customshapeconnectoralready uses) lets those agents mount the extension and passtheir token minter directly;
buildSessionOptionsforwards it unchanged.Verification
pnpm --filter @github-tools/eve-extension typecheckandbuild(eve extension build) pass.defineDynamic/defineToolresolver overlistEveToolDescriptors/executeGithubEveToolbecause the extension can't take a token factory.Changeset included (
@github-tools/eve-extension: minor).