Skip to content

[codex] Add Builder skill registry canvas run wedge#4550

Draft
1GMedia wants to merge 8 commits into
nexu-io:mainfrom
1GMedia:builder-v1-skill-registry-automation
Draft

[codex] Add Builder skill registry canvas run wedge#4550
1GMedia wants to merge 8 commits into
nexu-io:mainfrom
1GMedia:builder-v1-skill-registry-automation

Conversation

@1GMedia

@1GMedia 1GMedia commented Jun 19, 2026

Copy link
Copy Markdown

Why

This PR packages the first Builder v1 wedge: imported marketing/playbook skills can be registered, attached to Open Design routines, started from the canvas, projected into a Builder Run Ledger, and controlled through approval placeholders.

The pain being addressed is that the Ploy-style skill library and canvas planning work was previously only product documentation and scratch context. This makes it a reviewable Open Design implementation slice without introducing the later SaaS, Mastra, Astro, Daytona, Orgo, billing, publishing, or outreach scopes.

What users will see

Projects now have a Canvas Run panel showing compact Skill, Process, and Run cards for skill-backed automation. Users can click Run Skill to start a registered skill-backed routine, watch the Run Card/timeline refresh from the Builder Run Ledger, and approve or reject requested placeholder approvals when present.

The CLI also gains embeddable surfaces for the same wedge: od skills ... for Skill Registry inspection/validation and od run-ledger ... for Builder process/run/event/approval inspection plus od run-ledger run-skill.

Surface area

  • UI — new page / dialog / panel / menu item / setting / empty state in apps/web or apps/desktop (including Electron menu bar)
  • Keyboard shortcut — new or changed
  • CLI / env var — new od subcommand or flag, new tools-dev / tools-pack / tools-pr flag, or new OD_* env var
  • API / contract — new /api/* endpoint, new SSE event, or changed shape in packages/contracts
  • Extension point — new entry under skills/, design-systems/, design-templates/, or craft/, or change to the skills protocol
  • i18n keys — added new translation keys (see TRANSLATIONS.md for the locale workflow)
  • New top-level dependency — adding any new entry to the root package.json (dependencies or devDependencies); workspace-package package.json files are out of scope. Include a paragraph on what we get vs. what bytes we ship (see CONTRIBUTING.md → Code style)
  • Default behavior change — changes what existing users experience without opting in (default model, default setting, file/SQLite schema, auto-network on startup, auto-install)
  • None — internal refactor, docs, tests, or translation update only

Screenshots

Focused browser smoke screenshots were captured locally and should be attached before moving this out of draft:

  • /Users/gavinbasuel/conductor/agent-bus/Builder_v1/artifacts/1-hardening-project-loaded.png
  • /Users/gavinbasuel/conductor/agent-bus/Builder_v1/artifacts/1-hardening-canvas-before-run.png
  • /Users/gavinbasuel/conductor/agent-bus/Builder_v1/artifacts/1-hardening-canvas-after-run.png

Bug fix verification

Validation

  • fnm exec --using 24 pnpm --filter @open-design/contracts typecheck
  • fnm exec --using 24 pnpm --filter @open-design/contracts test — 23 files / 164 tests
  • fnm exec --using 24 pnpm --filter @open-design/daemon typecheck
  • fnm exec --using 24 pnpm --filter @open-design/web typecheck
  • fnm exec --using 24 pnpm exec vitest run -c vitest.config.ts tests/skills.test.ts tests/routine-routes.test.ts tests/builder-run-ledger-routes.test.ts — 3 files / 45 tests
  • fnm exec --using 24 pnpm guard
  • git diff --check c87934d..HEAD
  • git diff --check
  • Focused browser smoke on local web 3068 / daemon 7468 with mock-backed codex: Canvas Run opened; Skill/Process/Run cards rendered; Run Skill started routine-run-e69bd306-1a27-4e4f-8001-9fa5d2442606; Run Ledger projected completed process/run plus 4 normalized events.

Notes

This deliberately keeps Astro, Daytona, Orgo, SaaS auth, billing, publishing, outreach sends, paid compute, and Mastra execution out of scope. A non-blocking /api/community/discord 502 was observed during browser smoke; it is unrelated to the Builder wedge routes.

@lefarcen

Copy link
Copy Markdown
Contributor

Hey @1GMedia — thanks for opening this draft PR. The Builder wedge is clearly scoped here, and the Why / surface-area breakdown makes the intended slice easy to follow.

Since this is still in draft, I'll stay out of the review lane for now. Before you flip it to ready, please attach the Canvas screenshots referenced in the PR body so product/design can review the user-facing flow without recreating it locally.

💡 To drive this PR to merge hands-free, paste this to your AI coding agent (Claude Code / Codex / opencode / Cursor …):
Take over nexu-io/open-design#4550 until it merges — read https://raw.githubusercontent.com/nexu-io/looper/main/skills/pr-takeover/SKILL.md and follow it.

@lefarcen lefarcen added the size/XXL PR changes 1500+ lines label Jun 19, 2026
@lefarcen lefarcen requested a review from nettee June 19, 2026 05:41
@lefarcen lefarcen added risk/high High risk: apps/desktop, daemon, auth, migration, workflows, package deps type/feature New feature labels Jun 19, 2026
@lefarcen lefarcen requested a review from chaoxiaoche June 19, 2026 05:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

risk/high High risk: apps/desktop, daemon, auth, migration, workflows, package deps size/XXL PR changes 1500+ lines type/feature New feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants