@render-harness/cap-github
v0.8.2
Published
GitHub monitoring capability pack for the Render agent harness.
Maintainers
Readme
@render-harness/cap-github
GitHub webhook and repository tools for agents in the Render harness.
Use this pack when an agent should react to GitHub events, inspect issues and pull requests, read workflow status, and optionally comment or update GitHub objects.
Configuration
Drop the pack into render-harness.yaml:
capabilities:
- pack: "@render-harness/cap-github"
config:
webhookSecretEnv: "GITHUB_WEBHOOK_SECRET"
tokenEnv: "GITHUB_TOKEN"
accessMode: "read"Set these environment variables on the entry that loads the agent:
GITHUB_WEBHOOK_SECRET: GitHub webhook secret used to verify deliveries.GITHUB_TOKEN: GitHub token used for repository reads and optional write tools.
Connector
The pack mounts the github connector at /connectors/github. Configure that URL as a GitHub webhook endpoint and use the same secret as GITHUB_WEBHOOK_SECRET.
Supported webhook events:
issuesissue_commentpull_requestpull_request_reviewpull_request_review_commentpushcheck_runcheck_suiteworkflow_run
Each accepted GitHub delivery enqueues one harness run.
Config Keys
| Key | Type | Default | Notes |
| --- | --- | --- | --- |
| agent | string | default agent | Agent name to enqueue runs for. |
| userId | string | cap-github | User ID stored on enqueued runs. |
| webhookSecretEnv | string | GITHUB_WEBHOOK_SECRET | Env var that contains the GitHub webhook secret. |
| tokenEnv | string | GITHUB_TOKEN | Env var that contains the GitHub token. |
| accessMode | read or read_write | read | Enables write tools only when set to read_write. |
| allowedRepositories | string[] | all repositories | Restricts events to repositories such as owner/repo. |
| events | string[] | all supported events | Restricts accepted webhook event names. |
| branches | string[] | all branches | Restricts branch-scoped events. |
| labels | string[] | all labels | Restricts issue and pull request events to matching labels. |
| ignoredActors | string[] | none | Ignores events from matching GitHub usernames. |
Tools
Read tools are available when GITHUB_TOKEN is set:
github.get_issuegithub.get_pull_requestgithub.list_pull_request_filesgithub.list_pull_request_reviewsgithub.list_pull_request_commitsgithub.list_issue_commentsgithub.get_contentgithub.list_checksgithub.list_workflow_runsgithub.get_workflow_rungithub.list_workflow_run_jobs
Set accessMode: read_write to enable write tools:
github.create_issue_commentgithub.create_pull_request_review_commentgithub.update_issuegithub.add_issue_labelsgithub.set_commit_statusgithub.rerun_workflow_rungithub.cancel_workflow_run
Use permissions.requireApproval for write tools if the agent should ask before mutating GitHub state.
Test Commands
pnpm --filter @render-harness/cap-github build
pnpm --filter @render-harness/cap-github test