dca-bot

Automates scheduled dollar-cost-average token purchases on-chain via the Uniswap Trading API.

Updated Jul 7, 2025
One-click install
npx skills add https://github.com/Catalyst-Astro/Catalyst-Blockchain-Structural-Token- --skill dca-bot-catalyst-astro
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dca-bot
Source: https://github.com/Catalyst-Astro/Catalyst-Blockchain-Structural-Token-/tree/main/.agents/skills/dca-bot
Command: npx skills add https://github.com/Catalyst-Astro/Catalyst-Blockchain-Structural-Token- --skill dca-bot-catalyst-astro

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Manually buying crypto on a fixed schedule is error-prone and easy to forget. This Skill automates recurring token purchases (dollar-cost averaging) on a target chain, with optional price-condition gating, spend guardrails, and idempotent state tracking so each scheduled run executes at most once per period. ## Core Features & Use Cases - Scheduled Recurring Buys: Executes a fixed-amount token purchase on a cadence driven by the host agent's scheduler, with idempotency keys preventing duplicate buys within one period. - Conditional Execution: Optionally buys only when a condition holds, such as purchasing ETH only when its price from the Uniswap Trading API quote falls below a threshold. - Guardrails and Execution Modes: Enforces per-run and per-period spend caps, token allowlists, and a kill switch, with a default confirm mode and an autonomous mode requiring all safety controls. - Delegated Execution: Routes every quote, approval, and swap through the swap-integration and viem-integration plugins rather than reimplementing trading logic. - Use Case: Configure a daily buy of 50 USDC worth of ETH on your target chain, gated on ETH trading below 3000 USDC, with a 100 USDC per-day cap and per-transaction confirmation. ## Quick Start Ask the agent to set up a daily DCA that buys a fixed USDC amount of ETH on your configured chain, only when the price is below your chosen threshold.

Frequently Asked Questions about dca-bot

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up a recurring crypto buy with a DCA bot?

Configure the target token, fixed buy amount, and cadence, then let the host agent's scheduler invoke the skill each period. Each run checks state, validates guardrails, optionally evaluates a price condition, and delegates the swap to the Uniswap Trading API flow.

How does dollar cost averaging work with a price condition?

The skill fetches the current price from the Uniswap Trading API quote endpoint and evaluates your predicate, such as buying only when ETH is below 3000 USDC. If the condition is not met, it records the evaluation and skips the buy for that period.

Can the DCA bot run autonomously without confirming each transaction?

Yes, but autonomous mode requires a per-run and per-period spend cap, a token allowlist, a dry run, and a kill switch. Without all four, the skill falls back to confirm mode, which asks for approval before every broadcast.

Does the DCA bot prevent duplicate purchases if it wakes twice in one day?

Yes, it uses an idempotency key stored in a JSON state file. The current period is compared against the last recorded buy period, and the state is only updated after a confirmed broadcast, so repeated wakes within one period never double-buy.

What happens if a DCA swap fails or the wallet lacks funds?

The skill checks that the wallet holds enough of the funding token and native gas before buying, and skips with a report if either is short. On failure it records the error and leaves the period unmarked so a later wake can retry.