# txnBot Automation worker that monitors staking positions and calls `recenter()` / `payTax()` when profitable. ## Environments The bot supports four environments shared across the stack: - `BASE_SEPOLIA_LOCAL_FORK` – Anvil fork of Base Sepolia started by `scripts/dev.sh` - `BASE_MAINNET_LOCAL_FORK` – Anvil fork of Base mainnet started by `scripts/dev.sh` - `BASE_SEPOLIA` – Public Base Sepolia testnet - `BASE` – Base mainnet Set `ENVIRONMENT` alongside the other variables listed below to target the desired chain. ## Configuration Create an environment file (e.g. `.env`) with: ``` ENVIRONMENT=BASE_SEPOLIA PROVIDER_URL= PRIVATE_KEY= LM_CONTRACT_ADDRESS= STAKE_CONTRACT_ADDRESS= GRAPHQL_ENDPOINT= # Optional: PORT=43069 ``` `scripts/dev.sh start` generates these values automatically for the local fork, writes them to a temporary file, and keeps the process running in the background. ## Local Run ``` npm install npm start ``` The service exposes a lightweight status endpoint at `GET /status` reporting uptime, balances, and the most recent automation activity. ## Generate a New Operator Key Run `npm run generate-key` to produce a fresh EOA. The command writes the private key and address as JSON log entries to `txnbot.log`. Be sure to rotate the log or move the credentials to a secure store immediately after use.