Kronika CLI command

kronika sources

Collect the repository files Kronika may send to Brama and print the safe source manifest without making a model request or changing repository state.

Invocation

kronika sources [options]

There are no required options or environment variables. The repository defaults to the current directory and the target document defaults to README.md.

Inputs and options

OptionDefaultEffect
--repo <path>current directoryRepository root used for containment and discovery.
--output <path>README.mdPrioritizes the target document in the manifest; it must remain inside the repository.
--source <path>automatic discoverySelects an explicit file or directory. Repeat the option for multiple sources.
--max-input-bytes <n>noneCaps all selected source bytes; unset, every selected source is read.
--max-file-bytes <n>noneCaps each selected file; unset, no file is skipped for its size.

Automatic discovery uses Git's tracked and unignored files when available, otherwise it walks the repository. Explicit directories are walked. Credentials, keys, generated/private directories, oversized files, binary content, invalid UTF-8, and files beyond the total budget are skipped and reported with their reason.

Output and state

Stdout is one JSON object with repo, output, totalBytes, a sources array of path and byte count, and a skipped array of path and reason. The command does not read Brama configuration, call Brama, or write files. Successful collection exits 0.

Exact refusals

  • Repository is not a directory: <resolved-path>
  • Source is outside the repository: <selection>
  • Source does not exist: <selection>
  • Symbolic-link sources are not allowed: <selection>
  • Output is outside the repository: <output>
  • --max-input-bytes must be a positive integer or --max-file-bytes must be a positive integer

Any refusal is written to stderr as kronika: <message> and exits 1. A missing value is <flag> requires a value; an unknown option is Unknown option: <flag>.