Linear custom views — audit log and cleanup
Purpose: Record workspace custom-view inventory, dedupe guidance, and how to re-list or refresh views.
Last audited: 2026-04-06
How to list views (API)
From apps/platform (listing is paginated — full workspace):
npx tsx scripts/list-and-delete-linear-views.tsDuplicate names (e.g. after multiple bulk runs): keep newest per name and delete extras:
npx tsx scripts/dedupe-linear-custom-views.ts --dry-run
npx tsx scripts/dedupe-linear-custom-views.tsRe-running create-linear-views-bulk.ts is idempotent (updates by name, removes duplicate names for views in that script’s list).
Requires LINEAR_API_KEY or BRAINFORGE_PLATFORM_LINEAR_APP_TOKEN (see linear-api-setup.md).
Blank slate (destructive): same script with --delete removes all custom views — use only when intentionally rebuilding; then recreate recommended views via create-linear-views-bulk.ts and manual project/initiative views per linear-views.md.
Snapshot — 2026-04-06 (reset)
All views returned by list-and-delete-linear-views.ts were deleted (blank slate), then create-linear-views-bulk.ts was re-run (persona-prefixed issue views; see linear-views.md). Project views removed by that API must be recreated manually in Linear if still needed.
Earlier inventory (before delete)
Listed 8 workspace custom views (mix of projects / initiatives / issues):
| Name | Notes |
|---|---|
| Q2 OKR Projects | Project-oriented |
| Active Projects | Project-oriented |
| Non-Triage Issues | Issue filter |
| New Issues | Issue filter |
| Ops Initiatives | Initiative-oriented |
| LMNT Omni Plan | Client initiative |
| Migration | Legacy |
| All projects | Project-oriented |
No duplicate names detected in this snapshot. Project / initiative views overlap conceptually with rows in linear-views.md (e.g. Active projects) — reconcile naming in Linear UI when consolidating sidebar clutter.
After bulk script — issue views
The bulk script creates ~51 shared issue views by default (persona prefixes [HoD] / [CSO] / [SL] / [IC]; per-client and per-internal-team kits from linear-views-teams.config.json). Phase views are not in the script — add manually per linear-views.md D1 if needed. Confirm in Linear UI (Views → Issues); the workspace customViews GraphQL list in list-and-delete-linear-views.ts may not enumerate every view type or scope—use UI as source of truth for dedupe.
Dedupe and retirement (human steps)
- In Linear → Views, sort by name; merge or delete views that differ only by stale filters.
- Prefer Spaces or name prefixes (
[CSO],[HoD],[SL]) per linear-day-1-guide.md. - Retire views tied to ended programs (e.g. one-off migrations) after archiving underlying work.
Related
- linear-day-1-guide.md — Day 1 onboarding and persona view kits
- linear-views.md — Full recommended view catalog
- sl-cross-client-views.md — Service Lead cross-client roster views