Command overview for init.
Purpose:
- create
.recur/config.tomlfrom detected project lanes and separators - analyze an existing project (
--analyze) and suggest config updates
recur initCreates:
.recur/config.tomlwith detected lanes (for examplesrc/,docs/,julia-tests/).recur/checkpoints.md(if missing)- default
[reveal]sections for lane-local*.recur.mdignition capsules - all default
[traits.*]sections used byrecur trait
Generated lane names are normalized to lowercase kebab-case section names.
If two directories collapse to the same normalized lane name, recur init
appends a numeric suffix so the generated TOML stays valid.
Example:
[test-quick]
dir = "test-quick/"
sep = "-"
[test-quick-2]
dir = "test_quick/"
sep = "."recur init --analyze
recur init --analyze --jsonReports:
- detected lanes and their suggested separators
- additions missing from config
- separator updates for configured lanes
- missing directories referenced by config
recur init is safe by default. If .recur/config.toml already exists, it exits with code 2 and does not overwrite.
Use:
recur init --forceonly when you intentionally want to regenerate config.
After recur init, commands that take -d can auto-resolve separator by directory from .recur/config.toml.
Example:
recur files "main_command_**" -d src/ --countworks without explicitly passing --sep _ when src/ is mapped to _ in config.
julia-tests/main.command.init.test.jl- command-level wrapper for init CLI coveragejulia-tests/runtests.init.jl- init command contract, analyze mode, and collision tests
docs/main.command.config.readme.mddocs/main.command.init.lane-name-collision.complete.md