provider

package
v0.3.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 29, 2026 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ClaudeProvider

type ClaudeProvider struct {
	// contains filtered or unexported fields
}

func NewClaudeProvider

func NewClaudeProvider(credsPath string) *ClaudeProvider

func NewClaudeProviderWithEndpoint

func NewClaudeProviderWithEndpoint(credsPath, endpoint string) *ClaudeProvider

func (*ClaudeProvider) GetDefaultPath

func (p *ClaudeProvider) GetDefaultPath() string

func (*ClaudeProvider) GetUsage

func (p *ClaudeProvider) GetUsage() (*Usage, error)

func (*ClaudeProvider) IsAvailable

func (p *ClaudeProvider) IsAvailable() bool

func (*ClaudeProvider) Name

func (p *ClaudeProvider) Name() string

type CodexProvider

type CodexProvider struct {
	// contains filtered or unexported fields
}

func NewCodexProvider

func NewCodexProvider(authPath string) *CodexProvider

func NewCodexProviderWithEndpoint

func NewCodexProviderWithEndpoint(authPath, endpoint string) *CodexProvider

func (*CodexProvider) GetDefaultPath

func (p *CodexProvider) GetDefaultPath() string

func (*CodexProvider) GetUsage

func (p *CodexProvider) GetUsage() (*Usage, error)

func (*CodexProvider) IsAvailable

func (p *CodexProvider) IsAvailable() bool

func (*CodexProvider) Name

func (p *CodexProvider) Name() string

type OpenCodeProvider

type OpenCodeProvider struct {
	// contains filtered or unexported fields
}

func NewOpenCodeProvider

func NewOpenCodeProvider(apiKey string) *OpenCodeProvider

func NewOpenCodeProviderWithEndpoint

func NewOpenCodeProviderWithEndpoint(apiKey, endpoint string) *OpenCodeProvider

func (*OpenCodeProvider) GetUsage

func (p *OpenCodeProvider) GetUsage() (*Usage, error)

func (*OpenCodeProvider) IsAvailable

func (p *OpenCodeProvider) IsAvailable() bool

func (*OpenCodeProvider) Name

func (p *OpenCodeProvider) Name() string

type Provider

type Provider interface {
	// Name 返回 provider 名称
	Name() string
	// GetUsage 获取当前配额使用情况
	GetUsage() (*Usage, error)
	// IsAvailable 检查认证信息是否可用
	IsAvailable() bool
}

Provider 定义了获取用量数据的接口

type QuotaWindow

type QuotaWindow struct {
	Status  string    `json:"status"`
	Percent int       `json:"percent"`
	ResetAt time.Time `json:"resetAt"`
}

QuotaWindow 表示一个配额窗口

type Usage

type Usage struct {
	Provider string      `json:"provider"`
	PlanType string      `json:"planType"`
	Rolling  QuotaWindow `json:"rolling"`
	Weekly   QuotaWindow `json:"weekly"`
	Monthly  QuotaWindow `json:"monthly"`
	RawData  interface{} `json:"rawData,omitempty"`
}

Usage 表示配额使用情况

type VolcengineProvider

type VolcengineProvider struct {
	// contains filtered or unexported fields
}

func NewVolcengineProvider

func NewVolcengineProvider(apiKey string) *VolcengineProvider

func NewVolcengineProviderWithEndpoint

func NewVolcengineProviderWithEndpoint(apiKey, endpoint string) *VolcengineProvider

func (*VolcengineProvider) GetUsage

func (p *VolcengineProvider) GetUsage() (*Usage, error)

func (*VolcengineProvider) IsAvailable

func (p *VolcengineProvider) IsAvailable() bool

func (*VolcengineProvider) Name

func (p *VolcengineProvider) Name() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL