Public Forms, Dark Mode, and Epic Orchestrator
Create public forms for external submissions, work in dark mode, and let the Epic Orchestrator process entire feature packages automatically.

Three major additions: public forms for external submissions, a dark mode for focused work, and an Epic Orchestrator that automatically processes complete feature packages. Plus new filters for milestones and releases.
Public Forms: Receive Tickets from External Users
Board admins can now create a public form per board. External people — customers, partners, applicants — fill out the form, and their submission is automatically turned into a ticket. No login needed, no manual copy-pasting.
Setting Up a Form
- Open a board and switch to the Public Forms tab
- Click Create Form and give it a name
- Drag fields into the Field Builder and map them: which field becomes the ticket title? Which one the description? Which captures the submitter's email?
- Optional: Upload a logo and pick a brand color
- Activate the form — Spedy generates a speaking URL like
https://your-org.spedy.app/forms/customer-support
What You Can Do
- Live preview: See in real time how the form will look while configuring it.
- File uploads: Submitters can attach files that become ticket attachments.
- Confirmation email: Optionally send submitters a confirmation email (DE + EN).
- View submissions: Under the Submissions tab, see all entries with detail view and link to the created ticket.
- CSV export: Export all submissions as CSV (up to 10,000 rows).
- Duplicate form: Clone an existing form as a starting point for a new one.
- Iframe embedding: Embed the form on external websites via iframe — the embed code is provided directly in the builder.
- OG image: Shared form links display an auto-generated preview card with title and brand color.
URL Structure
Each form gets a speaking slug (e.g., customer-support). The URL is: https://<org-subdomain>.spedy.app/forms/<slug>. Renaming the slug invalidates the old URL — Spedy shows a warning before saving.
Spam Protection
Public forms are protected by a honeypot field, per-IP daily rate limits, and endpoint rate limiting. IP addresses are stored only as GDPR-compliant hashes.
Dark Mode
Spedy now supports a dark color scheme. The toggle affects the dashboard — landing pages and login always stay light.
Switching Themes
- Quick: Click your profile picture in the sidebar → sun/moon toggle in the dropdown.
- Detailed: Go to Account → Appearance and choose between Light, Dark, and System (follows your operating system setting).
New accounts start in light mode by default. Your choice is stored in the browser and does not sync across devices — you can work in light mode at the office and dark mode at home.
Epic Orchestrator: Process Epics Automatically
The new Epic Orchestrator connects runner teams with Epics. Instead of manually assigning individual tickets to an agent, you can now start an entire Epic at once — the orchestrator handles ordering, dependencies, and the shared branch.
How It Works
- Make sure a Runner Team is configured (Settings → Runners → Teams).
- Open an Epic with subtickets or stories.
- Assign the Runner Team to the Epic — the orchestrator starts automatically.
- In the Epic Run Panel, track progress: which tickets are running, waiting, or completed.
What the Orchestrator Does
- Dependency graph: Builds a directed graph from
BLOCKSlinks and parent-child relationships. Parent tickets always wait for their children. - Wave-based execution: Tickets with no pending dependencies are started in parallel as sub-runs. Once a wave completes, the next one is released.
- Shared branch: All sub-runs commit to a shared
epic/<display-id>branch. No merge chaos from dozens of individual PRs. - Auto-PR: After all tickets complete, the orchestrator automatically opens a pull request from the epic branch against the default branch.
- Pause & Resume: If a sub-run fails, the entire run pauses. You can skip or retry the failed ticket run.
- Restart / Continue: A cancelled or completed run can be continued (only open tickets) or fully restarted. Newly added subtickets are automatically included.
- 100-ticket limit: To protect against runaway costs, the maximum number of tickets per epic run is capped at 100.
Epic Ticket Moves Automatically
Once all sub-runs succeed, the Epic ticket is automatically moved to the runner team's configured completion status (e.g., "Review").
Milestone and Release Filters
The Issues Hub and board views now have dedicated filter sections for Milestones and Releases — in addition to the existing Epic filter.
What Changes
- The filter sidebar shows two new sections with search: Milestones (flag icon) and Releases (package icon).
- You can select multiple milestones or releases at once (OR logic).
- The sections only appear on boards where the Milestones & Releases feature is enabled.
- The Kanban board view also filters client-side by milestone and release.
Improved Agent Context for Epics
When the Board Helper (@helper) is mentioned on an Epic, the ticket context now automatically includes all subtickets and epic stories with their current status, type, assignee, latest runner job, and commit count. The agent can answer questions like "What's the status?" directly without needing to search.
Frequently asked questions
Quick answers to the most common questions about this topic.
What are Public Forms?
Do I need the Pro plan for Public Forms?
How do I enable Dark Mode?
What does the Epic Orchestrator do?
Can I filter by milestones in the Issues Hub now?
Keep reading

Preview agent: permissions, commands, and auto-PR
Control per project what the coding agent may do in the live preview — and every successful run now ends in a pull request automatically.

Preview branch selection and grouped notifications
Previews now boot any branch or PR, notifications are grouped by category, and AI agent settings get a dedicated home in the sidebar.

Self-Healing PRs, MCP Time Approval, and Preview Improvements
CI failures on pull requests are automatically fixed by agents, MCP-tracked time goes through an approval workflow, and Preview Environments get an address bar, reset function, and a running previews dashboard.