aven-stellar CLI — also invocable as aven after a global install — exposes two primary commands: start and stop. Together they bracket a work session, from the moment you begin coding to the moment you submit your verified report to the Aven dashboard.
aven start
Starts recording project activity for the configured Aven stream. On first use in a repository, the command prompts for the dashboard URL and stream ID, then opens the browser for wallet authorization. On subsequent runs it reads the saved configuration and starts the session immediately.
Usage
Options
The Aven stream ID (digits only). Overrides any stream ID saved in
.aven/config.json. Use this to switch between streams in the same repository.The Aven dashboard URL. Defaults to
http://localhost:3000 when prompted interactively. Pass this flag to point the CLI at a hosted instance, for example --dashboard https://aven.app.Skip the data-collection confirmation prompt that is shown before the session starts. Useful for CI pipelines and automated agents.
Examples
What happens on start
- Locates the repository root by walking up the directory tree to find
.git/ - Creates
.avenignorewith safe defaults if it does not already exist - Checks for an existing active session — exits with an error if one is found
- Loads
.aven/config.json, or runs first-time setup if the file is missing or a different stream ID was passed - Opens the browser for wallet authorization on first use, or if the saved token has expired
- Verifies that the configured stream is active and that your wallet address is the recipient
- Displays the data that will be collected and prompts for confirmation (bypassed by
--non-interactive) - Writes session state to
.aven/session.json - Spawns a detached background activity watcher process and records its PID
aven stop
Stops the active session, generates the work report, and optionally submits it to the Aven dashboard for review and on-chain payment.
Usage
Options
Your summary of the work done in this session. If omitted, the CLI prompts you interactively. This text appears as the worker statement in the submitted report.
Submit the previewed report without an additional confirmation prompt. Useful when you have already reviewed the report and want a single command to finalize the session.
Mark the project as fully completed and request the full remaining stream balance, rather than the amount calculated from active seconds at the stream rate.
Examples
What happens on stop
- Sends
SIGTERMto the background watcher process to stop activity tracking - Reads the final session state from
.aven/session.json - Fetches current stream metadata from the dashboard (earned amount, rate per second)
- Prompts for a worker statement if
--messagewas not passed - Calculates Git change statistics: commits made, files changed, additions, deletions, and file categories
- Builds the full
WorkSessionReportand saves it to.aven/report.json - Prints the complete report to the terminal for review
- Prompts for submission confirmation (bypassed by
--submit) - Filters the report to include only verification-eligible files and submits it to the dashboard
- Deletes
.aven/session.jsonand prints the dashboard link for the submitted session
.avenignore
The CLI automatically creates .avenignore at the repository root on first start if the file does not exist. It works exactly like .gitignore — add glob patterns to exclude paths from the session report. Both .gitignore and .avenignore are respected at the same time.