github_actions
GitHub Actions — workflows, runs, jobs, logs and artifacts.
Read first: runs then jobs then logs is the normal path
to understand why a pipeline failed.
⚠️ Read status AND conclusion: a completed run may have
failed, and conclusion stays null while the work is not finished.
⚠️ op='dispatch' triggers a real run — thus
potentially a build, a publication or a deployment. It is
dry-run by default: dry_run=false to really trigger. The
workflow must declare workflow_dispatch, otherwise GitHub answers 404 — here
a 404 means "not triggerable", not "does not exist". The response
does NOT return the created run: find it by listing the runs right
afterwards (there is a short delay).
⚠️ rerun reruns the WHOLE run (billed minutes, possible
redeployment); rerun_failed only replays the failed jobs — cheaper
and less risky. cancel interrupts work in progress.
⚠️ logs and download return an ephemeral signed URL (~1 minute),
to be downloaded without an authentication header — the storage refuses a
doubly authenticated request. None signals expired logs or a
stale artifact (90 days by default).
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "github_actions"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| op | No | the operation, see above. | runs |
| ref | No | op='dispatch' — the branch or tag to run on. | |
| _org | No | Org (id) de CET APPEL. `oto_list_orgs()`. | |
| page | No | page number. | |
| repo | No | repository name. | |
| actor | No | op='runs' — filter by triggering actor. | |
| event | No | op='runs' — filter by triggering event. | |
| owner | No | repository owner. | |
| _group | No | Équipe (id) de CET APPEL, sous son org parente. | |
| branch | No | op='runs' — filter by branch. | |
| inputs | No | op='dispatch' — the workflow's inputs. | |
| job_id | No | the targeted job (job, logs). | |
| run_id | No | the targeted run. | |
| status | No | op='runs' — queued | in_progress | completed | success | failure… | |
| _run_id | No | OBLIGATOIRE à chaque appel dès `run_start` ou `data_claim_next` : sans lui, l'écriture sur une ligne réservée est refusée. Hérité seulement si le serveur tient un run actif — n'y compte pas. | |
| dry_run | No | op='dispatch' — True (default) describes without triggering. | |
| _account | No | Compte à OPÉRER parmi : `Julien` (org), `Tulina front` (org). `oto_identity(op='list')`. | |
| _project | No | Projet (id) de CET APPEL — jeton PRIMAIRE. `oto_project(op='list')`. | |
| per_page | No | rows per page (1-100, default 30). | |
| workflow | No | numeric id or file name (ci.yml) — the name is more stable. | |
| _instance | No | Instance de connecteur PRÉCISE (un credential exact). `oto_instance(op='list')`. | |
| artifact_id | No | the targeted artifact (artifact, download, delete_artifact). |