config

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: May 30, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Overview

Package config loads neo's single configuration file (neo.yaml / ~/.neo/config.yaml / embedded default).

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	Model    string   `yaml:"model"`
	Features Features `yaml:"features"`
	// contains filtered or unexported fields
}

Config is the parsed neo.yaml.

func Load

func Load() (*Config, error)

Load reads the first available config file:

./neo.yaml → ~/.neo/config.yaml → embedded default

First hit wins — no merging.

func (*Config) AgentsFileEnabled

func (c *Config) AgentsFileEnabled() bool

AgentsFileEnabled reports whether AGENTS.md loading is on (default: true).

func (*Config) SkillsEnabled

func (c *Config) SkillsEnabled() bool

SkillsEnabled reports whether skill loading is on (default: true).

func (*Config) Source

func (c *Config) Source() string

Source describes where this Config was loaded from (a file path or "embedded"). Useful in error messages and diagnostics.

type Features

type Features struct {
	AgentsFile *bool `yaml:"agents_file"` // load AGENTS.md into the chat system prompt
	Skills     *bool `yaml:"skills"`      // discover and expand $name skills
}

Features toggles optional, layered capabilities. The core agent loop is never gated by a feature — only capabilities built on top of it. Each flag is a tri-state *bool: nil ("absent from config") falls back to a built-in default, so a minimal neo.yaml still gets the full experience; set a flag to false to turn the capability off explicitly.

Jump to

Keyboard shortcuts

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