github / github/copilot-cli

Make `--name` create or resume a session

Ouverte
#4,642 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

triage
Langage dominant
Shell
Étoiles
11.2k
Forks
1.9k
Merge moyen
14 h 16 min
PR mergées (30 j)
6

Description

Describe the feature or problem you'd like to solve

copilot --name <name> creates a new named session, but it does not resume an existing session with that name. After the first launch, users and automation must know whether the session exists before selecting --name <name> or --resume <name>.

The same distinction breaks CLI relaunches. A session started with copilot --name project-a can fail during /update when the replacement process receives both the original --name and an internal --session-id:

error: option '-n, --name <name>' cannot be used with option '--session-id <id>' when it resolves to an existing or remote session or task.
--name only names a brand-new session created by --session-id=<new-uuid>; the resolved session was not renamed.
Proposed solution

Give copilot --name <name> create-or-resume behavior. --name should use the same name lookup and matching rules as --resume <name>:

  1. If no session matches, create a session with that name.
  2. If exactly one session matches, resume that session.
  3. If multiple sessions match, follow the current --resume <name> ambiguity behavior. Do not create another session.
  4. Resume the selected session when /restart, /update, or another command relaunches the CLI. A retained --name should not fail because the session now exists or because the relaunch also carries an internal session ID.

--resume should remain available for three uses: session IDs, the session picker, and existing workflows. Users and automation could then use one repeatable command whenever a stable name identifies the session.

Example prompts or workflows
  1. The first copilot --name project-a invocation creates a named session.
  2. A later copilot --name project-a invocation resumes that session.
  3. /update or /restart resumes that session without a flag conflict.
  4. An alias or script can keep invoking copilot --name project-a without first querying session state.
Additional context

Issue https://github.com/github/copilot-cli/issues/3332 reports /restart failing in a session created with --name. The requested semantics address that failure and the broader need for one repeatable name-based command.

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Commencez par suivre la gestion de la CLI pour --name et --resume, puis examinez les chemins de relance utilisés par /restart et /update. Comparez le comportement avec issue #3332 et vérifiez les quatre cas proposés : créer lorsqu’il n’y a aucune correspondance, reprendre lorsqu’il n’y en a qu’une, conserver la gestion actuelle de l’ambiguïté et éviter les conflits lors de la relance.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
shell
Domaine
cli
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Active
Clarté
Plutôt claire
Accessibilité débutants
52/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.