What This Agent Does
This intelligent workflow automatically monitors RSS feeds for relevant content, processes articles through AI-powered analysis, and organizes the results in Google Sheets while keeping your team informed via Slack. The agent runs on a schedule, filtering articles by keywords, rewriting content for clarity, extracting location data, translating between multiple languages, and formatting everything into a structured database—all without manual intervention.
Key benefits include:
-
Save 10+ hours weekly on manual content monitoring and data entry
-
Never miss important articles with automated keyword filtering and real-time notifications
-
Break language barriers with automatic translation to English and Chinese
-
Centralize intelligence in Google Sheets for easy team access and analysis
Perfect use cases:
- Media monitoring and competitive intelligence gathering
- International news tracking for global teams
- Content curation for research or marketing purposes
- Automated industry trend analysis
Who Is It For
This workflow is ideal for:
-
Marketing teams who need to track industry news and competitor content across multiple languages
-
Research analysts gathering intelligence from international sources
-
Content curators building databases of relevant articles for newsletters or reports
-
PR professionals monitoring media coverage and industry developments
-
Business intelligence teams tracking market trends and competitor activities
Whether you're a solo entrepreneur or part of a larger organization, this agent eliminates the tedious work of manually checking feeds, translating content, and organizing information.
Required Integrations
RSS Feed Reader
Why it's needed: This integration fetches articles from your target RSS feeds, serving as the data source for the entire workflow.
Setup steps:
- Identify the RSS feed URL(s) you want to monitor
- Verify the feed is accessible by opening it in a browser
- Note the feed structure (most standard RSS feeds work automatically)
Configuration in TaskAGI:
- No API key required for public RSS feeds
- The RSS node accepts any valid feed URL
- Private or authenticated feeds may require additional headers
Slack
Why it's needed: Slack provides real-time notifications when articles are skipped (due to keyword filtering) or successfully processed, keeping your team informed without checking spreadsheets.
Setup steps:
- Go to api.slack.com/apps and click Create New App
- Choose From scratch and name your app (e.g., "TaskAGI RSS Monitor")
- Select the workspace where you want notifications
- Navigate to OAuth & Permissions in the sidebar
- Under Bot Token Scopes, add these permissions:
-
chat:write (to send messages)
-
chat:write.public (to post in public channels)
- Click Install to Workspace and authorize the app
- Copy the Bot User OAuth Token (starts with
xoxb-)
Configuration in TaskAGI:
- Go to Integrations in your TaskAGI dashboard
- Select Slack and click Add Integration
- Paste your Bot User OAuth Token
- Test the connection by sending a test message
- Invite the bot to your desired channel by typing
/invite @YourBotName in Slack
Anthropic (Claude AI)
Why it's needed: Claude powers three critical AI operations: rewriting articles for clarity, extracting location information, and translating content between languages. This integration is the intelligence engine of your workflow.
Setup steps:
- Visit console.anthropic.com and create an account
- Navigate to API Keys in your account settings
- Click Create Key and give it a descriptive name (e.g., "TaskAGI RSS Workflow")
- Copy the API key immediately (it won't be shown again)
- Note your usage limits and pricing tier
Configuration in TaskAGI:
- Go to Integrations → Anthropic
- Click Add Integration and paste your API key
- Test the connection with a simple prompt
- The workflow uses claude-sonnet-4-5-20250929 model for optimal balance of speed and quality
Cost considerations: Each article processes through Claude three times (rewrite, extract, translate). Monitor your Anthropic usage dashboard to track costs.
Google Sheets
Why it's needed: Google Sheets serves as your centralized database, storing all processed articles with structured data including original content, rewrites, locations, and translations.
Setup steps:
- Create a new Google Sheet or use an existing one
- Set up column headers in the first row (e.g., Title, Original Content, Rewritten, Location, English Translation, Chinese Translation, Date, Source URL)
- Copy the full sheet URL from your browser
- Go to console.cloud.google.com
- Create a new project or select an existing one
- Enable the Google Sheets API for your project
- Navigate to Credentials → Create Credentials → Service Account
- Name your service account (e.g., "TaskAGI RSS Writer")
- Grant it Editor role
- Click on the created service account and go to Keys tab
- Click Add Key → Create New Key → JSON
- Download the JSON key file
Configuration in TaskAGI:
- Go to Integrations → Google Sheets
- Upload the JSON key file or paste its contents
- Share your Google Sheet with the service account email (found in the JSON file as
client_email)
- Grant Editor permissions to the service account
- Test the connection by attempting a write operation
Configuration Steps
1. Schedule Trigger Setup
Configure when your workflow runs automatically:
-
Interval: Set to
3600 seconds (1 hour) for hourly checks, or adjust based on your needs
-
Daily: Use
86400 for once-daily monitoring
-
Custom: Calculate seconds for your preferred frequency (e.g., every 4 hours =
14400)
Recommendation: Start with hourly checks and adjust based on feed update frequency.
2. Fetch RSS Feed Configuration
Point the workflow to your content source:
-
Feed URL: Enter your RSS feed URL (e.g.,
https://example.com/feed.xml)
-
Item Limit: Set to
10 to process the 10 most recent articles per run
-
Output: The node provides
items array containing article data
Data available from RSS:
-
title - Article headline
-
description - Article summary or full content
-
link - Original article URL
-
pubDate - Publication timestamp
3. Filter Keywords Configuration
Determine which articles to process:
-
Condition Type: Select Contains or Does Not Contain
-
Field to Check: Use
[[nodes.4418.items.0.description]] to check article content
-
Keywords: Enter comma-separated keywords (e.g.,
technology, AI, automation)
-
Case Sensitivity: Typically set to false for broader matching
True path: Articles matching keywords proceed to processing
False path: Non-matching articles trigger a skip notification
4. Notify Skipped Configuration
Keep track of filtered-out content:
-
Channel: Enter your Slack channel (e.g.,
#rss-monitoring)
-
Message Template:
Article skipped (no keyword match): [[nodes.4418.items.0.title]]
URL: [[nodes.4418.items.0.link]]
5. Rewrite Article Configuration
Transform articles for clarity and consistency:
-
Model:
claude-sonnet-4-5-20250929 (pre-configured)
-
Prompt:
[[nodes.4418.items.0.description]] with instructions to rewrite for clarity
-
Max Tokens: Set to
2000 for comprehensive rewrites
-
Temperature: Use
0.7 for balanced creativity and consistency
Output: Stores rewritten content in [[nodes.4421.output]]
6. Extract Location Configuration
Identify geographical references:
-
Model:
claude-sonnet-4-5-20250929
-
Prompt Template:
From this article, extract all location mentions (cities, countries, regions):
[[nodes.4418.items.0.description]]
Return only location names, comma-separated.
-
Max Tokens:
500 (locations are typically brief)
Output: Comma-separated location list in [[nodes.4422.output]]
7. Translate Content Configuration
Make content multilingual:
-
Model:
claude-sonnet-4-5-20250929
-
Prompt:
Translate this Japanese article to English and Chinese.
Provide both translations clearly labeled.
Article: [[nodes.4418.items.0.description]]
-
Max Tokens:
3000 (translations need more space)
-
Temperature:
0.3 (lower for more literal translations)
Output: Contains both English and Chinese translations
8. Format Data Configuration
Structure data for Google Sheets:
-
Function Type: Select JavaScript or Python
-
Input Variables: Map all previous node outputs
-
Code Template:
return {
title: nodes[4418].items[0].title,
original: nodes[4418].items[0].description,
rewritten: nodes[4421].output,
location: nodes[4422].output,
translations: nodes[4423].output,
url: nodes[4418].items[0].link,
date: new Date().toISOString()
};
9. Save to Google Sheets Configuration
Write processed data to your spreadsheet:
-
Sheet URL: Paste your Google Sheet URL (e.g.,
https://docs.google.com/spreadsheets/d/YOUR_SHEET_ID)
-
Row Data: Map formatted data fields to columns
-
Append Mode: Ensure true to add new rows without overwriting
Column mapping example:
- Column A:
[[nodes.4424.title]]
- Column B:
[[nodes.4424.original]]
- Column C:
[[nodes.4424.rewritten]]
- Column D:
[[nodes.4424.location]]
- Column E:
[[nodes.4424.translations]]
- Column F:
[[nodes.4424.url]]
- Column G:
[[nodes.4424.date]]
10. Notify Slack Configuration
Celebrate successful processing:
-
Channel: Same as skip notification channel
-
Message Template:
✅ New article processed!
Title: [[nodes.4424.title]]
Locations: [[nodes.4424.location]]
View in sheet: [YOUR_SHEET_URL]
Testing Your Agent
Initial Test Run
-
Disable the schedule trigger temporarily to prevent automatic runs during testing
- Click Run Workflow in the TaskAGI interface
- Select Manual Trigger to execute immediately
- Watch the execution flow in real-time
Verification Checklist
After RSS Fetch:
- ✓ Verify articles are retrieved (check node output)
- ✓ Confirm article descriptions contain content
- ✓ Note the number of items fetched
After Keyword Filter:
- ✓ Check which path was taken (true/false)
- ✓ Verify keyword matching logic works correctly
- ✓ Confirm skip notification appears in Slack if false path
After AI Processing:
- ✓ Review rewritten content for quality and clarity
- ✓ Verify locations are accurately extracted
- ✓ Check translations for both English and Chinese
- ✓ Ensure translations maintain original meaning
After Google Sheets Save:
- ✓ Open your Google Sheet and verify new row appears
- ✓ Check all columns are populated correctly
- ✓ Confirm formatting is readable
- ✓ Verify URLs are clickable
After Slack Notification:
- ✓ Confirm success message appears in designated channel
- ✓ Check message formatting and readability
- ✓ Verify all data references display correctly
Expected Results
A successful test run should:
- Complete in 30-90 seconds depending on article length
- Create one new row in Google Sheets per processed article
- Send one Slack notification (either skip or success)
- Show green checkmarks on all executed nodes
- Display no error messages in the execution log
Troubleshooting
RSS Feed Issues
Problem: "Failed to fetch RSS feed" error
Solutions:
- Verify the feed URL is accessible in a browser
- Check for CORS restrictions (some feeds block automated access)
- Try adding a User-Agent header:
Mozilla/5.0
- Ensure the feed uses standard RSS/Atom format
Problem: No items returned from feed
Solutions:
- Increase the item limit in the RSS node
- Check if the feed has been recently updated
- Verify the feed isn't empty or deprecated
Anthropic/Claude Issues
Problem: "Rate limit exceeded" error
Solutions:
- Reduce workflow frequency (increase schedule interval)
- Implement a delay between AI calls using a Wait node
- Upgrade your Anthropic plan for higher rate limits
- Process fewer articles per run
Problem: Poor translation or extraction quality
Solutions:
- Adjust the temperature setting (lower = more consistent)
- Refine your prompts with more specific instructions
- Increase max_tokens if responses are cut off
- Add examples in your prompts for better results
Google Sheets Issues
Problem: "Permission denied" error
Solutions:
- Verify the service account email has Editor access to the sheet
- Check that the sheet URL is correct and complete
- Ensure the Google Sheets API is enabled in your Google Cloud project
- Confirm the JSON key file is valid and not expired
Problem: Data appears in wrong columns
Solutions:
- Review column mapping in the Save to Google Sheets node
- Ensure column order matches your sheet structure
- Check that data references use correct node IDs
- Verify the Format Data node outputs match expected structure
Slack Issues
Problem: "Channel not found" error
Solutions:
- Invite the bot to the channel:
/invite @YourBotName
- Use channel ID instead of name (found in channel details)
- Verify the bot has
chat:write permissions
- Check that the channel is public or bot is a member
Problem: Messages not formatting correctly
Solutions:
- Use Slack's mrkdwn formatting syntax
- Escape special characters in dynamic content
- Test message templates with static text first
- Review Slack's message formatting documentation
Workflow Logic Issues
Problem: Keyword filter not working as expected
Solutions:
- Test with simple, single keywords first
- Check case sensitivity settings
- Verify the field reference points to article content
- Use OR logic by creating multiple condition branches
Problem: Workflow stops mid-execution
Solutions:
- Check execution logs for specific error messages
- Verify all required fields are populated in each node
- Ensure data flows correctly between nodes
- Test each node individually to isolate the issue
Next Steps
After Successful Setup
Immediate actions:
-
Enable the schedule trigger to start automatic monitoring
-
Monitor the first 24 hours to ensure stable operation
-
Review processed articles in Google Sheets for quality
-
Adjust keyword filters based on initial results
Optimization Suggestions
Improve accuracy:
- Refine your keyword list based on false positives/negatives
- Enhance AI prompts with specific instructions for your industry
- Add additional filtering conditions for better targeting
Scale your monitoring:
- Add multiple RSS feed nodes for different sources
- Create separate workflows for different content categories
- Implement priority routing based on article importance
Enhance notifications:
- Add rich formatting to Slack messages with article summaries
- Create different notification channels for different content types
- Implement digest notifications (daily summary instead of per-article)
Expand data collection:
- Add sentiment analysis using additional Claude prompts
- Extract key entities (people, organizations, products)
- Generate article summaries or key takeaways
- Track trending topics over time
Advanced Usage Tips
Multi-language support:
- Add more translation targets by duplicating the translate node
- Create language-specific Google Sheets for different audiences
- Implement automatic language detection for mixed-feed sources
Data enrichment:
- Integrate with web scraping to fetch full article content
- Add image extraction and storage
- Connect to CRM or marketing automation platforms
- Implement automatic categorization or tagging
Analytics and reporting:
- Create Google Sheets formulas for trend analysis
- Build dashboards using Google Data Studio
- Export data to BI tools for deeper insights