How Scheduled Triggers Work
Notra uses cron-based scheduling to trigger content generation at your preferred frequency:Schedule Frequencies
- Daily
- Weekly
- Monthly
Generate content every day at a specified time.Configuration:
- Hour (0-23)
- Minute (0-59)
- High-velocity teams with frequent releases
- Daily standup summaries
- Active social media presence
- Real-time progress tracking
- Daily LinkedIn posts about product progress
- End-of-day changelog updates
- Daily investor updates during intensive development periods
Lookback Windows
Scheduled automations analyze repository activity over a configurable time period:Activity from midnight UTC today to now
Activity from the previous calendar day (midnight to midnight UTC)
Activity from the past 7 days (default)
Activity from the past 14 days
Activity from the past 30 days
Choose a lookback window that matches your schedule frequency. For weekly schedules,
last_7_days works well. For monthly schedules, consider last_30_days.Supported Output Types
Scheduled automation currently supports:Changelogs
Customer-facing summaries of features, fixes, and improvements shipped during the time period.
LinkedIn Posts
Professional updates about product progress and achievements, optimized for LinkedIn’s format.
More output types (blog posts, Twitter/X posts, investor updates) are coming soon to scheduled automation.
Configuring Scheduled Triggers
Set up scheduled automation through the Notra dashboard:Set Frequency
Configure when content should be generated:
- Daily: Select time
- Weekly: Select day and time
- Monthly: Select day of month and time
Content Generation Context
When a schedule triggers content generation, Notra analyzes:- Time Range: Activity within your configured lookback window
- Repositories: All selected repositories’ combined activity
- Commits & PRs: Merged pull requests and commit history
- Issues: Closed issues and significant discussions
- Releases: Published releases during the period
- Brand Voice: Your configured tone, audience, and custom instructions
Cron Expression Format
Notra automatically generates cron expressions from your configuration:All schedules run in UTC timezone. Plan your schedule times accordingly based on your target audience’s timezone.
Testing Schedules
You can manually trigger any schedule to test output before enabling:- Navigate to the schedule in your dashboard
- Click “Run Now” to manually trigger content generation
- The system analyzes the current lookback window and generates content
- Review the output to ensure quality and relevance
Schedule Management
Manage your schedules through the dashboard:- Edit: Update frequency, lookback window, or output type
- Enable/Disable: Turn schedules on or off without deleting configuration
- Duplicate: Copy a schedule to create variations quickly
- Delete: Remove schedules you no longer need
When you edit a schedule’s frequency or time, the changes take effect immediately. The next run will use the new schedule.
Monitoring & Logs
View execution history for all scheduled runs:- Run Status: Success, failed, or rate-limited
- Execution Time: When the schedule triggered
- Content Generated: Link to the generated post
- Workflow Run ID: Unique identifier for troubleshooting
- Generation Details: What repositories and time range were analyzed
- Verify schedules are running as expected
- Debug generation failures
- Track content output over time
- Identify patterns in your development activity
Common Use Cases
Weekly Product Updates
Generate LinkedIn posts every Monday summarizing the previous week’s progress.
Monthly Changelogs
Create comprehensive monthly changelogs for customers on the 1st of each month.
Daily Standup Content
Generate daily summaries for high-velocity teams shipping continuously.
Investor Reports
Automate monthly or weekly progress updates for stakeholders.
Best Practices
Match Frequency to Activity
Match Frequency to Activity
Choose a schedule frequency that aligns with your development pace. High-velocity teams might use weekly schedules, while teams with monthly releases might prefer monthly schedules.
Align Lookback with Frequency
Align Lookback with Frequency
Use lookback windows that match your schedule frequency:
- Daily schedule →
current_dayoryesterday - Weekly schedule →
last_7_days - Monthly schedule →
last_30_days
Consider Your Audience's Timezone
Consider Your Audience's Timezone
Schedule content generation to post when your audience is most active. Remember all times are in UTC.
Combine Multiple Schedules
Combine Multiple Schedules
Create different schedules for different content types. For example:
- Weekly changelog for customers
- Weekly LinkedIn post for general audience
- Monthly investor update
Review Generated Content
Review Generated Content
Treat scheduled content as drafts. Always review before publishing to ensure accuracy and relevance.
Name Schedules Descriptively
Name Schedules Descriptively
Use clear names like “Weekly Monday Changelog” instead of generic names like “Schedule 1”.
Troubleshooting
Schedule Not Running
Schedule Not Running
Check:
- Schedule is enabled in the dashboard
- Cron configuration is valid
- QStash service is operational (check status page)
- Your subscription includes scheduled automation
No Content Generated
No Content Generated
Check:
- Repositories have activity in the lookback window
- Repositories are still connected and accessible
- Target repositories exist in your configuration
- GitHub API access is working
Content Quality Issues
Content Quality Issues
Check:
- Lookback window is appropriate for your activity level
- Brand voice and custom instructions are configured
- You’re analyzing the right repositories
- Repository activity is sufficient for meaningful content
Rate Limiting
Rate Limiting
If GitHub API rate limits are hit during scheduled generation, the workflow automatically retries after the rate limit resets. Check logs for
rate_limited status.Infrastructure Details
Notra uses Upstash QStash for reliable scheduled workflow execution:- Reliability: QStash ensures schedules run even if your infrastructure is temporarily unavailable
- Retries: Automatic retries on transient failures
- Monitoring: Built-in observability for all scheduled runs
- Scalability: Handles any number of concurrent schedules
Next Steps
Event-Based Automation
Learn about webhook-triggered content generation
Brand Voice Configuration
Customize tone and style for your scheduled content