<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>CLI reference on ExpLedger</title><link>https://marcfranquesa.github.io/expledger/docs/reference/</link><description>Recent content in CLI reference on ExpLedger</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://marcfranquesa.github.io/expledger/docs/reference/index.xml" rel="self" type="application/rss+xml"/><item><title>expledger</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger/</guid><description>&lt;h2 id="expledger"&gt;expledger&lt;a class="anchor" href="#expledger"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Manage experiment records in an initialized project&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Manage experiment records and run scripts in an initialized project.&#10;Run init once in the project directory. Other commands find the nearest&#10;expledger.yaml in the current directory or its parents. Help needs no project.&#10;See &lt;a href="https://marcfranquesa.github.io/expledger/"&gt;https://marcfranquesa.github.io/expledger/&lt;/a&gt; for guides and configuration.&lt;/p&gt;&#10;&lt;h3 id="examples"&gt;Examples&lt;a class="anchor" href="#examples"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt; expledger init&#10; expledger new baseline&#10; expledger list&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="options"&gt;Options&lt;a class="anchor" href="#options"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt; -h, --help help for expledger&#10; -v, --version version for expledger&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="see-also"&gt;SEE ALSO&lt;a class="anchor" href="#see-also"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_build/"&gt;expledger build&lt;/a&gt;&#9; - Build a static experiment web page&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_init/"&gt;expledger init&lt;/a&gt;&#9; - Initialize an ExpLedger project in the current directory&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_list/"&gt;expledger list&lt;/a&gt;&#9; - List experiment IDs and titles&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_new/"&gt;expledger new&lt;/a&gt;&#9; - Create an experiment folder, metadata, README, and run.sh&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_run/"&gt;expledger run&lt;/a&gt;&#9; - Run an experiment's run.sh in its existing folder&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_serve/"&gt;expledger serve&lt;/a&gt;&#9; - Browse experiments in a local web page&lt;/li&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger_validate/"&gt;expledger validate&lt;/a&gt;&#9; - Validate experiment metadata&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>expledger build</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_build/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_build/</guid><description>&lt;h2 id="expledger-build"&gt;expledger build&lt;a class="anchor" href="#expledger-build"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Build a static experiment web page&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Write a self-contained index.html snapshot, newest experiments first.&#10;Include optional report.yaml blocks and their Markdown and CSV sources.&#10;Create the output directory if needed and replace its index.html on each build.&#10;Other files in the directory are left unchanged. The root expledger.yaml's optional&#10;remote_url supplies the full browser URL of the remote experiments directory.&#10;Each ID path segment is escaped and appended; omit remote_url for a local-only catalog.&#10;Only the current project is included; sources applies only to serve.&#10;The generated page needs no running ExpLedger server and does not poll.&lt;/p&gt;</description></item><item><title>expledger init</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_init/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_init/</guid><description>&lt;h2 id="expledger-init"&gt;expledger init&lt;a class="anchor" href="#expledger-init"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Initialize an ExpLedger project in the current directory&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Create expledger.yaml in the current directory. Existing valid config is left unchanged.&#10;Use --remote-url for the full browser URL of the remote experiments directory.&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;expledger init [flags]&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="examples"&gt;Examples&lt;a class="anchor" href="#examples"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt; expledger init&#10; expledger init --remote-url https://github.com/owner/repo/tree/main/experiments&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="options"&gt;Options&lt;a class="anchor" href="#options"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt; -h, --help help for init&#10; --remote-url URL Full browser URL of the remote experiments directory&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="see-also"&gt;SEE ALSO&lt;a class="anchor" href="#see-also"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger/"&gt;expledger&lt;/a&gt;&#9; - Manage experiment records in an initialized project&lt;/li&gt;&#10;&lt;/ul&gt;</description></item><item><title>expledger list</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_list/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_list/</guid><description>&lt;h2 id="expledger-list"&gt;expledger list&lt;a class="anchor" href="#expledger-list"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;List experiment IDs and titles&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Read experiment.yaml files recursively under the configured experiments_dir.&#10;The project expledger.yaml defaults experiments_dir to experiments.&#10;Display IDs and titles by created_at, newest first.&#10;Each YAML id must exactly match its path relative to experiments_dir.&#10;IDs containing whitespace, quotes, or non-printable characters are double-quoted,&#10;using Go-style escapes such as \t and \n.&#10;Title whitespace is collapsed to spaces; other non-printable characters are escaped.&#10;Explore grouping directories, but do not scan inside experiment folders.&#10;Report invalid metadata with its path.&lt;/p&gt;</description></item><item><title>expledger new</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_new/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_new/</guid><description>&lt;h2 id="expledger-new"&gt;expledger new&lt;a class="anchor" href="#expledger-new"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Create an experiment folder, metadata, README, and run.sh&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Create experiment.yaml, README.md, and executable run.sh in a new experiment folder.&#10;Configure experiments_dir and experiment_format in the project expledger.yaml.&#10;Defaults are experiments/ and {date:20060102}-{slug}, producing experiments/YYYYMMDD-SLUG/.&#10;Use {date}/{slug} for date folders or {date}/{time}-{slug} for timestamps.&#10;{date} inserts the local YYYY-MM-DD date, {time} the local HH-MM-SS time,&#10;and {slug} the positional slug. Customize with native Go time.Time.Format layouts:&#10;2006 for the year, 01 for the month, 02 for the day, 15 for the hour (24-hour clock),&#10;04 for the minute, and 05 for the second. Use {time:15:04} for hours:minutes or&#10;{time:05:04:15} for seconds:minutes:hours. Unrecognized layout text remains literal.&#10;See &lt;a href="https://pkg.go.dev/time#Time.Format"&gt;https://pkg.go.dev/time#Time.Format&lt;/a&gt; for the reference-time layout syntax.&#10;Literal text is unchanged. Placeholders can repeat or be omitted.&#10;Slugs contain lowercase letters, digits, and single hyphens between words.&#10;Existing experiments are never overwritten.&#10;Validate only the direct parents named by --based-on. Each must have a valid&#10;experiment.yaml whose id exactly matches its path relative to experiments_dir.&lt;/p&gt;</description></item><item><title>expledger run</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_run/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_run/</guid><description>&lt;h2 id="expledger-run"&gt;expledger run&lt;a class="anchor" href="#expledger-run"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Run an experiment's run.sh in its existing folder&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Execute ./run.sh from experiments_dir/ID/ with the current checkout and environment.&#10;The project expledger.yaml configures experiments_dir, defaulting to experiments.&#10;Keep workload parameters in run.sh or its input files; extra arguments are rejected.&#10;The script chooses output paths. Metadata is not changed and no provenance is&#10;recorded. Git is not required.&#10;The shebang selects the runtime. Standard streams and exit status are forwarded.&#10;Ctrl+C stops the workload and its ordinary child processes. Requires macOS or&#10;Linux; supports batch workloads, not interactive terminal input or daemons.&lt;/p&gt;</description></item><item><title>expledger serve</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_serve/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_serve/</guid><description>&lt;h2 id="expledger-serve"&gt;expledger serve&lt;a class="anchor" href="#expledger-serve"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Browse experiments in a local web page&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Serve experiments on 127.0.0.1 with live list and lineage views.&#10;Include optional report.yaml blocks with shared chart styling.&#10;Poll configuration, records, and report sources every few seconds without reloading the page.&#10;Use sources in expledger.yaml, or repeat --source to replace that list.&#10;Paths name project roots; relative paths resolve from the current project config&#10;directory. No ~ or environment-variable expansion is performed.&#10;The first source wins each ID, including its relationships and remote links.&#10;Other commands remain scoped to the current project. Failed refreshes keep the&#10;last valid view until recovery. Press Ctrl+C to stop the server.&lt;/p&gt;</description></item><item><title>expledger validate</title><link>https://marcfranquesa.github.io/expledger/docs/reference/expledger_validate/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://marcfranquesa.github.io/expledger/docs/reference/expledger_validate/</guid><description>&lt;h2 id="expledger-validate"&gt;expledger validate&lt;a class="anchor" href="#expledger-validate"&gt;&lt;/a&gt;&lt;/h2&gt;&#10;&lt;p&gt;Validate experiment metadata&lt;/p&gt;&#10;&lt;h3 id="synopsis"&gt;Synopsis&lt;a class="anchor" href="#synopsis"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;p&gt;Check experiments_dir/ID/experiment.yaml at the project root.&#10;The project expledger.yaml configures experiments_dir, defaulting to experiments.&#10;Require schema: expledger/v1 and valid id, title, and created_at fields.&#10;The YAML id must match its path relative to experiments_dir. README.md is independent.&#10;Report the first error with its file path; no files are changed.&lt;/p&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt;expledger validate &amp;lt;id&amp;gt; [flags]&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="examples"&gt;Examples&lt;a class="anchor" href="#examples"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt; expledger validate 20260924-my-idea&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="options"&gt;Options&lt;a class="anchor" href="#options"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;pre tabindex="0"&gt;&lt;code&gt; -h, --help help for validate&lt;/code&gt;&lt;/pre&gt;&lt;h3 id="see-also"&gt;SEE ALSO&lt;a class="anchor" href="#see-also"&gt;&lt;/a&gt;&lt;/h3&gt;&#10;&lt;ul&gt;&#10;&lt;li&gt;&lt;a href="https://marcfranquesa.github.io/expledger/docs/reference/expledger/"&gt;expledger&lt;/a&gt;&#9; - Manage experiment records in an initialized project&lt;/li&gt;&#10;&lt;/ul&gt;</description></item></channel></rss>