# On-Demand Content Generation with Fine-Grained Control

Date: 2026-03-13T23:29:10.418Z

This week shipped features that give teams much better control over content generation. You can now generate changelogs, blog posts, and tweets on-demand while picking exactly which commits, PRs, and releases to include. Brand voice imports pull directly from your X accounts via OAuth, and there's a new blog generator for longer-form storytelling across four tones. Triggers can auto-publish instead of always creating drafts, saving manual review work. We also made generation progress visible with skeleton cards, added a fail tool so agents tell you why they can't generate, and improved error logging throughout the dashboard.

## Highlights

### On-demand content with selective source filtering

Generate changelogs, blog posts, and tweets on-demand. Choose which commits, PRs, and releases to include, and set a custom lookback window per generation.

### Multi-source brand voice import via Twitter OAuth

Import tweet examples directly from connected X accounts, with pinned tweets prioritized first. Add custom text references alongside imports.

### Blog post generator with narrative tones

New output type for long-form storytelling. Choose from casual, conversational, professional, or formal tones, separate from changelog format.

### Instant publish toggle for triggers

Schedules can now auto-publish generated content instead of always creating drafts, cutting manual review for teams running frequent generations.

### Multiple social posts per generation

Twitter and LinkedIn agents create multiple distinct drafts from a single run when the data warrants it. Workflow notifications list all created posts.

## More Updates

### Features & Enhancements

- **Support multiple social posts per generation**[#198](https://github.com/usenotra/notra/pull/198) - Twitter and LinkedIn agents can create multiple drafts from a single run with updated workflow notifications. (Author: [@mezotv](https://github.com/mezotv/))
- **Add instant publish toggle for triggers**[#205](https://github.com/usenotra/notra/pull/205) - Enable auto-publish on schedules and event triggers for immediate post creation with "published" status. (Author: [@mezotv](https://github.com/mezotv/))
- **Warn about affected triggers when deleting brand voice**[#197](https://github.com/usenotra/notra/pull/197) - Prevent orphaned schedules by disabling triggers that reference a deleted voice, with a preview shown before deletion. (Author: [@mezotv](https://github.com/mezotv/))
- **Add connected accounts section to settings**[#194](https://github.com/usenotra/notra/pull/194) - View and manage connected X/Twitter accounts directly in organization settings with one-click disconnect. (Author: [@mezotv](https://github.com/mezotv/))
- **Track active content generations with skeleton cards**[#196](https://github.com/usenotra/notra/pull/196) - See real-time progress for running generators on dashboard and content pages via skeleton placeholders and toast notifications. (Author: [@mezotv](https://github.com/mezotv/))

### Developer Experience

- **Add fail tool for AI agents**[#195](https://github.com/usenotra/notra/pull/195) - Agents gracefully fail with a reason shown in logs and emails when no data is available. (Author: [@mezotv](https://github.com/mezotv/))
- **Improve logs UI and add error visibility**[#195](https://github.com/usenotra/notra/pull/195) - Error messages display under log entry titles, actions column added with reference ID copy, integration type labeling fixed. (Author: [@mezotv](https://github.com/mezotv/))
- **Add getBrandReferences tool to all AI agents**[#188](https://github.com/usenotra/notra/pull/188) - All agents call the brand voice API first to match your writing style before generating. (Author: [@mezotv](https://github.com/mezotv/))

### Bug Fixes

- **Fix webhook logging for on-demand content** - On-demand content now appears in Logs page after creation. (Author: [@mezotv](https://github.com/mezotv/))
- **Split missing header vs unsupported event type in webhook handler** - Clearer error logging helps distinguish config issues from actual unsupported events.
- **Fix API content routes with org-scoped keys**[#204](https://github.com/usenotra/notra/pull/204) - API routes properly align with org-scoped API keys.

### Infrastructure

- **Use Bun in Docker image**[#203](https://github.com/usenotra/notra/pull/203) - Docker builds now use Bun for faster startup times.
- **Expose environment port for deployment**[#203](https://github.com/usenotra/notra/pull/203) - Server reads port from process.env for cloud deployments.
- **Changelog and Showcase refactor**[#199](https://github.com/usenotra/notra/pull/199) - Marketing site displays product changelog using Notra's own SDK with timeline view and detail pages. (Author: [@mezotv](https://github.com/mezotv/))
