github / github/app

Export/import automations as version-controlled JSON (config-as-code for Automations)

Aperta
#2,684 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Nessun dato sulla lingua
Stelle
2.1k
Fork
153
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

### Summary
Requesting a way to export the Automations list to a plain JSON file (and import from one), so automations can be version-controlled, backed up, and shared/restored across machines - similar to how other app config (MCP servers, permissions, settings) is already stored as flat JSON under `~/.copilot/`.

### Motivation
Automations currently live only inside the app's internal SQLite store (`data.db`), with no export path. This makes it hard to:
- Back up or restore automations independent of full app state
- Version-control automation definitions alongside a repo/dotfiles setup
- Migrate automations to a new machine

Issue #1643 shows what happens without this: a user hit a `data.db` schema-version mismatch during a downgrade and had no way to recover automations short of deleting the whole database and losing session history with it.

### Proposed solution
- "Export automations to JSON" / "Import automations from JSON" actions in the Automations UI, or
- A flat, human-editable automations file (mirroring how `mcp-config.json`/`settings.json`/`permissions-config.json` already work) that the app reads on startup, so power users can hand-edit and symlink it into version control

### Additional context
Related to the scheduling limitations raised in #2130 - a config-as-code path would also make it easier to share/reuse automation definitions across teams or repos.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start by comparing the existing flat JSON configuration files under ~/.copilot/—including mcp-config.json, settings.json, and permissions-config.json—with automation storage in data.db. Define whether export/import actions in the Automations UI or a startup-loaded file is the intended path, then verify that automation definitions can be backed up, restored, edited, and moved between machines without affecting session history.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
sqlite
Ambito
databases, desktop
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.