Documentation
¶
Index ¶
- func CleanVersion(version string) string
- func CompareVersions(v1, v2 string) (int, error)
- func ExtractMajorVersion(version string) (int, error)
- func FuzzyMatch(str, query string) bool
- func IntPtr(i int) *int
- func MakeRequest(client HTTPClient, method, url string, headers map[string]string) ([]byte, error)
- func MakeRequestWithLogger(client HTTPClient, logger *logrus.Logger, method, url string, ...) ([]byte, error)
- func NewToolResultJSON(data interface{}) (*mcp.CallToolResult, error)
- func ParseVersion(version string) (major, minor, patch int, err error)
- func StringPtr(s string) *string
- type BedrockModel
- type BedrockModelSearchResult
- type DockerImageQuery
- type DockerImageVersion
- type GitHubAction
- type GitHubActionVersion
- type GoModule
- type GoReplace
- type GoRequire
- type GradleDependency
- type HTTPClient
- type MavenDependency
- type NpmDependencies
- type PackageVersion
- type PyProjectDependencies
- type SwiftDependency
- type VersionConstraint
- type VersionConstraints
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CleanVersion ¶
CleanVersion removes any leading version prefix (^, ~, >, =, <, etc.) from a version string
func CompareVersions ¶
CompareVersions compares two version strings Returns:
-1 if v1 < v2 0 if v1 == v2 1 if v1 > v2
func ExtractMajorVersion ¶
ExtractMajorVersion extracts the major version from a version string
func FuzzyMatch ¶
FuzzyMatch performs a simple fuzzy match between a string and a query
func MakeRequest ¶
MakeRequest makes an HTTP request and returns the response body
func MakeRequestWithLogger ¶
func MakeRequestWithLogger(client HTTPClient, logger *logrus.Logger, method, url string, headers map[string]string) ([]byte, error)
MakeRequestWithLogger makes an HTTP request with logging and returns the response body
func NewToolResultJSON ¶
func NewToolResultJSON(data interface{}) (*mcp.CallToolResult, error)
NewToolResultJSON creates a new tool result with JSON content
func ParseVersion ¶
ParseVersion parses a version string into major, minor, and patch components
Types ¶
type BedrockModel ¶
type BedrockModel struct {
Provider string `json:"provider"`
ModelName string `json:"modelName"`
ModelID string `json:"modelId"`
RegionsSupported []string `json:"regionsSupported"`
InputModalities []string `json:"inputModalities"`
OutputModalities []string `json:"outputModalities"`
StreamingSupported bool `json:"streamingSupported"`
}
BedrockModel represents an AWS Bedrock model
type BedrockModelSearchResult ¶
type BedrockModelSearchResult struct {
Models []BedrockModel `json:"models"`
TotalCount int `json:"totalCount"`
}
BedrockModelSearchResult represents search results for AWS Bedrock models
type DockerImageQuery ¶
type DockerImageQuery struct {
Image string `json:"image"`
Registry string `json:"registry,omitempty"`
CustomRegistry string `json:"customRegistry,omitempty"`
Limit int `json:"limit,omitempty"`
FilterTags []string `json:"filterTags,omitempty"`
IncludeDigest bool `json:"includeDigest,omitempty"`
}
DockerImageQuery represents a query for Docker image tags
type DockerImageVersion ¶
type DockerImageVersion struct {
Name string `json:"name"`
Tag string `json:"tag"`
Registry string `json:"registry"`
Digest *string `json:"digest,omitempty"`
Created *string `json:"created,omitempty"`
Size *string `json:"size,omitempty"`
}
DockerImageVersion represents version information for a Docker image
type GitHubAction ¶
type GitHubAction struct {
Owner string `json:"owner"`
Repo string `json:"repo"`
CurrentVersion *string `json:"currentVersion,omitempty"`
}
GitHubAction represents a GitHub Action
type GitHubActionVersion ¶
type GitHubActionVersion struct {
Owner string `json:"owner"`
Repo string `json:"repo"`
CurrentVersion *string `json:"currentVersion,omitempty"`
LatestVersion string `json:"latestVersion"`
PublishedAt *string `json:"publishedAt,omitempty"`
URL *string `json:"url,omitempty"`
}
GitHubActionVersion represents version information for a GitHub Action
type GoModule ¶
type GoModule struct {
Module string `json:"module"`
Require []GoRequire `json:"require,omitempty"`
Replace []GoReplace `json:"replace,omitempty"`
}
GoModule represents a Go module in a go.mod file
type GoReplace ¶
type GoReplace struct {
Old string `json:"old"`
New string `json:"new"`
Version string `json:"version,omitempty"`
}
GoReplace represents a replacement in a go.mod file
type GradleDependency ¶
type GradleDependency struct {
Configuration string `json:"configuration"`
Group string `json:"group"`
Name string `json:"name"`
Version string `json:"version,omitempty"`
}
GradleDependency represents a dependency in a Gradle build.gradle file
type HTTPClient ¶
HTTPClient is an interface for making HTTP requests
var ( // DefaultHTTPClient is the default HTTP client DefaultHTTPClient HTTPClient = &http.Client{ Timeout: 30 * time.Second, } )
type MavenDependency ¶
type MavenDependency struct {
GroupID string `json:"groupId"`
ArtifactID string `json:"artifactId"`
Version string `json:"version,omitempty"`
Scope string `json:"scope,omitempty"`
}
MavenDependency represents a dependency in a Maven pom.xml file
type NpmDependencies ¶
NpmDependencies represents dependencies in a package.json file
type PackageVersion ¶
type PackageVersion struct {
Name string `json:"name"`
CurrentVersion *string `json:"currentVersion,omitempty"`
LatestVersion string `json:"latestVersion"`
Registry string `json:"registry"`
Skipped bool `json:"skipped,omitempty"`
SkipReason string `json:"skipReason,omitempty"`
}
PackageVersion represents version information for a package
type PyProjectDependencies ¶
type PyProjectDependencies struct {
Dependencies map[string]string `json:"dependencies,omitempty"`
OptionalDependencies map[string]map[string]string `json:"optional-dependencies,omitempty"`
DevDependencies map[string]string `json:"dev-dependencies,omitempty"`
}
PyProjectDependencies represents dependencies in a pyproject.toml file
type SwiftDependency ¶
type SwiftDependency struct {
URL string `json:"url"`
Version string `json:"version,omitempty"`
Requirement string `json:"requirement,omitempty"`
}
SwiftDependency represents a dependency in a Swift Package.swift file
type VersionConstraint ¶
type VersionConstraint struct {
MajorVersion *int `json:"majorVersion,omitempty"`
ExcludePackage bool `json:"excludePackage,omitempty"`
}
VersionConstraint represents constraints for package version updates
type VersionConstraints ¶
type VersionConstraints map[string]VersionConstraint
VersionConstraints maps package names to their constraints