Run your first job
With the webhook registered and at least one agent and trigger configured, you are ready to run Mate for the first time.
Trigger the agent
Section titled “Trigger the agent”The simplest trigger to test is issue_assigned. In GitLab:
- Open any issue in the project where you registered the webhook.
- In the Assignees field on the right sidebar, assign the issue to the bot user.
GitLab fires a webhook event to Mate. Within a few seconds, a new job appears in the console.
Watch the job in the console
Section titled “Watch the job in the console”Navigate to Jobs in the tenant sidebar. The table refreshes automatically every few seconds while jobs are in progress.
The job passes through these statuses:
| Status | Meaning |
|---|---|
STARTING | Container is being allocated; agent has not run yet |
RUNNING | Agent is actively executing |
FINISHING | Agent finished; container is shutting down |
DONE | Job completed normally |
CANCELED | Stopped by user or timeout |
ERRORED | Unexpected failure |
Click any row to open the Job Detail page.
Job detail and event timeline
Section titled “Job detail and event timeline”The detail page shows a summary (status, outcome, start/finish time, cost, tool call count) and a live Event timeline that streams events as they arrive:
- Status change — transitions between statuses.
- Tool call — each GitLab API call the agent made, with outcome (OK / error) and duration.
- Log — stdout/stderr output from the agent process.
- Final status — the outcome (
SUCCESSorFAILURE) and exit code.
While the job is running, the timeline is labelled LIVE and new entries appear at the top. Use Pause to stop the live feed temporarily; Resume to continue.
To cancel an in-flight job, click Cancel job on the detail page. Cancellation is accepted immediately and the job transitions to FINISHING then CANCELED.
Results in GitLab
Section titled “Results in GitLab”The agent acts as the bot user. During the closed beta, results arrive as comments from the bot user — a reply posted on the issue or MR that triggered the job. Write actions such as pushing branches, opening merge requests, and updating issues are part of the permission model but their tools are not yet enabled, so the agent does not perform them today.
Check the issue or MR in GitLab that triggered the job to see the agent’s comment.
If the job does not appear
Section titled “If the job does not appear”- No job row after 30 seconds: check that the webhook was saved correctly in GitLab (Settings → Webhooks → Recent deliveries). A 4xx response means the URL or secret is wrong. A network error means GitLab could not reach
ingest.mate.engineer. - Job appears but stays
ERRORED: open the detail page and check the log events for the error message. Common causes are a missing or expired LLM key, insufficient bot permissions on the project, or a config validation error. - Job completes but the bot did nothing in GitLab: the agent ran but determined no action was needed, or it lacks the necessary permissions. Check the tool call events and review the permissions list in your agent config.
You have completed the walkthrough. Mate is set up and running jobs. From here you can:
- Refine the agent’s
system_promptto match your project conventions. - Add triggers for other events (MR assignments, label changes, comment mentions, pipeline failures).
- Expand permissions once you are confident in the agent’s behaviour.
- Register the webhook on additional projects — each project sends events to the same tenant webhook URL.