Files
sproutclaw-web/backend/internal/services/models_config.go
2026-06-13 20:16:09 +08:00

29 lines
609 B
Go

package services
import (
"encoding/json"
"os"
)
// ReadModelsConfig reads models.json as a raw string.
func ReadModelsConfig(path string) (string, error) {
data, err := os.ReadFile(path)
if os.IsNotExist(err) {
return "{}", nil
}
return string(data), err
}
// WriteModelsConfig validates JSON and writes models.json.
func WriteModelsConfig(path, content string) error {
var v any
if err := json.Unmarshal([]byte(content), &v); err != nil {
return err
}
pretty, err := json.MarshalIndent(v, "", " ")
if err != nil {
return err
}
return os.WriteFile(path, append(pretty, '\n'), 0o644)
}