Skip to main content

Agent Settings

Agent metadata and optional runtime options live in settings.json at the project root. The file is created by genie setup. Edit it directly, then run genie update to push metadata changes to the AsterQuanta platform without restarting the agent.

Standard fields

FieldDescription
nameAgent name shown on the platform.
descriptionShort description of the agent.
hyper_parametersDefault hyper-parameters copied into new models and used as a baseline for training.
is_publicWhether the agent is visible to other users on the platform.

Example:

{
"name": "MyAgent",
"description": "RL optimizer for analog circuits",
"hyper_parameters": {
"learning_rate": 0.0003
},
"is_public": false
}

Resource usage logging

You can enable periodic CPU and memory logging for a running agent. When enabled, the ADK writes one JSON line per sample to a local log file while the agent is connected to the platform. Samples are taken on the agent heartbeat, so logging respects the configured interval rather than writing on every internal event.

This is useful when running agents on shared machines, in Docker, or when you want a local record of load during long optimizations.

Configuration

Add or edit resource_logging_options in settings.json:

{
"name": "MyAgent",
"resource_logging_options": {
"enabled": true,
"file_name": "logs/resources.log",
"interval_seconds": 10,
"max_size": 10000000,
"backup_count": 10,
"child_process_names": []
}
}
OptionDefaultDescription
enabledfalseTurn resource logging on or off.
file_namelogs/resources.logPath to the JSONL log file (parent directories are created automatically).
interval_seconds10Minimum seconds between samples.
max_size10000000Maximum log file size in bytes before rotation.
backup_count10Number of rotated backup files to keep.
child_process_names[]Optional process name substrings. Matching child processes are included in memory totals (for example simulator or worker processes started by your agent).
service_name(agent name)Label written into each log record. Defaults to the agent name when omitted.

Changes take effect the next time you start the agent (genie run or python src/main.py).

Log format

Each line is a JSON object. Typical fields include:

FieldDescription
tsUTC timestamp of the sample.
cpu_pctProcess CPU usage percentage.
load_1mSystem load average (1 minute).
process_rss_mbResident memory of the agent process (MB).
children_rss_mbResident memory of matched child processes (MB).
child_countNumber of matched child processes.
serviceService name (usually your agent name).
agent_nameAgent name from settings.
active_optimizationsNumber of optimizations currently running in this process.

Example record:

{"ts":"2026-06-23T12:00:00Z","cpu_pct":12.5,"load_1m":0.42,"process_rss_mb":256.0,"children_rss_mb":0.0,"child_count":0,"service":"MyAgent","agent_name":"MyAgent","active_optimizations":1}
tip

Add logs/ to your .gitignore if you enable resource logging in development and do not want log files committed to version control.