feat: add Avian as a named LLM provider#844
Merged
mengzhuo merged 2 commits intosipeed:mainfrom Mar 5, 2026
Merged
Conversation
Contributor
Author
|
Hey @yinwm, would love your review on this when you get a chance. Happy to address any feedback! |
Add Avian (https://avian.io) as an OpenAI-compatible provider with API base https://api.avian.io/v1 and AVIAN_API_KEY env var support. Models: deepseek/deepseek-v3.2, moonshotai/kimi-k2.5, z-ai/glm-5, minimax/minimax-m2.5. Supports chat completions, streaming, and function calling. Changes: - Add Avian to ProvidersConfig struct, IsEmpty(), HasProvidersConfig() - Add avian protocol to factory provider and default API base - Add avian case to legacy provider selection (factory.go) - Add avian migration rule for old config format - Add default model entries to ModelList (deepseek-v3.2, kimi-k2.5) - Add avian to example config - Update AllProviders test count from 18 to 19
183d64f to
a4546ff
Compare
Collaborator
|
@avianion hi, please fix tests |
The TestConvertProvidersToModelList_AllProviders test expected 19 providers but adding Avian brings the total to 20. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
mengzhuo
approved these changes
Mar 5, 2026
hyperwd
pushed a commit
to hyperwd/picoclaw
that referenced
this pull request
Mar 5, 2026
feat: add Avian as a named LLM provider
Contributor
|
@avianion Cool to see Avian added as a provider! The model lineup with deepseek-v3.2, kimi-k2.5, and minimax-m2.5 gives users some interesting options, especially that 1M context window on minimax. We've got the PicoClaw Dev Group on Discord for contributors to collaborate. If you're interested, email |
fishtrees
pushed a commit
to fishtrees/picoclaw
that referenced
this pull request
Mar 12, 2026
feat: add Avian as a named LLM provider
andressg79
pushed a commit
to andressg79/picoclaw
that referenced
this pull request
Mar 30, 2026
feat: add Avian as a named LLM provider
ra1phdd
pushed a commit
to ra1phdd/picoclaw-pkg
that referenced
this pull request
Apr 12, 2026
feat: add Avian as a named LLM provider
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.
Summary
https://api.avian.io/v1, auth viaAVIAN_API_KEYenv vardeepseek/deepseek-v3.2(164K ctx),moonshotai/kimi-k2.5(131K ctx),z-ai/glm-5(131K ctx),minimax/minimax-m2.5(1M ctx)Changes
pkg/config/config.go— AddAvianfield toProvidersConfig, updateIsEmpty()andHasProvidersConfig()pkg/config/defaults.go— Add Avian model entries to defaultModelListpkg/config/migration.go— Add Avian migration rule for legacy config formatpkg/config/migration_test.go— UpdateAllProviderstest count (18 → 19)pkg/providers/factory.go— Addaviancase to explicit and inferred provider selectionpkg/providers/factory_provider.go— Addavianto OpenAI-compatible protocol list andgetDefaultAPIBase()config/config.example.json— Add Avian provider entryUsage
{ "model_list": [ { "model_name": "deepseek-v3.2", "model": "avian/deepseek/deepseek-v3.2", "api_key": "your-avian-api-key", "api_base": "https://api.avian.io/v1" } ] }Or via legacy provider config:
{ "providers": { "avian": { "api_key": "your-avian-api-key" } } }Test plan
go test ./pkg/config/... ./pkg/providers/...)TestConvertProvidersToModelList_AllProvidersupdated for 19 providerscc @yinwm @mengzhuo @alexhoshina — would appreciate a review when you get a chance. This follows the same pattern as previous provider additions (#333, #167, #541).