Acting on recommendations
The Technical queue — where recommendations come from, how to filter and act on them in bulk, and the difference between staging a PR and applying a fix.
The Technical tab is one queue holding three kinds of work: backlog items from the strategy, live fixes the platform proposes, and recommendations from audits and evidence. It is where SEO findings turn into changes to the website.
Nothing in this queue dispatches itself. You filter, select and act — by design, so a client's site never changes because a robot felt like it.
Before you start
Staging or applying a fix needs the website's GitHub connection. Running a fix locally needs the Zyan desktop app open with the project folder bound. An active, automation-ready strategy is required for the agent and auto-apply lanes.
Strategy backlog
Items accepted during a strategy review
Live fixes
Meta, canonical, schema, alt text, internal links
Audits and research evidence
Error-tier site-audit checks, and findings raised while research read the site
The Technical queue

Work the queue
Open the Technical tab
Technical on a website. It opens on Open items.
Filter down
Narrow by technical area — Crawl & indexing, Performance, Schema, Deployment — then by priority and status.
Select rows
Rows carry no per-row buttons on purpose. Actions live in the bulk bar and in the detail drawer.
Act in bulk
Stage PR for N opens a pull request for the selection. Auto-apply N appears instead when auto-apply is armed for the website.
Or open a row
The drawer carries the full detail and the per-item actions, including the local-machine lanes.
Filters and statuses
| Setting | What it changes | Default |
|---|---|---|
| Open items | Shows only unresolved rows. | Selected |
| Everything (incl. resolved) | Shows every row regardless of status. | — |
| Filter by technical area | All technical work, Crawl & indexing, Performance, Schema, or Deployment. | — |
| Filter by priority | Any priority, or one priority tier. | — |
| Filter by status | Open items, Snoozed, Dismissed, or Marked done. | — |
| Mark done | Sets the recommendation to completed. Available in the bulk bar and the drawer. | — |
| Dismiss | Dismisses the recommendation. | — |
| Snooze | Hides the recommendation until later. | — |
How a fix reaches the website
There are three routes, and which one you get depends on the fix and the website's settings.
| Route | What happens | When you see it |
|---|---|---|
| Stage PR | The change is committed on a branch and opened as a pull request for review | The default, and the safe one |
| Auto-apply | The change is applied through the live-fix lane without a review step | Only when auto-apply is armed for the website |
| Local machine | A bound desktop runs the fix on your own machine | Items with no instant patcher |
Direct apply can be downgraded to a pull request
If you see Direct apply was downgraded — strategy gate, autonomous apply was not ready for this website and the fix became a pull request instead. That is the system failing safe. Review the pull request as normal.
Local-machine fixes
Some items have no instant patcher and need a real working tree. The button then reads Run on local machine, or Queue for local machine when no fresh bound desktop currently advertises that capability.
A queued fix waits. It does not fail. Open the desktop app with the project bound and up to date, and the fix runs when a capable runner appears.
The desktop never pushes on its own
Changes made by a local run ride back through the platform and land as a commit or a pull request under the website's normal publishing rules. The desktop app does not push directly to the repository.
Sending a batch to Claude
You can bundle selected items into one prompt for the project's Builder SEO terminal. Preview shows exactly one batch prompt before it is sent. Bulk fix prompts are capped at 10 items.
This surface needs the terminal service
If the Builder terminal service is not configured for your deployment, the terminal surfaces render a dormant state rather than a dead button. Use Copy prompt from the research composer, or the pull-request lane, until it is wired up.
Where the rows come from
| Source | How it arrives |
|---|---|
| Strategy backlog | Items accepted during a strategy review land as workstream items |
| Live fixes | Source-level SEO fixes — meta, canonical, schema, alt text, internal links — with a rollback ledger |
| Site audit | Open the latest site audit reads the cached audit for free; error-tier checks can be promoted into the queue |
| Research evidence | Recommendations raised while research read the site |
The Promote audit errors automatically switch under SettingsAutomation & budget adds error-tier audit checks to the queue whenever a site audit of the linked research target completes. It is free, errors only, and off by default.
When the queue refuses
If an action is refused because the strategy is not automation-ready, the readiness checklist appears right there in the Technical tab with the named remedy — usually Create strategy, Repair or Open strategy. Fix the row it names and try again.
Troubleshooting
| Symptom | Cause | Fix |
|---|---|---|
| A row has no buttons | Rows deliberately carry none | Select it for the bulk bar, or open the drawer |
| Queue for local machine instead of Run on local machine | No fresh bound desktop advertises the fix capability | Open the desktop app with the project bound; the queued fix runs when a runner appears |
| A fix stays queued for a long time | No capable runner has appeared | Check the desktop app is open, signed in, bound and up to date |
| Direct apply was downgraded — strategy gate | Autonomous apply was not ready | Review the pull request it opened instead |
| A readiness checklist appears after an action | The strategy is not automation-ready | Work the named rows — usually a missing active strategy or budget |
| The batch prompt button does nothing useful | The terminal service is not configured for this deployment | Ask your platform operator; use pull requests meanwhile |
| Fixes never auto-apply | The Fixes lane is paused, or auto-apply is off | Check Settings → Automation & budget; per-fix buttons keep working while the lane is paused |