Skip to content

cents factory

For running the factory on a recurring schedule (cron / launchd recipes, cost-cap discipline, editable-install drift), see the dedicated Scheduling page.

Run and inspect the autonomous factory loop.

Terminal window
cents factory <subcommand> [OPTIONS] [ARGS]...
  • cents factory analyze — Outcomes stratified by one or more discovery / cohort / regime axes.
  • cents factory funnel — Per-arm open-phase funnel: evaluated → rejected (by reason) → opened.
  • cents factory init — Scaffold ~/.cents/factory.toml with sensible defaults.
  • cents factory run — Run the factory engine once.
  • cents factory status — Summarize the factory’s current state.

Outcomes stratified by one or more discovery / cohort / regime axes.

Synopsis

Terminal window
cents factory analyze [OPTIONS]

Options

OptionTypeDefaultDescription
--since-days INTEGERinteger90Look-back window in days
--by TEXTtextcohortComma-separated grouping axes (cohort,discovery,regime,orchestrator,premise_classification_source,premise_tags_count,hedge_basis). Multiple axes produce a cross-tab. Default: cohort.
--include-cost-per-outcomebooleanfalseAugment each cell with LLM cost per opened / judged / correct thesis. Lets the operator see whether spend per outcome exceeds the average P&L per outcome (negative-EV pipeline check). Adds an unattributable_cost_usd top-level field for LLM spend that could not be attributed to any thesis in the window.
`—output/-o [textjson]`[text | json]

Example

Terminal window
cents factory analyze [OPTIONS]

Per-arm open-phase funnel: evaluated → rejected (by reason) → opened.

Run cents shadow backfill first so rejection rows carry forward returns — those tell you whether a rejection rule is leaving signal on the table. The crowding section attributes concentration_cap rejections to the arm(s) whose open theses held the bucket.

Synopsis

Terminal window
cents factory funnel [OPTIONS]

Options

OptionTypeDefaultDescription
--since-days INTEGERinteger30Look-back window in days
`—output/-o [textjson]`[text | json]

Example

Terminal window
cents factory funnel [OPTIONS]

Scaffold ~/.cents/factory.toml with sensible defaults.

Synopsis

Terminal window
cents factory init [OPTIONS]

Options

OptionTypeDefaultDescription
--forcebooleanfalseOverwrite existing config

Example

Terminal window
cents factory init [OPTIONS]

Run the factory engine once.

Synopsis

Terminal window
cents factory run [OPTIONS]

Options

OptionTypeDefaultDescription
--dry-runbooleanfalsePlan actions without mutating state
--universe TEXTtextUniverse name (defaults to config / default)
--max-cost-usd FLOATfloatAbort the run if cumulative LLM spend would exceed this many USD. Checked PRE-call against a token estimate so the offending call is never made.
`—orchestrator [llmrandom]`[llm | random]llm
--orchestrator-seed INTEGERintegerRNG seed for —orchestrator random (reproducibility).
--force-frozen-driftbooleanfalseAcknowledge factory.toml drift from the active experiment’s frozen SHA and run anyway. cents-eat0: by default a drifted config aborts the run to preserve pre-registration discipline. Use only when you’ve decided the discipline violation is acceptable (e.g. unblocking a non-pilot ad-hoc run while an experiment is active). The drift is still persisted in summary_json so analytics can see it.
`—output/-o [textjson]`[text | json]

Example

Terminal window
cents factory run [OPTIONS]

Summarize the factory’s current state.

Synopsis

Terminal window
cents factory status [OPTIONS]

Options

OptionTypeDefaultDescription
`—output/-o [textjson]`[text | json]

Example

Terminal window
cents factory status [OPTIONS]
Not financial advice. Cents is an educational and research tool for tracking your own investment theses. Outputs are model-generated and may be inaccurate. You are solely responsible for your own investment decisions.