feat(server): migrate openwork.json from .opencode/ to .openwork/#1570
Open
arozanov wants to merge 2372 commits into
Open
feat(server): migrate openwork.json from .opencode/ to .openwork/#1570arozanov wants to merge 2372 commits into
arozanov wants to merge 2372 commits into
Conversation
This reverts commit ed20f1c.
* feat(den-api): migrate den controller to hono * fix(den-api): align worker listing with current build setup * fix(den-api): avoid duplicate org role seeding --------- Co-authored-by: src-opn <src-opn@users.noreply.github.com>
* docs(den): deprecate den-controller * docs(den): reference den-api as former controller --------- Co-authored-by: src-opn <src-opn@users.noreply.github.com>
Developer mode already emitted useful workspace/session/perf logs, but they mostly lived in the console and only a subset made it into exportable debug artifacts. That made it hard to collect a clean report from users when chasing racy workspace bugs. Add a shared dev-log buffer, feed it from the existing app/workspace/session and perf debug emitters, surface the log stream in Settings > Debug, and make it copyable/exportable alongside the existing runtime debug report.
* feat(i18n): extract dashboard/workspace/share strings to en.ts (PR1) - i18n/index.ts: add params interpolation support to t() - en.ts: add 200+ translation keys for dashboard, workspace, share, den, session areas - app.tsx: extract import bundle, skill, worker badge strings - bundles/store.ts: extract shared_setup, skill_added, worker/badge labels - bundles/skill-destination-modal.tsx: extract "Shared skill" badge - components/den-settings-panel.tsx: extract all Cloud settings panel strings - components/workspace-chip.tsx: extract sandbox/remote badge - components/workspace-right-sidebar.tsx: extract sidebar labels - workspace/create-workspace-modal.tsx: extract all create workspace modal strings - workspace/share-workspace-modal.tsx: extract share modal strings - session/share-workspace.ts: extract share fields/errors/labels - shell/settings-shell.tsx: extract tab titles, update pill labels, nav labels Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * feat(i18n): second pass — extract remaining hardcoded strings from app.tsx and create-workspace-modal.tsx - app.tsx: extract ~35 hardcoded error/UI strings to app.* keys (auth failed, rate limit, compact errors, deep link messages, model behavior copy, skills/plugins access hints, reload labels, etc.) - create-workspace-modal.tsx: extract 6 remaining strings (error_connect_worker, error_create_template, desktop_badge, import_config, importing); also support params in translate() - en.ts: add all new keys under app.* and dashboard.* Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> * fix(i18n): apply t() calls to refactored store files Replace 31 hardcoded English strings across 10 store/context files with t() calls using the orphaned app.* i18n keys. Covers: - actions-store.ts: auth, rate-limit, compact, session, command errors - deep-links.ts: deep link messages and auth/signin errors - openwork-server-store.ts: audit and remote access errors - context/session.ts: connection lost, auth errors, session name - context/providers/store.ts: not-connected, auth, rate-limit errors - context/global-sync.tsx: unknown error fallback - context/model-config.ts: model behavior title/desc, opencode.json, auto-compact scope errors - context/workspace.ts: connection failed messages - lib/model-behavior.ts: model behavior title - pages/session.tsx: compact empty error 4 keys have no matching strings in the codebase after the rebase (app.error.sidecar_unsupported_windows, app.error.command_name_template_required, app.error.workspace_commands_desktop, app.error.command_scope_unknown) and are left in en.ts per task instructions. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> --------- Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-authored-by: src-opn <src-opn@users.noreply.github.com>
…ult, revealed on hover
…#1285) * feat(den-db): add skill hub schema and own migrations * feat(den-api): add skill hub org routes * fix(den-db): restore drizzle migration workflow Move the Docker Den service onto den-api and repair den-db's Drizzle metadata so skill hub migrations generate incrementally from the package. * refactor(den-db): drop legacy org table aliases --------- Co-authored-by: src-opn <src-opn@users.noreply.github.com>
…d billing pricing to den, darker borders
* feat(ui): add shared seeded paper gradients Centralize the Paper mesh and grain wrappers so React and Solid apps can reuse the same deterministic seed-based visuals without repeating shader config. Add a standalone demo surface and update existing consumers so the shared package is easier to validate and evolve. * fix(ui): resolve shared package from source Point the shared UI package exports at source files so Next builds do not depend on a prebuilt dist directory. Add Next transpilation for @openwork/ui in Landing and Den Web so monorepo and Vercel builds resolve the package consistently. --------- Co-authored-by: src-opn <src-opn@users.noreply.github.com>
* feat(den): add teams and skill hub management * feat(den-web): add UnderlineTabs component and apply to members + skill hubs screens * feat(den-web): add DashboardPageTemplate and apply to all 6 dashboard pages * feat(den-web): add DenButton component and apply across all dashboard pages * feat(den-web): add DenInput component and apply across all dashboard inputs * feat(den-web): UI polish pass — shared component system and skill hub redesign - Add UnderlineTabs, DashboardPageTemplate, DenButton, DenInput, DenTextarea shared components - Apply DashboardPageTemplate with PaperMeshGradient headers to all 6 dashboard pages - Apply DenButton (primary/secondary/destructive + loading/disabled) across all dashboard pages - Apply DenInput and DenTextarea replacing all raw inputs and textareas - Redesign skill hub list cards: PaperMeshGradient seeded by hub ID, clean layout - Redesign skill list cards: PaperMeshGradient seeded by skill ID, matching hub card design - Rewrite skill hub detail page: lighter type scale, moved last-updated inline, clean sidebar - Rewrite skill detail page: gradient header, visibility pill inline with title, removed sidebar - Rewrite skill editor: remove category field (not persisted), clean form layout - Clean up all 4 member tables: tighter rows, items-center alignment, lighter type - Fix ActionButton icon stacking bug (Tailwind Preflight svg display:block via icon prop) - Move member tab toolbar buttons inline with description text per tab - Add destructive button variant; fix button disabled/loading states - Clean up manage-members, billing, templates, background-agents screen designs --------- Co-authored-by: src-opn <src-opn@users.noreply.github.com> Co-authored-by: OmarMcAdam <gh@mcadam.io>
…rent-ai#1300) Co-authored-by: src-opn <src-opn@users.noreply.github.com>
…nt-ai#1301) * feat(app): OpenWork Cloud team skills on Skills page - Den client: listOrgSkills, listOrgSkillHubs, fetchDenOrgSkillsCatalog (hub name enrichment) - Extensions: cloud catalog refresh/install via upsertSkill; stale on workspace + Den session - Skills UI: Team filter, org section, sign-in and org gates, refresh and install flow - i18n: English strings for cloud catalog - Storybook: Skills tab notes full app needs ExtensionsProvider Made-with: Cursor * feat(app): share skill to org with minimal Cloud + public chooser modal - Den client: listOrgSkillHubSummaries, createOrgSkill, addOrgSkillToHub - Orchestrate org resolve + POST skill + optional hub attach (skill-org-publish) - Skills share modal: WorkspaceOptionCard chooser, public link drill-in, team path with hub picker and sign-in CTA - i18n: EN, ja, zh, vi, pt-BR Made-with: Cursor * fix(app): softer share-skill notices and reusable SelectMenu - Add select-menu custom dropdown (listbox, outside click, Escape) - modalNotice* classes: light dls-border + body text (no heavy emerald/red outlines) - Replace native hub select in share-to-team flow Made-with: Cursor
Contributor
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Contributor
|
@arozanov is attempting to deploy a commit to the Different AI Team on Vercel. A member of the Team first needs to authorize it. |
Contributor
|
The following comment was made by an LLM, it may be inaccurate: |
7ce25e1 to
7f87446
Compare
7f87446 to
7e33094
Compare
7e33094 to
90f29ed
Compare
90f29ed to
a525e0d
Compare
Moves the canonical location of openwork.json from .opencode/openwork.json to .openwork/openwork.json across server, server-v2, orchestrator, Tauri desktop, and Electron desktop. Read paths prefer .openwork/, fall back to .opencode/, default to .openwork/. Write paths always target .openwork/openwork.json. Migration copies (not moves) the legacy file on first boot. Closes different-ai#1161 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
a525e0d to
a586c2d
Compare
Collaborator
|
not sure on this one yet |
71d8845 to
bb87ed2
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Resolves #1161
Moves
openwork.jsonout of.opencode/into its own.openwork/directory across all five packages: server, server-v2, orchestrator, Tauri desktop, Electron desktop.What changed
Read paths check
.openwork/openwork.jsonfirst, fall back to.opencode/openwork.json, default to.openwork/for new workspaces.Write paths always target
.openwork/openwork.json.Migration copies (not moves) the legacy file on first boot. Idempotent, never overwrites a different target, graceful on filesystem errors.
Watchers detect
openwork.jsonchanges in both directories. Server reload-watcher has a dedicated legacy watcher on.opencode/and a tree watcher on.openwork/. Tauri desktop watcher now watches.openwork/alongside.opencode/.Inbox/outbox moved from
.opencode/openwork/inboxto.openwork/inbox(server and server-v2).Export/import includes both
.opencode/and.openwork/in archives, validates at least one exists on import.Docs updated: AGENTS.md, ARCHITECTURE.md, server README, tauri-audit PRD.
New files
apps/server/src/config-migration.ts-- migration logicapps/server/src/workspace-files.ts-- path resolution with fallbackTest plan
bun testserver (15 pass)bun testserver-v2 (4 pass)cargo checkTauri desktop (compiles clean)tsc --noEmitserver (0 errors on source files)