Running a program
In AEL, the Agent Engineering Language, ael run (command names may change before launch) will check, build and run a program in one step, on the machine you are working on.
Status
Planned for AEL Beta 0.0.1. AEL is not available yet.
Usage
ael run
ael run <path>
ael run --json
| Argument or option | Meaning |
|---|---|
[path] | The project folder. Without a path, the project in the current folder. |
--json | Diagnostics and reports from the command in machine-readable form. |
What it does
ael run will go through the same steps as ael build, for the machine you are working on:
- check and compile the project;
- compute and verify the complete reference map, starting at
main; - build the native program, then start it.
A shortcut will never skip a step: a program that ael run starts will have passed exactly the checks a build applies. If any step fails, nothing will run, and the diagnostics will point at your source.
The program will start at main in main.ael. When a main without a result type finishes, the program will exit successfully.
Packages at startup
Nothing will download when the program starts. ael run will use only the packages already installed and pinned by your lock files, and a missing package will be reported before anything runs, with the command that installs it. Your lock file will pin the exact versions you built with, so a run repeats, even offline.
Time and token reports
Time and token usage will be reported by default. For a program started from the command line, the report will be a summary on standard error, so the program's own output on standard output stays unchanged for pipes and scripts.
You will be able to turn off each field without disabling the limits behind it: all reporting at once, time or tokens alone, or single token counts. Reporting, logs and replay describes the report and its settings.
Agents and configuration
An agent that the program runs will get its own run ID and budget, and its configuration will be locked into a snapshot for that run. Agents, nodes and edges and Configuration describe both.
Build or run
Use ael run while you work. Use ael build when you need a file to deploy or copy to another machine, or a program for another target: ael run will always build for the machine it runs on.
Not settled yet
How you will pass arguments to the program through ael run, and where it keeps the program it builds, will be described when the command is final.
Related
- A first program:
ael runin a small project. - Running tests: the project's tests, without a network or a model account.