Skip to main content
This recipe keeps an Agent from spending time on every new issue. A connected GitHub account starts the run when an issue opens, a Model block answers Yes or No to “Is this issue worth a maintainer’s time?”, and only Yes reaches the Triage Agent. A No ends the run.
The Checkfu CLI and TypeScript SDK are private-alpha artifacts with no self-service public installation channel. Part of this flow is behind a rollout fence; a deployment that has not enabled it refuses the request rather than running it. Confirm capability status before making availability part of your application’s contract.

Before you start

You need:
  • An API key with the admin or root role in CHECKFU_API_KEY.
  • A service account for the Automation to run as (RUNS_AS) and the person who authors it (AUTHOR). An API key is not a person, so a create through an API key names the author.
  • A connected GitHub account (GITHUB_ACCOUNT, a conn_…).
  • The Triage Agent (TRIAGE_AGENT) and the Environment it runs in (ENVIRONMENT). When the Workspace has exactly one, delete the environment_id line and leave out ENVIRONMENT.
  • A model routing profile with the key fast-judge, or change route.profile to one you have.
The CLI examples use CLI access and the TypeScript examples use the TypeScript SDK.
1

Create the draft

Save the recipe as proactivity.yaml. It is the published proactivity.yaml with created_by_principal_id added:
proactivity.yaml
Keep the auto_… id it returns in AUTOMATION.
2

Grant what it needs

The service account needs use_connection on the GitHub account, act_as on the Triage Agent and use_model on the route. GET /v1/automations/{id}/access lists each one with its status:
Grant a missing one with a PermissionAssignment:
A grant that already exists answers 409.
3

Test with a sample issue

The sample event has the shape GitHub sends, so {{opened.issue.title}} and the other references resolve.
Starting from an app’s events needs a deployment that registers provider triggers. Where it does not, test and publish refuse with automation.draft_has_problems and the problem “Starting from an app’s events is not available here”. Check capability status, or start the same blocks from a webhook trigger meanwhile.
4

Publish and watch

List the runs and their status:
The publish summary names what it listens for. Each new issue starts a run; a No answer ends it on worth_it, and Yes starts a Triage Session. Pause and resume with checkfu automations pause and checkfu automations resume.
See Automations for every block and field, and Trigger Automations from providers for how provider events are delivered.