registry

package
v0.5.0 Latest Latest
Warning

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

Go to latest
Published: Sep 2, 2026 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AgentsMDIntegration added in v0.5.0

type AgentsMDIntegration string

AgentsMDIntegration describes the least invasive supported way for a tool to consume AGENTS.md. It is advisory metadata: Agentlink still creates only symlinks and never writes tool-specific import or settings files.

const (
	IntegrationNative       AgentsMDIntegration = "native"
	IntegrationConfigurable AgentsMDIntegration = "configurable"
	IntegrationImport       AgentsMDIntegration = "import"
	IntegrationSymlink      AgentsMDIntegration = "symlink"
	IntegrationUnsupported  AgentsMDIntegration = "unsupported"
)

type Detected

type Detected struct {
	Tool    Tool
	Method  string // "path", "command", or ""
	Details string // which path or command matched
}

Detected holds the result of a tool detection check.

func DetectAll

func DetectAll() []Detected

DetectAll checks which tools from the registry are installed on this system.

type Tool

type Tool struct {
	// Name is the display name of the tool.
	Name string

	// Description is a short description of the tool.
	Description string

	// GlobalConfigPath is the user-level config file the tool reads.
	// Empty if the tool has no global config. Supports ~ prefix.
	GlobalConfigPath string

	// RepoFileName is the filename the tool looks for at repository root.
	// Empty if the tool does not read repo-level files.
	RepoFileName string

	// ReadsAgentsMD indicates whether the tool natively reads AGENTS.md.
	ReadsAgentsMD bool

	// PreferredIntegration overrides the integration inferred from
	// ReadsAgentsMD and RepoFileName. Use it when a tool supports a less
	// invasive option such as configuration or an explicit import.
	PreferredIntegration AgentsMDIntegration

	// SupportsNestedRepoFile indicates that the tool discovers its repo file
	// below the repository root. Leave false unless the behavior is documented
	// and deterministic; nested scanning fails closed for unknown tools.
	SupportsNestedRepoFile bool

	// NestedSupportReference identifies the public documentation used to
	// justify SupportsNestedRepoFile. Keep this empty when nested discovery is
	// not enabled so registry validation can fail closed on unsupported claims.
	NestedSupportReference string

	// DetectPaths are directories or files whose existence indicates the tool
	// is installed. Checked in order; first match wins. Supports ~ prefix.
	DetectPaths []string

	// DetectCommands are CLI commands checked via PATH lookup.
	// Checked only if DetectPaths yields no match.
	DetectCommands []string
}

Tool represents a known AI coding agent/tool and its configuration paths.

func All

func All() []Tool

All returns the complete registry of known AI coding tools. Add new tools here. Keep alphabetical by Name.

func (Tool) AgentsMDIntegration added in v0.5.0

func (t Tool) AgentsMDIntegration() AgentsMDIntegration

AgentsMDIntegration returns the preferred AGENTS.md integration for a tool.

Jump to

Keyboard shortcuts

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