2 min read 441 words Updated Mar 24, 2026 Created Mar 24, 2026

Workspace

Dwight can manage multiple repositories as a single workspace. Features span repo boundaries, agents have cross-repo context, and issues are tracked across the entire workspace from one view.


How It Works

  1. Add repos:DwightWorkspaceAdd ../shared-lib registers repositories.
  2. View status:DwightWorkspace shows all repos with branch, feature count, and init status.
  3. Browse features:DwightWorkspaceFeatures lists features across all repos.
  4. Track issues:DwightWorkspaceIssues shows GitHub issues from all repos in one picker.

Workspace overview


Setting Up

Add Repos Manually

:DwightWorkspaceAdd ../shared-lib
:DwightWorkspaceAdd ../api-server
:DwightWorkspaceAdd ../frontend

Each repo is added by path. Configuration is stored in .dwight/workspace.json in your primary project.

Scan from Monorepo

:DwightWorkspaceInit

Scans sub-directories for git repos or package manifests and adds them automatically.

Remove Repos

:DwightWorkspaceRemove

Opens a picker to select which repo to remove.


Cross-Repo Features

Features defined with @feature: pragmas work across repo boundaries. If shared-lib and api-server both have files tagged @feature:auth, Dwight treats them as one feature.

:DwightWorkspaceFeatures

Shows all features with file counts per repo. When an agent works on a cross-repo feature, it sees files from all contributing repos.


Unified Issue Tracking

:DwightWorkspaceIssues                       " All open issues
:DwightWorkspaceIssues --label bug           " Filter by label
:DwightWorkspaceIssues --assignee @me        " Filter by assignee
:DwightWorkspaceIssues --milestone v2.0      " Filter by milestone

Issues are fetched from all repos in parallel and displayed in a Telescope picker with repo name, issue number, title, and labels. Selecting an issue opens it with :DwightIssue.

Requires GitHub CLI (gh) authenticated for each repo.


Tips

  • Initialize each repo with Dwight. Run :DwightInit in each repo before adding to the workspace. Cross-repo features require pragmas in all repos.
  • Use workspace for microservices. If your services share domain concepts, workspace features give agents the full picture across service boundaries.
  • Filter issues by milestone. --milestone is the fastest way to focus on what matters for the current sprint across all repos.

Commands

CommandArgsDescription
:DwightWorkspaceShow workspace status
:DwightWorkspaceAdd[path]Add a repo by path
:DwightWorkspaceRemove[name]Remove a repo
:DwightWorkspaceInitAuto-scan monorepo sub-directories
:DwightWorkspaceFeaturesList features across all repos
:DwightWorkspaceIssues[--label|--assignee|--milestone]Unified issue view

See Also