Orchestration workspace for the helpers4 organization. One devcontainer to rule them all.
This repository is the central orchestrator for all helpers4 projects. It hosts:
- A unified VS Code multi-root workspace opening every sibling repo at once
- A single DevContainer configured for cross-repo development
- The canonical AGENTS.md shared by every helpers4 repo (Copilot / AI agents)
- Shared VS Code settings inherited by every folder in the workspace
It does not ship runtime code, packages, or actions. Each helpers4 project lives in its own repo.
This repo is meant to be cloned alongside the other helpers4 repos in a common parent directory:
helpers4/
βββ .dev/ β this repo (open helpers4.code-workspace)
βββ .github/ β org-wide GitHub config
βββ action/ β reusable GitHub Actions
βββ devcontainer/ β DevContainer Features (GHCR)
βββ typescript/ β TS helper library
βββ website/ β landing + docs portal
mkdir helpers4 && cd helpers4
gh repo clone helpers4/.dev
gh repo clone helpers4/.github
gh repo clone helpers4/action
gh repo clone helpers4/devcontainer
gh repo clone helpers4/typescript
gh repo clone helpers4/websitecode .dev/helpers4.code-workspaceVS Code displays all six folders side by side with consistent settings (commit message format, license headers, scopes, agents). The workspace references siblings via ../<name> β they live next to .dev/ on the host, no symlinks needed.
When prompted, Reopen in Container β or run Dev Containers: Reopen in Container from the command palette. The container:
- bind-mounts
.dev/at/workspaces/.dev - bind-mounts each sibling repo at
/workspaces/<name>so the same../<name>path used by the workspace resolves correctly inside the container - runs
setup-container.shon first start to:- clone any sibling repo missing on the host (Codespaces fallback)
- run
pnpm installin every sibling that has apackage.json
From .dev/, run any of:
pnpm run install:all # pnpm install in every sibling
pnpm run build:all # pnpm run build in every sibling that defines it
pnpm run test:all
pnpm run lint:all
pnpm run status:all # git status -sb in every repo
pnpm run fetch:all # git fetch --all --prune
pnpm run pull:all # git pull --rebase --autostash
pnpm run branch:all # show current branchPowered by scripts/run-each.mjs and scripts/git-each.mjs.
| File | Purpose |
|---|---|
helpers4.code-workspace |
VS Code multi-root workspace + shared settings |
.devcontainer/devcontainer.json |
Cross-repo dev environment (Node, pnpm, gh, helpers4 features) |
.devcontainer/setup-container.sh |
postCreateCommand β clone-fallback + pnpm install |
scripts/run-each.mjs |
Run a pnpm script in every sibling repo |
scripts/git-each.mjs |
Run a git command in every sibling repo |
package.json |
Cross-repo orchestration scripts (*:all) |
AGENTS.md |
Canonical org-wide agent instructions |
.vscode/settings.json |
Settings applied when opening .dev/ standalone |
LICENSE |
LGPL-3.0-or-later |
- AGENTS.md β
.dev/AGENTS.mdholds the canonical org-wide governance (restrictions, commit format, emoji table, repo links). Each project repo keeps its ownAGENTS.mdfor project-specific scopes/structure but defers to this one for shared rules. - VS Code settings β Common settings (psi-header, commit message generator, EditorConfig hints) live at the workspace level in
helpers4.code-workspace. Per-repo.vscode/settings.jsononly override repo-specific values likeconventionalCommits.scopes. - DevContainer β A single DevContainer for the whole org, replacing the need for one per repo.
- Organization: https://github.com/helpers4
- TypeScript: https://github.com/helpers4/typescript
- DevContainer: https://github.com/helpers4/devcontainer
- Actions: https://github.com/helpers4/action
- Website: https://github.com/helpers4/website
- Org config: https://github.com/helpers4/.github