Skip to content

Zestawy robocze (beta) ​

Otwórz magazyn i repozytoria, które go używają, w jednym oknie edytora, aby Twój agent widział oba.

W przypadku magazynu kontekst potrzebny agentowi jest rozłożony na foldery. Specyfikacje i zmiany znajdują się w magazynie, a kod w każdym z repozytoriów. Agent uruchomiony w jednym repozytorium może czytać i przeszukiwać za pomocą grep tylko to repozytorium, więc pracuje z niepełnym obrazem.

Zestawy robocze to narzędzie, które OpenSpec udostępnia w tym celu. Zestaw roboczy to zapisana, nazwana lista folderów, które otwierasz razem. Ta strona zakłada, że magazyn został już skonfigurowany i zarejestrowany na Twoim komputerze. Magazyny (beta) omawiają to zagadnienie.

Jak to działa ​

  • Co to jest: nazwana lista folderów zapisana tylko na Twoim komputerze. Nic nie jest zapisywane w folderach składowych i nic nie jest zatwierdzane.
  • Co robi otwarcie: OpenSpec generuje plik .code-workspace na podstawie listy i uruchamia na nim Twój edytor. Każdy folder składowy znajduje się w jednym oknie.
  • Co zyskujesz: wyszukiwanie w edytorze oraz każdy agent uruchomiony w tym oknie mogą odczytywać każdy folder składowy. Agent może w jednej sesji przeszukiwać za pomocą grep specyfikacje magazynu i kod repozytorium.
  • Czego to nie zmienia: tego, którego folderu openspec/ używa polecenie. Nadal obowiązuje Gdzie są tworzone artefakty.

Konfiguracja ​

  1. Zapisz zestaw roboczy (raz na komputer). Wymień repozytorium i magazyn jako elementy składowe oraz narzędzie do ich otwierania:

    bash
    # zapisz nazwaną listę folderów otwieranych razem
    openspec workset create platform \
      --member ~/src/web-app \
      --member ~/openspec/team-plans \
      --tool code
    yaml
    Saved workset 'platform' (2 members) to your machine.
    Open it any time with: openspec workset open platform
  2. Otwórz go za każdym razem, gdy rozpoczynasz pracę:

    bash
    # otwórz każdy element składowy w jednym oknie VS Code
    openspec workset open platform

openspec workset list pokazuje zapisane zestawy, a openspec workset remove <name> usuwa zestaw roboczy bez modyfikowania folderów składowych:

yaml
platform  (opens in VS Code)
  web-app     /Users/you/src/web-app
  team-plans  /Users/you/openspec/team-plans

Jak używać: jedna zmiana, dwa foldery ​

Załóżmy, że zmiana add-login znajduje się w magazynie team-plans, a jej kod w web-app. Otwórz zestaw roboczy platform i poproś agenta o zaimplementowanie zmiany. W ramach tej jednej sesji może on:

  • odczytać team-plans/openspec/changes/add-login/ oraz towarzyszące mu specyfikacje
  • edytować kod w web-app/
  • uruchamiać polecenia openspec z wnętrza web-app

Bez zestawu roboczego agent widzi tylko ten folder, w którym został uruchomiony.

Narzędzia dostępne od razu ​

  • VS Code (--tool code) i Cursor (--tool cursor): wbudowane. Każde otwiera jedno okno ze wszystkimi folderami składowymi.
  • Claude Code i Codex w terminalu: tymczasowo wyłączone jako mechanizmy otwierania zestawów roboczych, dopóki ten przepływ nie zostanie przebudowany. --tool claude lub --tool codex kończy się błędem, który o tym informuje i wskazuje VS Code lub Cursor.
  • Inne edytory: dodaj je w kluczu openers w ustawieniach CLI (config.json).