Appearance
Class: Config
Defined in: packages/ema/src/config.ts:305
This class contains definition of all the configuration for the EMA.
The default load paths is given by Config.findConfigFile.
Examples
js
// Loads configuration from the default load paths.
const config = Config.load();js
// Loads configuration in YAML format from a specific file.
const config = Config.fromYaml("/path/to/config.yaml");Constructors
Constructor
ts
new Config(
llm,
agent,
tools,
mongo,
system): Config;Defined in: packages/ema/src/config.ts:306
Parameters
llm
LLM configuration
agent
Agent configuration
tools
Tools configuration
mongo
MongoDB configuration
system
System configuration
Returns
Config
Properties
agent
ts
readonly agent: AgentConfig;Defined in: packages/ema/src/config.ts:314
Agent configuration
llm
ts
readonly llm: LLMConfig;Defined in: packages/ema/src/config.ts:310
LLM configuration
mongo
ts
readonly mongo: MongoConfig;Defined in: packages/ema/src/config.ts:322
MongoDB configuration
system
ts
readonly system: SystemConfig;Defined in: packages/ema/src/config.ts:326
System configuration
tools
ts
readonly tools: ToolsConfig;Defined in: packages/ema/src/config.ts:318
Tools configuration
Accessors
baseTools
Get Signature
ts
get baseTools(): Tool[];Defined in: packages/ema/src/config.ts:458
Returns
Tool[]
systemPrompt
Get Signature
ts
get systemPrompt(): string;Defined in: packages/ema/src/config.ts:445
Gets the system prompt file path.
Returns
string
Methods
assignEnv()
ts
assignEnv(): this;Defined in: packages/ema/src/config.ts:352
Assigns environment variables to the config.
Returns
this
findConfigFile()
ts
static findConfigFile(filename): string | null;Defined in: packages/ema/src/config.ts:489
Find configuration file with priority order
Search for config file in the following order of priority:
packages/ema/src/config/{filename}in current directory (development mode){data}/ema/config/{filename}in user home directory{package}/config/{filename}in package installation directory
The table below shows the {data} directory for different platforms:
| Platform | Value | Example |
|---|---|---|
| Linux | $XDG_DATA_HOME or $HOME/.local/share | /home/alice/.local/share |
| macOS | $HOME/Library/Application Support | /Users/Alice/Library/Application Support |
| Windows | {FOLDERID_LocalAppData} | C:\Users\Alice\AppData\Local |
Parameters
filename
string
Configuration file name (e.g., "config.yaml", "mcp.json", "system_prompt.md")
Returns
string | null
Path to found config file, or null if not found
fromYaml()
ts
static fromYaml(configPath): Config;Defined in: packages/ema/src/config.ts:387
Loads configuration from YAML file
Parameters
configPath
string
Configuration file path
Returns
Config
Config instance
getDefaultConfigPath()
ts
static getDefaultConfigPath(): string;Defined in: packages/ema/src/config.ts:511
Get the default config file path with priority search
Returns
string
Path to config.yaml (prioritizes: dev config/ > user config/ > package config/)
getPackageDir()
ts
static getPackageDir(): string;Defined in: packages/ema/src/config.ts:467
Get the package installation directory
Returns
string
Path to the mini_agent package directory
load()
ts
static load(): Config;Defined in: packages/ema/src/config.ts:332
Loads configuration from the default search path.
Returns
Config