Get the FREE Ultimate OpenClaw Setup Guide โ†’
b

Agresource

Scanned

@brianppetty

npx machina-cli add skill @brianppetty/agresource --openclaw
Files (1)
SKILL.md
6.3 KB

AgResource Newsletter Scraper

Use this skill to scrape, summarize, and analyze AgResource grain marketing newsletters.

Implementation

  • Scraper: scraper.js (Playwright/Node.js)
  • Sentiment Analyzer: agresource_sentiment.py (Python)
  • Login: Automatic using AGRESOURCE_EMAIL and AGRESOURCE_PASSWORD env vars

Capabilities

  • Log in to AgResource dashboard (https://agresource.com/dashboard/#/reports/daily)
  • Scrape daily newsletter content using Playwright
  • Save screenshot for reference/debugging
  • Extract corn/soybean sales advice and recommendations
  • Generate concise summaries with key news and weather tidbits
  • Analyze sentiment (bullish/bearish) across newsletters
  • Compare to previous newsletters to detect trends
  • Store summaries in ~/clawd/memory/agresource/YYYY-MM-DD.md (morning)
  • Store summaries in ~/clawd/memory/agresource/YYYY-MM-DD-noon.md (noon)
  • Store summaries in ~/clawd/memory/agresource/YYYY-MM-DD-evening.md (evening)
  • Store summaries in ~/clawd/memory/agresource/YYYY-MM-DD-saturday.md (saturday)
  • Store summaries in ~/clawd/memory/agresource/YYYY-MM-DD-sunday.md (sunday)
  • Track sentiment history in ~/clawd/memory/agresource/sentiment_history.json
  • Send Telegram alerts on new sales advice

Commands

Manual Trigger

"Check AgResource newsletter"
"Summarize today's grain report"
"Show full newsletter" (detailed view)

To run scraper manually:

cd /home/brianppetty/clawd/skills/agresource

# Morning newsletter (default)
node scraper.js
node scraper.js --type=morning

# Noon/midday newsletter
node scraper.js --type=noon

# Evening newsletter
node scraper.js --type=evening

# Saturday newsletter
node scraper.js --type=saturday

# Sunday newsletter
node scraper.js --type=sunday

Cron Job Triggers

When a cron event fires, match the time/type to the correct --type parameter:

Cron MessageType to UseTime
"Check AgResource newsletter (morning)"--type=morning8:30 AM ET (Mon-Fri)
"Check AgResource newsletter (afternoon)"--type=noon1:30 PM ET (Mon-Fri)
"Check AgResource newsletter (evening - positioning)"--type=evening7:00 PM ET (Mon-Sat)
"Check AgResource newsletter (weekend)"--type=saturday or --type=sunday~3:00 PM ET (Sat/Sun)

For weekend jobs, determine which day it is and use:

  • Saturday: --type=saturday
  • Sunday: --type=sunday

Sentiment Queries

"What's the current market sentiment?"
"Show sentiment trends"
"What's the sentiment history?"

Sentiment Dimensions (PRICE-IMPACT FOCUSED)

CRITICAL: Sentiment analysis tracks PRICE IMPACT, not general "good/bad" news.

Key inverse relationships to remember:

  • โ˜€๏ธ Favorable weather in SA/NA = More supply = BEARISH for prices
  • ๐ŸŒฝ Record yields = More supply = BEARISH for prices
  • ๐Ÿœ๏ธ Drought/crop stress = Less supply = BULLISH for prices
  • ๐Ÿญ Strong export demand = More demand = BULLISH for prices
  • ๐Ÿ“ฆ South American competition = Less US exports = BEARISH for prices

Track these dimensions across newsletters:

  • market_mood: bullish | bearish | neutral
    • BULLISH = Prices expected to go UP
    • BEARISH = Prices expected to go DOWN
  • weather_impact: positive_for_crops | negative_for_crops | mixed | neutral
    • Tracks weather impact on PRODUCTION (inverted for price impact)
    • Positive weather for crops = BEARISH for prices (more supply)
    • Negative weather for crops = BULLISH for prices (less supply)
  • production_outlook: optimistic | cautious | uncertain
    • Optimistic = more supply = BEARISH for prices
    • Cautious = supply concerns = BULLISH for prices
  • trend_direction: improving | declining | stable
  • confidence: high | medium | low

Sales Advice Detection

Status phrases to detect:

  • "New sales advice detected" (buy/sell/recommend keywords)
  • "Catch up sales recommended" (catch up phrase)
  • "No sales recommended at this time" (hold/no action)
  • "Position status unchanged" (no change from previous)

Keywords for sales advice:

  • buy, sell, hold, recommend, recommendation, position, catch up, current positioning

Telegram Alert Format

Brief summary sent for every newsletter:

๐ŸŒพ AgResource - 2026-01-08 8:30 AM

Summary: No sales recommended
Sentiment: Bullish (โ†—๏ธ improving)

Full details in ~/clawd/memory/agresource/

Output Format

Daily Summary File (YYYY-MM-DD.md)

# AgResource Newsletter - 2026-01-08 8:30 AM

## Quick Summary
[2-3 sentence overview]

## Key Newsworthy Items
- [Grain production relevant news]
- [Weather tidbits]

## Sales Advice Status
- Corn: [New sales advice / No change / No sales recommended]
- Soybeans: [New sales advice / No change / No sales recommended]

## Current Positions (from end of newsletter)
- [Summary of current positioning]

## Sentiment & Trends
- **Market Mood:** Bullish / Bearish / Neutral
- **Previous Mood:** [from last newsletter]
- **Trend:** Improving / Declining / Stable
- **Weather Impact:** Positive / Negative / Mixed
- **Production Outlook:** Optimistic / Cautious / Uncertain

## Full Content
[Optional: full newsletter content for reference]

Sentiment History File (sentiment_history.json)

{
  "last_updated": "2026-01-08T08:30:00",
  "sentiment_history": [
    {
      "date": "2026-01-08",
      "time": "08:30 AM",
      "market_mood": "bullish",
      "weather_impact": "positive",
      "production_outlook": "optimistic",
      "trend_direction": "improving",
      "confidence": "high",
      "key_phrases": ["prices advancing", "favorable weather"],
      "sales_advice": "No sales recommended"
    }
  ]
}

Configuration

Credentials: Loaded from environment variables

  • AGRESOURCE_EMAIL
  • AGRESOURCE_PASSWORD

Dependencies:

  • Node.js (built-in on Clawdbot)
  • Playwright (installed locally: /home/brianppetty/clawd/skills/agresource/node_modules/playwright)

Schedule: 4x daily (cron jobs)

  • Morning: 8:30 AM ET
  • Afternoon: 1:30 PM ET
  • Evening: 7:00 PM ET
  • Weekend: ~3:00 PM ET

History window: Keep last 15-20 newsletters for sentiment tracking

Notes

  • Only send Telegram alerts when sales advice CHANGES
  • Always store summaries and sentiment data
  • Refine sentiment detection patterns over time
  • Evening newsletters include current positioning section
  • Login credentials should be handled securely

Source

git clone https://clawhub.ai/brianppetty/agresourceView on GitHub

Overview

AgResource Newsletter Scraper automates logging in, scraping daily AgResource grain newsletters, and generating concise summaries with key news and weather tidbits. It analyzes bullish/bearish sentiment, tracks trends, and stores daily memos in memory files, with Telegram alerts when new sales advice appears.

How This Skill Works

A Playwright/Node scraper (scraper.js) logs in to the AgResource dashboard and fetches daily newsletters, saving a reference screenshot for debugging. A Python sentiment analyzer (agresource_sentiment.py) evaluates sentiment (bullish/bearish) and compares against prior newsletters, with results stored under ~/clawd/memory/agresource/ and Telegram alerts sent when new sales guidance is detected.

When to Use It

  • Morning workflow: fetch and summarize the dayโ€™s newsletter for a fresh starting memo.
  • Noon update: capture afternoon content to adjust positions or expectations.
  • Evening wrap-up: generate a sentiment-trend summary and daily news highlights.
  • Weekend summaries: produce weekend-specific notes and trend checks.
  • Trend detection: compare current newsletter to previous ones to spot shifts in sentiment or sales advice.

Quick Start

  1. Step 1: Install dependencies and set AGRESOURCE_EMAIL and AGRESOURCE_PASSWORD in your environment.
  2. Step 2: Run the morning fetch: node scraper.js (or node scraper.js --type=morning).
  3. Step 3: Check ~/clawd/memory/agresource/ for the daily summary and review Telegram alerts for new sales guidance.

Best Practices

  • Set AGRESOURCE_EMAIL and AGRESOURCE_PASSWORD in environment variables for automatic login.
  • Verify login success and ensure the scraper can access https://agresource.com/dashboard/#/reports/daily.
  • Familiarize with sentiment dimensions: market_mood, weather_impact, production_outlook, trend_direction, confidence.
  • Review outputs in ~/clawd/memory/agresource/YYYY-MM-DD.md and the corresponding time-stamped files.
  • Enable Telegram alerts to receive near real-time notices on new sales advice.

Example Use Cases

  • Morning memo shows bullish sentiment despite favorable weather, prompting cautious positioning.
  • Latest newsletter indicates drought stress, triggering bullish price expectations and updated sales guidance.
  • Sentiment history reveals a shift from neutral to bullish over a week, prompting faster reaction.
  • New sales advice detected after a weekend readout; Telegram alert triggers action plan.
  • Comparison with yesterdayโ€™s summary highlights decreasing supply risk and a revised weather outlook.

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers โ†—