Use before tagging a public release or opening the repo to external contributors.
-
data/config/model_providers.yamlis gitignored — never commit API keys. Shipdata/config/model_providers.example.yamlonly; operators copy tomodel_providers.yamllocally or in the bind-mounted./datavolume. - No secrets in committed
.env(.envis gitignored). Compare your env against.env.example. -
git grep -iE 'sk-[a-zA-Z0-9]{20,}|password\s*=\s*[\"'][^\"']{8,}' -- ':!*.lock' ':!package-lock.json'returns nothing sensitive.
-
config.yamlhasgeneral.auto_pipeline: false(ideas-only / on-demand). Autonomous mode is opt-in via Admin → Settings orAIFACTORY_AUTONOMOUS_PIPELINE=1on first container run. - Discovery does not auto-enqueue ranked ideas unless you want it: Docker Compose defaults
AIFACTORY_DISCOVERY_AUTO_ENQUEUE=0; set1only when Director should enqueue from Discovery without manual approval.
-
.github/workflows/ci.ymlpasses onmain(pytest, frontend build, Playwright jobs as applicable). - Optional: run
pytest -qandcd web/frontend && npm ci && npm run buildlocally before push.
- Auto-publish (Vercel / Netlify / Cloudflare) is for static / marketing outputs after DevOps — see auto-publish.md.
-
full_software(API + DB) cloud deploy uses Railway-style hooks + your CI token, not Vercel static hosting — see deploy-full-software-cloud.md. - CLI
wallet balanceis a demo table (documented in cli-reference.md); not live chain balances.
From repo root with Docker:
./scripts/run_factory_demo_reset.shOr manually: python scripts/wipe_pipeline_products.py --help (see --zero-dashboard).
| Goal | Typical secrets / config |
|---|---|
| Static site after DevOps | VERCEL_TOKEN and/or NETLIFY_AUTH_TOKEN and/or CLOUDFLARE_API_TOKEN (+ provider CLI on worker PATH) |
| Railway redeploy from CI | RAILWAY_TOKEN, RAILWAY_SERVICE_ID, RAILWAY_ENVIRONMENT_ID (see .github/workflows/railway-deploy.yml) |
| LLM calls | Provider keys in env or model_providers.yaml |
The factory does not push to cloud hosts by itself for full stacks; it writes intent files (railway_deploy.json, auto_publish.json) for your pipeline with the tokens above.