Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

Native GitHub Copilot inline completions

Offen
#2,181 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Anfängerfreundlichkeit
25/100
Issue-Typ
Feature
Klarheit
Größtenteils klar
Aktivitätsstatus
Ruhig
Tech-Stack
github, node.js, swift
Bereich
ai, desktop, devtools

Rechercherichtung

Beginne mit dem Lesen von CodeFileDocument und CodeFileView und verfolge dann die Einstiegspunkte von CopilotClient, CopilotService, CopilotProtocol, CopilotInlineCompletionProvider und CopilotBinaryResolver. Überprüfe die Abhängigkeitsversionen von CodeEditTextView und CodeEditSourceEditor und führe die App mit den dokumentierten lokalen Branches aus. Als abgeschlossen gilt die Arbeit, wenn die Paket-Pins die Integration unterstützen, CI erfolgreich baut und der Settings-Anmeldefluss sowie Geistertext, der per Tab akzeptiert wird, durchgängig funktionieren.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

Description

Add native GitHub Copilot inline completions to CodeEdit: as you type, the editor shows AI ghost text suggestions and accepts them with Tab. This is the app-level integration that ties together the inline suggestion rendering (CodeEditTextView) and the inline completion coordination layer (CodeEditSourceEditor).

What it adds:

  • A Copilot language-server client and service (CopilotClient, CopilotService, CopilotProtocol) that launches and talks to the official copilot-language-server over LSP, including device-flow sign-in, status, and document sync.
  • A per-document CopilotInlineCompletionProvider that conforms to the editor's InlineCompletionDelegate, maps the caret to an LSP position, requests completions, strips already-typed prefixes, and adapts results into the editor's ghost-text model.
  • A CopilotBinaryResolver that locates copilot-language-server (explicit path, PATH, or common install dirs) and builds a launch environment that can find node (including nvm-managed installs), since the server is a Node script.
  • A Settings page (enable toggle, device-flow sign-in UI, optional language-server path) and a status bar item reflecting Copilot state.
  • Wiring in CodeFileDocument / CodeFileView to attach the provider per open document.

Design notes:

  • Suggestions render as ghost text via the CodeEditTextView overlay primitive and never mutate the document until accepted.
  • Disabled by default; opt-in via Settings. Requires a GitHub Copilot subscription.
Alternatives Considered
  • A plugin/extension instead of a built-in. CodeEdit does not yet have an extension API surface for inline completions, and the integration needs the editor's cursor/lifecycle hooks, so a built-in (opt-in, behind settings) is the practical option today.
  • Driving the suggestion lifecycle in the app rather than the editor. Rejected; the request/accept/dismiss lifecycle lives in CodeEditSourceEditor (see the dependency below), and the app only supplies a concrete provider.
Additional Context

This is the top layer of a three-repo change for native inline completions:

  1. CodeEditTextView: inline suggestion (ghost text) rendering primitive (CodeEditApp/CodeEditTextView#124, PR CodeEditApp/CodeEditTextView#125).
  2. CodeEditSourceEditor: inline completion coordination layer (CodeEditApp/CodeEditSourceEditor#374, PR CodeEditApp/CodeEditSourceEditor#375).
  3. CodeEdit (this issue): the GitHub Copilot provider and UI.

I have a working, documented implementation. Locally it builds and runs against the two dependency branches via a workspace that references local checkouts, and I have verified end to end against the real copilot-language-server (device-flow sign-in and inline ghost text that accepts with Tab). The package pins for CodeEditTextView / CodeEditSourceEditor need bumping to the releases that include layers 1 and 2 before this can build in CI. Would the maintainers welcome native Copilot support in CodeEdit?

Screenshots

I will attach a screen recording of the device-flow sign-in and inline ghost text on the PR.

Vorherrschende Sprache
Swift
Sterne
23k
Forks
1.2k
PR-Merge-Kennzahlen
Keine gemergten PRs in 30 T.

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus CodeEditApp/CodeEdit

Alle Issues in CodeEditApp/CodeEdit

Ähnliche Issues

Weitere Issues zu Swift

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.