Export/import automations as version-controlled JSON (config-as-code for Automations)
- Langage dominant
- Aucune donnée de langage
- Étoiles
- 2.1k
- Forks
- 153
- Métriques de merge des PR
- Aucune PR mergée en 30 j
Description
### 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.
Guide de contribution
Ouvrir le guide de contribution
Piste de recherche
Commencez par comparer les fichiers de configuration JSON plats existants sous ~/.copilot/—notamment mcp-config.json, settings.json et permissions-config.json—avec le stockage des automatisations dans data.db. Déterminez si les actions d’exportation/importation dans l’Automations UI ou un fichier chargé au démarrage constituent la voie prévue, puis vérifiez que les définitions d’automatisation peuvent être sauvegardées, restaurées, modifiées et déplacées entre des machines sans affecter l’historique des sessions.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- sqlite
- Domaine
- databases, desktop
- Type d'issue
- Fonctionnalité
- Difficulté
- 5/5
- Temps estimé
- Plus d'une semaine
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 42/100