github-sync
Skill97 starsChanged 32 days agoApache-2.0View on GitHub
Read or synchronize bounded GitHub issues, threads, and pull requests through the GitHub connector, with scoped authority and readback.
11 other projects use a version of this.
Adopted by
Most recently taken up by
- allemaar/open-skillstheir own version, first seen Oct 13, 2026
- mccc8/claude-skillstheir own version, first seen Oct 13, 2026
- tymrtn/tomorrowkit-for-mindstheir own version, first seen Aug 30, 2026
- Cal-Starfur/claude-skillstheir own version, first seen Jun 21, 2026
- bmad-labs/skillstheir own version, first seen Jun 14, 2026
- trevorbyrum/claude-skills-suitetheir own version, first seen Jun 8, 2026
Other versions11 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 11
- 9thLevelSoftware/legion★ 76same name
- bmad-labs/skills★ 19same name
- allemaar/open-skills★ 15same name
- Mindgames/skills★ 4same name
- tymrtn/tomorrowkit-for-minds★ 4same name
- Howie126313/obsidian-vault-kit★ 3same name
- h-mascot/Enterprise-Crew-skills★ 1same name
- trevorbyrum/claude-skills-suite★ 1same name
- Cal-Starfur/claude-skills★ 0same name
- jahody/skills★ 0same name
1 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository94 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- llms.txtllms.txt
- runxSkill
- adopt-skillSkill
- agencySkill
- answer-from-docsSkill
- attention-reviewSkill
- audit-receiptSkill
- brand-voiceSkill
- business-opsSkill
- chargeSkill
- chief-of-staffSkill
- cold-outreachSkill
- content-pipelineSkill
- contract-drafterSkill
- conversation-replySkill
- conversation-reviewSkill
- crm-cleanupSkill
- cve-auditSkill
- data-storeSkill
- data-subject-requestSkill
- deep-researchSkill
- diagnose-skill-runSkill
- dispute-respondSkill
- ecosystem-briefSkill
- extractSkill
- ghostwriteSkill
- github-pr-commentSkill
- github-pr-reviewSkill
- google-analyticsSkill
- google-calendarSkill
- google-search-consoleSkill
- governed-outboundSkill
- helpdeskSkill
- incident-commanderSkill
- issue-intakeSkill
- issue-to-prSkill
- issue-triageSkill
- knowledge-routerSkill
- lead-enrichmentSkill
- lead-qualifySkill
- least-privilegeSkill
- ledgerSkill
- list-hygiene-judgeSkill
- marketplace-invokeSkill
- meeting-followupSkill
- mock-chargeSkill
- mock-paySkill
- mock-refundSkill
- moltbookSkill
- n8n-handoffSkill
- nitrosendSkill
- nws-weather-forecastSkill
- open-meteo-weather-forecastSkill
- operator-inboxSkill
- ops-deskSkill
- organic-growthSkill
- policy-authorSkill
- postmortem-makerSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
4 rules. 0 are common, 2 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 10 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 31
Use github-sync when an operator needs a reproducible pull or push contract for issues, pull requests, or threads, especially when cursor …
- Very specific: line 40
Do not use a plan as evidence that remote state was read or changed.
- Distinctive: line 91
Do not treat local cursor persistence as remote provider readback.
- Distinctive: line 97
Do not claim comments, labels, issues, or PRs were read or changed until the native provider operation proves the expected access, …
“Common” is measured: kept by at least 6 in 10 of the 10 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
GitHub Sync
Define one bounded synchronization between local Runx state and a GitHub repository. The skill makes direction, resource set, filters, content identity, scope, cursor, and authority posture explicit before the selected GitHub instance is allowed to read or mutate GitHub.
The default github-sync runner performs the requested pull or push. plan
is the explicit no-effect runner; pull and push remain explicit execution
lanes for compatible callers. Pulls are bounded reads. A push carries one to
eight typed mutations that one GitHub operation applies, and returns each
item's outcome. It closes only on an independent GitHub readback of every
applied item. An item whose outcome is unknown holds the push for
reconciliation and is never silently retried. No GitHub token enters this
package.
Composes
<!-- Generated from the native execution closure; run pnpm core-skills:composes:generate. -->data-store#append_eventdata-store#read_projection
When to use it
Use github-sync when an operator needs a reproducible pull or push contract for
issues, pull requests, or threads, especially when cursor state must survive
across runs. Use plan only when the requested outcome is a plan. Use pull
for an explicitly selected read lane. Use push for already-decided issue,
pull-request, or comment changes of one kind. Batches are bounded and
best-effort, not atomic: a refused item does not stop the rest, the result
identifies each item, and the operator reconciles before retrying. Use issue-triage to decide what an issue means
and issue-to-pr to govern an implementation lane.
Do not use a plan as evidence that remote state was read or changed. Only the
native runx.provider.operation.v1 result from pull or push is provider
evidence. Do not silently turn a denied push into a pull.
How it works
- Validate the exact
owner/namerepository, direction, resource kind, bounded filters, maximum result count, and requested scope. - A
pullplan requires read scope and records the exact resources a provider may fetch. - A
pushplan requires write scope and one to eight typed mutations that one GitHub operation applies:issues.create,issues.update,pullrequests.update,comments.create, orcomments.update. It rejects unknown fields, oversized content, and mixed kinds, then returnsready_for_execution; planning itself does not grant provider authority. - Optional
plan_and_append_cursorcomposes the canonicaldata-storeskill to append the bounded plan and read the projection back. That proves local cursor persistence, not GitHub synchronization; this package does not own a second cursor database or storage adapter. - The default runner selects the same bounded read or write path from the
validated direction.
pullcalls the planned read (issues.list,issues.read,pullrequests.list,pullrequests.read, orcomments.list) withrepo.read.pushcalls the planned write once underrepo.write: the runtime sends each item, records each outcome, and reads every applied item back before the push closes. Both run under the GitHub instance selected here: the signed-inghsession or a stored token.
Inputs and result
repois exactlyowner/name.directionispullorpush.resourcescontains the issue, PR, thread, orbatchselector and a limit no greater than 100. A push has one to eightmutationsentries withref,op, and an exact typedpayload. Issue and PR changes useop: update; a new issue usesref: issuesandop: create; new thread comments useop: comment. Bodies are capped at 65,536 characters. Pulls return GitHub's records whole.scopeis the requested read or write scope.
The runx.github_sync.v1 plan records exact direction, provider operation,
scope, filters, blockers, authority posture, cursor state when used, and the
explicit absence of remote effects. Execution additionally emits the native
provider-operation packet; it does not rewrite the planning packet to imply a
remote effect.
Stop conditions
- Refuse malformed repositories, unknown resource kinds, unbounded selectors, limits above the contract, more than eight mutations, unknown mutation fields, or content beyond the declared bounds.
- Refuse push when write scope is missing; do not degrade silently.
- Do not treat local cursor persistence as remote provider readback.
- Refuse a push that mixes new issues, issue, pull-request, and comment changes; send each kind as its own push.
- Refuse when no GitHub instance is selected, or the selected one lacks the scope. Never treat an available instance as evidence of the intended repository.
- Do not claim comments, labels, issues, or PRs were read or changed until the native provider operation proves the expected access, operation, and readback.
Example
A caller wants to pull the next 50 open issues after cursor 2. Planning can
persist that cursor locally; pull then performs issues.list through the
selected instance and returns the provider result. To close issue 241, a push
carries ref: issues/241, op: update, and
payload: {state: closed, state_reason: completed}. Runx applies only that
issue update through issues.update under repo.write, and reads issue 241
back.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

