feat: initialize Go agent module with config, Makefile and project structure

This commit is contained in:
Claude Agent
2026-03-19 12:08:00 +01:00
parent 0714961dd6
commit d9d0804361
5 changed files with 90 additions and 0 deletions

View File

@@ -0,0 +1,40 @@
package config
import (
"os"
"gopkg.in/yaml.v3"
)
type Config struct {
ServerAddress string `yaml:"server_address"`
AgentID string `yaml:"agent_id"`
HeartbeatInterval int `yaml:"heartbeat_interval"`
TLSEnabled bool `yaml:"tls_enabled"`
}
func Load(path string) (*Config, error) {
cfg := &Config{
ServerAddress: "localhost:5001",
HeartbeatInterval: 60,
}
data, err := os.ReadFile(path)
if err != nil {
if os.IsNotExist(err) {
return cfg, nil
}
return nil, err
}
if err := yaml.Unmarshal(data, cfg); err != nil {
return nil, err
}
return cfg, nil
}
func (c *Config) Save(path string) error {
data, err := yaml.Marshal(c)
if err != nil {
return err
}
return os.WriteFile(path, data, 0600)
}