(data []byte)
| 92 | } |
| 93 | |
| 94 | func parseRegistry(data []byte) (*Registry, error) { |
| 95 | var raw struct { |
| 96 | Tools map[string]Tool `yaml:"tools"` |
| 97 | } |
| 98 | if err := yaml.Unmarshal(data, &raw); err != nil { |
| 99 | return nil, fmt.Errorf("tools: parse: %w", err) |
| 100 | } |
| 101 | for name, t := range raw.Tools { |
| 102 | t.Name = name |
| 103 | raw.Tools[name] = t |
| 104 | } |
| 105 | return &Registry{Tools: raw.Tools}, nil |
| 106 | } |
| 107 | |
| 108 | // Get returns a tool by its tools.yaml key. |
| 109 | func (r *Registry) Get(name string) (Tool, bool) { |
no outgoing calls