A portable skill for GitHub discovery, issue fixes, audits and PR maintenance. SKILL.md is canonical; Python helpers use the standard library plus Git/gh.
- Select distinct absolute skill/state/repos roots; keep the canonical checkout and configuration workspace-local. Follow cold start.
- Validate paths.json, Python 3.11+, Git and authenticated gh.
- Ask for a specific issue, repository audit, discovery scope or tracked-PR follow-up. Default: approve edits and submission separately. Explicit autonomy stays within scope.
| Work | Contract |
|---|---|
| Discovery | Complete queue: deduplicate all authorized sources, issues before audits, no quota |
| Leaf | Inline dispatch: only repostew-repository, full phase-specific policy before variables; fresh leaf per repo, same-repo revisit by executor ID |
| Contributions | Submission gates: ACCEPT / ASK_MAINTAINER / SKIP; direct regular PR when qualified, policy-compliant Draft otherwise |
| Audit | Coverage: all tracked files/docs/locales/sites; evidence and limitations |
| Follow-up | Maintenance: independent GitHub Notifications + Email, shared inbox, live event deduplication |
| Authority | Maintained repos: follow scope differs from verified capability |
| Batched continuous iteration | Batches: one repo leaf, disposable job and PR; release after validation/submission, terminal and cleanup gate before next batch |
| Storage | Disposable jobs: release after submission, restore for edits |
| Shared worktrees/sweep | Cleanup: exact ownership/recovery checks; broad sweeps require explicit scope |
The root owns queue, SQLite state, jobs and acceptance. Leaves consume complete inline policy without rereading it. Same-repo continuation refreshes authority/job; new repositories never inherit earlier repository context. See Luna profile only when that model/effort is selected.
Read target rules and live issue/PR state. Reproduce and deduplicate before submitting. Keep changes small, tests honest, security private and attribution truthful. No inferred merge/close/delete/release/governance authority; dependencies/services/ permissions/API/architecture changes need approval. Report-only monitors stay read-only. Preserve dirty/unknown data and credentials. Historical contribution is not active follow.
One selected SQLite state; no implicit reset/import or old-JSON fallback. Explicit rebuild requires full pagination, backup and atomic replacement; local handling/authority cannot be reconstructed from GitHub metadata.
Event-driven maintenance separates lightweight GitHub intake, claimed PR execution,
six-hour reconciliation, six-hour issue discovery and daily portfolio updates.
Mailbox intake remains independent. See event maintenance.
Luna deployments enforce gpt-6-luna / xhigh in actual launch settings. Intake
cursors mean durable queuing, never a claim that all feedback was read or handled.
Use maintenance initialization to bind the installation, plan idempotent schedules, validate/cut over and recoverably clean legacy artifacts. Reinitialization repairs tasks without resetting the inbox or duplicating schedules; scheduled executions run only their own lane.
See command index, scheduled lanes and workspace entry.
python scripts/compile_leaf_prompt.py --packet /absolute/packet.json --output /absolute/new-prompt.txt
python -m compileall -q scripts
python -m unittest discover -s tests -vValidate skill metadata with the host validator. Keep skill and target-repository changes in separate commits.
MIT © 2026 dajiaohuang