neurocore.config.schema.NeuroCoreConfig¶
- class neurocore.config.schema.NeuroCoreConfig(/, **data: Any)¶
Bases:
pydantic.BaseModelTop-level NeuroCore configuration model.
Represents the full contents of neurocore.yaml plus any overrides from .env and environment variables.
- project¶
Project metadata (name, version).
- paths¶
Directory paths for skills, blueprints, data, logs.
- logging¶
Logging level, format, optional file output.
- llm¶
Project-level LLM configuration.
- skills¶
Per-skill configuration dicts, keyed by skill name.
- project_root¶
Resolved absolute path to the project root (the directory containing neurocore.yaml). Set by the ConfigLoader, not from YAML.
- project: ProjectConfig = None¶
- paths: PathsConfig = None¶
- logging: LoggingConfig = None¶
- project_root: pathlib.Path = None¶
- resolve_path(relative_path: str) pathlib.Path¶
Resolve a path relative to project_root.
Absolute paths are returned as-is. Relative paths are resolved against self.project_root.
- Parameters:
relative_path – A path string from the config.
- Returns:
Resolved absolute Path.
- property skills_dir: pathlib.Path¶
Resolved absolute path to the skills directory.
- property blueprints_dir: pathlib.Path¶
Resolved absolute path to the blueprints directory.
- property data_dir: pathlib.Path¶
Resolved absolute path to the data directory.
- property logs_dir: pathlib.Path¶
Resolved absolute path to the logs directory.
- get_skill_config(skill_name: str) dict[str, Any]¶
Get configuration for a specific skill.
Returns skill config merged with project-level LLM config as defaults. Skill-level config wins over project-level LLM config.
- Parameters:
skill_name – The skill’s registered name.
- Returns:
Config dict for the skill, or empty dict if not configured.