Skip to content

feat: add EvoLink provider config - #104

Open
EvoLinkAI wants to merge 1 commit into
ownpilot:mainfrom
EvoLinkAI:feat/evolink-provider
Open

feat: add EvoLink provider config#104
EvoLinkAI wants to merge 1 commit into
ownpilot:mainfrom
EvoLinkAI:feat/evolink-provider

Conversation

@EvoLinkAI

Copy link
Copy Markdown

Summary

Adds EvoLink as a first-class OpenAI-compatible provider in OwnPilot's config-driven provider system.

  • Adds packages/core/data/providers/evolink.json with https://direct.evolink.ai/v1 and a curated GPT-5 model set
  • Registers evolink in the typed provider ID list
  • Adds Settings UI metadata/category placement so EvoLink appears with other inference providers

Validation

  • pnpm install --frozen-lockfile
  • node - <<'NODE' ... provider JSON sanity check ✅ (evolink provider config OK)
  • pnpm --filter @ownpilot/core exec vitest run src/agent/providers/configs/index.test.ts ✅ 1 file, 126 tests passed, no type errors
  • pnpm --filter @ownpilot/core typecheck
  • pnpm exec eslint packages/core/src/agent/providers/configs/index.ts packages/gateway/src/routes/providers.ts
  • pnpm exec prettier --check packages/core/data/providers/evolink.json packages/core/src/agent/providers/configs/index.ts packages/gateway/src/routes/providers.ts ✅ all matched files use Prettier style
  • pnpm --filter @ownpilot/core build
  • pnpm --filter @ownpilot/gateway typecheck
  • pnpm --filter @ownpilot/gateway exec vitest run src/routes/providers.test.ts ✅ 1 file, 19 tests passed, no type errors
  • Built export/provider factory smoke test via pnpm --filter @ownpilot/gateway exec node --input-type=module ...evolink openai-compatible 4 models default=gpt-5.2
  • Real EvoLink endpoint call with workspace EVOLINK_API_KEYHTTP 200, response OK
  • Real OwnPilot provider-path call through OpenAICompatibleProvider.fromProviderIdWithKey('evolink', ...)provider-path gpt-5.2-2025-12-11: OK

Notes

EvoLink's language API is OpenAI-compatible for chat completions, so this uses the existing generic OpenAICompatibleProvider rather than adding a new provider implementation.

@EvoLinkAI

Copy link
Copy Markdown
Author

Validation evidence from local run:

  • pnpm --filter @ownpilot/core exec vitest run src/agent/providers/configs/index.test.ts → 1 file passed, 126 tests passed, no type errors
  • pnpm --filter @ownpilot/core typecheck → passed
  • pnpm --filter @ownpilot/core build → passed
  • pnpm --filter @ownpilot/gateway typecheck → passed after building @ownpilot/core
  • pnpm --filter @ownpilot/gateway exec vitest run src/routes/providers.test.ts → 1 file passed, 19 tests passed, no type errors
  • pnpm exec eslint packages/core/src/agent/providers/configs/index.ts packages/gateway/src/routes/providers.ts → passed
  • pnpm exec prettier --check packages/core/data/providers/evolink.json packages/core/src/agent/providers/configs/index.ts packages/gateway/src/routes/providers.ts → all matched files use Prettier style
  • Built export smoke test through @ownpilot/core/agentevolink openai-compatible 4 models default=gpt-5.2
  • Direct EvoLink API call to https://direct.evolink.ai/v1/chat/completions with gpt-5.2HTTP 200, response OK
  • OwnPilot provider-path call via OpenAICompatibleProvider.fromProviderIdWithKey('evolink', ...)provider-path gpt-5.2-2025-12-11: OK

@EvoLinkAI
EvoLinkAI force-pushed the feat/evolink-provider branch from 91ee65c to b85a6d8 Compare June 23, 2026 10:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant