Skip to main content
Comment @embedder in a connected repository to request a change, or turn on automatic pull request reviews. Your daemon machine does the work, using the Embedder project mapped to that repository.

Before you start

  • An Embedder project for the repository. Create the project first if it doesn’t exist.
  • An owner or admin role in the Embedder organization that owns the project’s team. If you don’t have one, ask your Embedder administrator to connect the repository.
  • Permission in GitHub to install the Embedder GitHub App on the repository.
  • GitHub linked as a sign-in method on your Embedder account. In the Embedder app, open Settings and choose Link beside GitHub under Linked sign-in methods.
  • A machine for the daemon with the project’s toolchain and any hardware the work needs. The daemon’s Embedder account must belong to the team that owns the project.

Connect a repository

  1. In the Embedder app, select the team that owns the project and choose GitHub in the sidebar.
  2. Choose Connect GitHub. Complete the installation on GitHub and grant the app access to the repository.
  3. GitHub returns you to the GitHub Integration page, which confirms GitHub installation linked. If the installation doesn’t appear, choose Refresh. If the page shows GitHub App installed but not linked yet, choose Finish linking.
  4. Find the repository under the installation. Use Show repositories if the list is collapsed, and Search repositories to filter it.
  5. In the project selector beside the repository, choose your Embedder project. Wait for Repository connected.
  6. On the daemon machine, run embedder start daemon. Run embedder monitor and confirm the daemon is connected.
A project can back only one repository. A project that is already linked appears as Already linked to followed by the repository name, and you can’t select it. When the team has a linked installation and at least one mapped repository, the page shows GitHub linked and ready. To stop routing work from a repository, set its project to Not connected. To remove the whole installation from the team, choose Disconnect on the installation. This deactivates its repository mappings.

Request a change

Comment @embedder followed by your request in any of these places:
  • A comment on an issue or pull request.
  • A review comment on a pull request’s changed lines.
  • The body of a new issue.
Embedder reads the text after @embedder up to the first blank line. A mention with no request after it does nothing, and comments from bots are ignored. Until a daemon picks up the request, you can edit the comment to change it. To cancel it, remove the mention or delete the comment. After the run starts, editing the comment doesn’t change the request. Embedder replies asking you to leave a new comment instead. Coding requests publish by default. Embedder commits, pushes and reports the pull request, branch and commit: Ask for local-only work if you don’t want a push or pull request. Merging always needs a separate request. Review the diff and verification results first. Embedder doesn’t work on pull requests opened from forks, or on pull requests that are no longer open. If someone pushes to the pull request branch while Embedder is working, Embedder’s push can fail. Request a new run against the current branch instead of overwriting their work.

Answer a question

When Embedder needs input, it posts a question with a reply command. Post a new comment with that command and your answer:
Copy the exact command from Embedder’s comment, because it identifies the paused run. The reply must come from the person who made the request. The run resumes in the same checkout. Embedder keeps the checkout of a paused or failed run on the daemon host so a reply can resume it. Checkouts older than seven days are removed when the daemon starts. After that, start a new request with the relevant context.

Review pull requests

Embedder can review pull requests automatically. A review reads the diff, posts findings on changed lines and never edits files or runs build commands.

Turn on automatic reviews

  1. On the team’s GitHub Integration page, find the installation. Choose Show repositories if its list is collapsed.
  2. Turn on Review beside each mapped repository you want reviewed.
  3. Keep a daemon online for that repository’s team and project. Reviews run only while a daemon can pick them up.
Review is unavailable when the repository isn’t mapped to a project, when you can’t manage the integration, or when reviews are stopped for the installation. Automatic reviews run when a pull request is opened, reopened, marked ready for review, or receives new commits. Draft pull requests aren’t reviewed. To request a review yourself, comment @embedder review on a pull request in a mapped repository. This works even when Review is off for the repository.

Read the review

Each review posts:
  • An overview of the change with a risk rating of high, medium or low.
  • Findings on the changed lines, each with a severity and sometimes a suggested fix. A review reports at most 50 findings.
  • An Embedder Review check. It passes when there are no findings, fails when any finding is high severity, and is neutral otherwise.
A review is skipped when the pull request has no diff or the diff is larger than about 400 KB. Split large changes into focused pull requests. A clean review doesn’t replace the project’s tests. To give reviewers project rules, such as generated-code boundaries or error-handling requirements, add .embedder/REVIEW.md to the repository. Embedder reads the first 32 KB.

Choose installation settings

The installation’s Automatic pull request review section controls defaults for all its repositories: Check the Review and Autofix switches on each repository instead of assuming the defaults apply.

Use autofix

Turn on Autofix beside a repository to have Embedder fix review findings. Autofix needs Review turned on. When a review finds issues, Embedder queues a separate fix run, shown as an Embedder Autofix check. That run pushes to the pull request branch. Leave Autofix off if you only want findings.

Troubleshoot

  • GitHub isn’t in the sidebar, or connect controls are missing: ask your Embedder administrator whether integrations are available for your team and whether you have an owner or admin role in the organization.
  • You do not have permission to perform this action: connecting, mapping and review settings need an owner or admin role in the Embedder organization. Ask your Embedder administrator.
  • GitHub identity link required: link GitHub under Linked sign-in methods in Settings, then choose Connect GitHub again.
  • GitHub connection expired: choose Manage GitHub sign-in, choose Reconnect beside GitHub, then retry Connect GitHub.
  • GitHub install session expired or GitHub install could not be completed: choose Connect GitHub again from the GitHub Integration page.
  • Only the installer can link this installation: ask the person who installed the GitHub App to open the page and choose Finish linking. Or uninstall the app on GitHub and install it again from the GitHub Integration page.
  • This GitHub installation can’t be linked here: the installation is linked to another organization, or was removed or suspended on GitHub.
  • The repository is missing: confirm the GitHub App has access to it, finish any pending link, and choose Refresh.
  • No work starts: check that the repository is mapped, a daemon is connected, and the daemon’s account belongs to the project’s team. If the daemon is limited to one project, check that it’s this project.
  • No automatic review appears: check that Review is on, the pull request isn’t a draft, and a daemon is online for the mapped project. Check Automatic reviews per month. If no daemon picks up a review within six hours, the check closes as No runner picked this up. Push to the pull request to start a new review.
  • Nothing happens on a pull request from a fork: Embedder doesn’t work on fork pull requests. Push the branch to the connected repository and open the pull request from there.
  • Embedder says the pull request is no longer open: the pull request was closed or merged before the run started. Leave a new @embedder comment on an issue to start a new pull request from the default branch.
  • GitHub CLI isn’t available on the daemon host: Embedder uses gh from the host’s PATH or downloads its own copy. If the host can’t download it, install GitHub CLI and set EMBEDDER_GH_PATH to its absolute path. Embedder signs in to git and gh for each run, so you don’t need a separate gh login.
  • Update the daemon: agent-owned publishing is required: update Embedder on the daemon host, then stop and start the daemon.
  • Build tools are missing: install or configure them on the daemon host, then request a new run.
  • The push fails: check whether the pull request branch changed during the run.
  • Work waits for hardware: run embedder monitor to find the active task. Let it finish, or stop it deliberately.
See Operate the daemon for authentication and host controls.
Last modified on October 13, 2026