✨ From vibe coding to vibe deployment. UBOS MCP turns ideas into infra with one message.

Learn more
Andrii Bidochko
  • Updated: March 22, 2026
  • 2 min read

Extending the OpenClaw DevOps Agent to Monitor GitHub Actions CI/CD Pipelines

## Introduction

Developers often need visibility into their CI/CD pipelines directly from the OpenClaw DevOps Agent. This guide shows how to extend the agent to monitor a GitHub Actions workflow, detect build or test failures, and surface alerts in the agent UI.

### Prerequisites
– OpenClaw DevOps Agent installed and running.
– Access to the GitHub repository with Actions enabled.
– API token with `repo` and `workflow` scopes.

## Step‑by‑Step Configuration

1. **Create a GitHub App or Personal Access Token**
Generate a token and store it securely in the agent’s secret store.

2. **Add a new monitor plugin**
In the agent’s `plugins` directory, create `github-actions-monitor.js`:

javascript
const { Octokit } = require(“@octokit/rest”);

module.exports = async function(context) {
const octokit = new Octokit({ auth: process.env.GITHUB_TOKEN });
const { owner, repo } = context.config;
const runs = await octokit.actions.listWorkflowRunsForRepo({
owner,
repo,
status: “completed”,
per_page: 5,
});

runs.data.workflow_runs.forEach(run => {
if (run.conclusion !== “success”) {
context.alert({
title: `GitHub Actions failure in ${run.name}`,
message: `Run #${run.run_number} finished with ${run.conclusion}.`,
severity: “high”,
link: run.html_url,
});
}
});
};

3. **Configure the plugin in `agent.yaml`**

yaml
plugins:
– name: github-actions-monitor
enabled: true
config:
owner: your-github-username
repo: your-repo-name

4. **Restart the agent**
bash
systemctl restart openclaw-agent

## Sample Code Snippets

– **Fetching the latest workflow run**

javascript
const latestRun = await octokit.actions.getWorkflowRun({
owner,
repo,
run_id: run.id,
});

– **Sending an alert to the UI**

javascript
context.alert({
title: “Build failed”,
message: `Commit ${run.head_sha} caused a failure.`,
severity: “critical”,
link: run.html_url,
});

## Troubleshooting Tips

| Symptom | Possible Cause | Fix |
|———|—————-|—–|
| No alerts appear | Token missing or insufficient scopes | Verify `GITHUB_TOKEN` is set and has `repo` and `workflow` scopes |
| Alerts are duplicated | Plugin runs on every poll interval without state tracking | Store the ID of the last processed run and skip older ones |
| UI does not show alerts | Agent UI version does not support custom alerts | Upgrade to the latest OpenClaw UI or enable the `alerts` module |

## Further Reading

For a complete example of deploying the OpenClaw DevOps Agent, see our [host‑openclaw guide](https://ubos.tech/host-openclaw/).

Happy monitoring!


Andrii Bidochko

CTO UBOS

Andrii Bidochko is an AI entrepreneur and researcher focused on AI agents, reinforcement learning, and autonomous systems. He writes about the technologies shaping the future of machine intelligence, from frontier models and agent architectures to real-world AI applications.

Sign up for our newsletter

Stay up to date with the roadmap progress, announcements and exclusive discounts feel free to sign up with your email.

Sign In

Register

Reset Password

Please enter your username or email address, you will receive a link to create a new password via email.