sync_issues
Sync local Neotoma with a GitHub repo's issues. Pull leg: GitHub issues and their messages are pulled into local entities.
Instructions
Sync local Neotoma with a GitHub repo's issues. Pull leg: GitHub issues and their messages are pulled into local entities. Push leg: local public issues with no github_number are sanitized (PII stripped) and created on GitHub, then updated locally with the returned number/url. Target repo defaults to the server-configured repo (NEOTOMA_ISSUES_REPO); pass repo (owner/name) to mirror a different repo for one call without changing server config. The push leg is ON by default only for the configured default repo and OFF for any other repo unless push: true is passed. Pass commit: false for a dry run that reports what would be created, updated and pushed and writes nothing. Requires a GitHub token: NEOTOMA_ISSUES_GITHUB_TOKEN in the server environment (or gh auth login on the server host). Supports filtering by state, labels, and since date.
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": "sync_issues"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| push | No | Run the push leg (local public → GitHub). Default: true when `repo` is omitted or equals the configured default repo; false for any other `repo`. Pass true to opt in for another repo. | |
| repo | No | GitHub repository to mirror, `owner/name`. Defaults to the server-configured repo (`NEOTOMA_ISSUES_REPO` / `issues.repo`). Must be the configured repo or be listed in the server's `NEOTOMA_ISSUES_ALLOWED_REPOS` (or `issues.allowed_repos`). A malformed or non-permitted value is rejected before any GitHub request or write. | |
| since | No | Only sync issues updated after this ISO date. | |
| state | No | Filter by issue state. Default: 'all'. | |
| commit | No | When false, dry run: report what would be created, updated and pushed (`plan`) and write nothing locally or on GitHub. Default: true. | |
| labels | No | Filter by labels. |