Files
cayce-ops/.env.example
cayce 34a5f331ac
ci / lint-test-leaks (pull_request) Canceled after 0s
skeleton: package, schema, config, CLI, alembic, CI, deploy, docs
- cayceops core: env-only config (CAYCE_OPS_*), engine/session, ORM models
  with state machines (proposal/mail/content) and audited writes
- provider-agnostic LLM interface (null provider default, stdlib openai-compat)
- Typer CLI with lazy component loading (scanner/executor/maild/publisher/monitor)
- alembic 0001 initial schema; sqlite-portable JSON columns
- tests: 7 passing on throwaway sqlite; fixtures invented, never real data
- ci: ruff + alembic smoke + pytest + gitleaks(full history) in
  .gitea/workflows + .github/workflows; local gate = make check
- deploy: docker-compose (postgres 16) + hardened systemd units/timers
- docs: DECISIONS D1-D9; README project (grant text retired)
2026-10-19 21:35:50 +00:00

54 lines
1.9 KiB
Bash

# Cayce Ops — copy to .env and fill in. EVERY value below is a placeholder.
# NEVER commit real credentials. .env is gitignored; gitleaks guards history.
# --- core ---
CAYCE_OPS_DATABASE_URL=postgresql+psycopg://user:password@localhost:5432/cayce_ops
CAYCE_OPS_AUTONOMOUS_MODE=false
CAYCE_OPS_LOG_LEVEL=INFO
CAYCE_OPS_STATE_DIR=./
CAYCE_OPS_MEDIA_DIR=./media
# --- scanner ---
# JSON array of sources: [{"type":"rss","url":"https://example.org/feed.xml"},
# {"type":"page","url":"https://example.org/partners"}]
CAYCE_OPS_SCANNER_SOURCES=[]
CAYCE_OPS_SCANNER_KEYWORDS=affiliate,partnership,bitcoin,lightning,travel
CAYCE_OPS_SCANNER_USER_AGENT=cayce-ops-scanner/0.1
# --- executor ---
# with AUTONOMOUS_MODE=true: which proposal kinds may be auto-approved, daily cap
CAYCE_OPS_AUTONOMOUS_KINDS=
CAYCE_OPS_AUTONOMOUS_DAILY_CAP=0
CAYCE_OPS_MAX_ATTEMPTS=2
CAYCE_OPS_ENABLE_HTTP_ACTIONS=false
# --- mail (IMAP read / SMTP send-approved-drafts-only) ---
CAYCE_OPS_IMAP_HOST=imap.example.org
CAYCE_OPS_IMAP_PORT=993
CAYCE_OPS_IMAP_USER=agent@example.org
CAYCE_OPS_IMAP_PASSWORD=change-me
CAYCE_OPS_IMAP_MAILBOX=INBOX
CAYCE_OPS_SMTP_HOST=smtp.example.org
CAYCE_OPS_SMTP_PORT=587
CAYCE_OPS_SMTP_USER=agent@example.org
CAYCE_OPS_SMTP_PASSWORD=change-me
CAYCE_OPS_MAIL_FROM=agent@example.org
# --- llm (null = no LLM; components fall back to rules) ---
CAYCE_OPS_LLM_PROVIDER=null
CAYCE_OPS_LLM_MODEL=
CAYCE_OPS_LLM_BASE_URL=https://api.openai.com/v1
CAYCE_OPS_LLM_API_KEY=
CAYCE_OPS_LLM_REVIEW_THRESHOLD=0.7
# --- publisher / nostr (key: 32-byte hex; relays: wss:// comma list) ---
CAYCE_OPS_NOSTR_PRIVATE_KEY=
CAYCE_OPS_NOSTR_RELAYS=wss://relay.example.org,wss://other.relay.example.org
CAYCE_OPS_ENABLE_FACEBOOK=false
CAYCE_OPS_FACEBOOK_PAGE_TOKEN=
CAYCE_OPS_ENABLE_INSTAGRAM=false
CAYCE_OPS_INSTAGRAM_USER_ID=
# --- monitor ---
CAYCE_OPS_MONITOR_OUTPUT=./status.html