config

package
v1.4.0 Latest Latest
Warning

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

Go to latest
Published: Dec 16, 2025 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func SaveConfig

func SaveConfig(config *Config) error

func SupportedTicketServices added in v1.3.0

func SupportedTicketServices() []string

func SupportedVCSProviders added in v1.3.0

func SupportedVCSProviders() []string

Types

type AI added in v1.1.0

type AI string
const (
	AIGemini AI = "gemini"
	AIOpenAI AI = "openai"
)

func SupportedAIs added in v1.3.0

func SupportedAIs() []AI

type AIConfig added in v1.1.0

type AIConfig struct {
	ActiveAI AI           `json:"active_ai"`
	Models   map[AI]Model `json:"models"`
}

type AIProviderConfig added in v1.4.0

type AIProviderConfig struct {
	APIKey      string  `json:"api_key"`
	Model       string  `json:"model,omitempty"`
	Temperature float32 `json:"temperature,omitempty"`
	MaxTokens   int     `json:"max_tokens,omitempty"`
}

AIProviderConfig contiene la configuración específica de cada proveedor de IA

type Config

type Config struct {
	Language         string `json:"language"`
	UseEmoji         bool   `json:"use_emoji"`
	SuggestionsCount int    `json:"suggestions_count"`
	PathFile         string `json:"path_file"`

	AIProviders map[string]AIProviderConfig `json:"ai_providers,omitempty"`
	AIConfig    AIConfig                    `json:"ai_config"`

	TicketProviders     map[string]TicketProviderConfig `json:"ticket_providers,omitempty"`
	ActiveTicketService string                          `json:"active_ticket_service,omitempty"`
	UseTicket           bool                            `json:"use_ticket,omitempty"`

	VCSConfigs        map[string]VCSConfig `json:"vcs_configs"`
	ActiveVCSProvider string               `json:"active_vcs_provider,omitempty"`
	UpdateChangelog   bool                 `json:"update_changelog"`
	VersionFile       string               `json:"version_file,omitempty"`
	VersionPattern    string               `json:"version_pattern,omitempty"`
}

func LoadConfig

func LoadConfig(path string) (*Config, error)

type Model added in v1.1.0

type Model string
const (
	ModelGeminiV25Pro       Model = "gemini-2.5-pro"
	ModelGeminiV25Flash     Model = "gemini-2.5-flash"
	ModelGeminiV25FlashLite Model = "gemini-2.5-flash-lite"

	// TODO: Agregar mas modelos para openai o otros...
	ModelGPTV4o     Model = "gpt-4o"
	ModelGPTV4oMini Model = "gpt-4o-mini"
)

func DefaultModelForAI added in v1.3.0

func DefaultModelForAI(ai AI) Model

func ModelsForAI added in v1.3.0

func ModelsForAI(ai AI) []Model

type TicketProviderConfig added in v1.4.0

type TicketProviderConfig struct {
	APIKey   string            `json:"api_key"`
	BaseURL  string            `json:"base_url,omitempty"`
	Email    string            `json:"email,omitempty"`
	Username string            `json:"username,omitempty"`
	Extra    map[string]string `json:"extra,omitempty"` // Para configuraciones específicas del proveedor
}

TicketProviderConfig contiene la configuración específica de cada proveedor de tickets

type VCSConfig added in v1.2.0

type VCSConfig struct {
	Provider string `json:"provider"` // github o gitlab lo que se te cante
	Token    string `json:"token,omitempty"`
	Owner    string `json:"owner,omitempty"`
	Repo     string `json:"repo,omitempty"`
}

Jump to

Keyboard shortcuts

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