feat: wizard-first onboarding, JSON config, and dashboard redesign#23
Merged
Conversation
Introduce config-store.ts (atomic read/write of ~/.parallax/config.json) and config-validation.ts (structural validators reused by loadConfig and API write endpoints). Rewrite loadConfig() to read from the JSON store, inject secrets into process.env, and remove all YAML parsing. Add CRUD API endpoints for projects, agents, slack, and secrets; wire saveConfig into ApiServerDependencies. Remove parallax.example.yml. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…r/pending Replace the YAML-based register/unregister/pending commands with: - parallax init: interactive @clack/prompts wizard that writes config.json - parallax open: reads running.json and opens the dashboard in the browser - parallax status: reads running.json + DB directly, no orchestrator required Remove parallax register, parallax unregister, and parallax pending. Update usage.ts, args.ts, and types.ts accordingly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…rets Replace the two-tab sidebar (Tasks / Config) with a three-column layout: icon nav (52px) | list panel (280px) | main content. Add four nav sections: Tasks, Projects, Integrations, Secrets. New components: NavBar, ListPanel, ProjectEditor, AddProjectWizard, IntegrationDetail, SecretsEditor, AddSecretModal. Delete SettingsViewer and TaskSidebar (replaced by ListPanel + NavBar). Extend useParallax with CRUD mutations for projects, slack, and secrets. Add routes for /projects, /integrations, and /secrets. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…hboard flow Replace the YAML/parallax register story with the wizard + dashboard story. HeroSection: codeblock shows npm i → parallax init → parallax start; Register tile renamed to Configure with Sparkles icon. ConfigSection: new heading "From wizard to dashboard.", TerminalBlock shows realistic parallax init transcript, two callout cards (Guided setup / Dashboard-managed). Delete stale FlowSection (fictional commands) and InlineCopyCode (no consumers). Update tests to assert the new copy and the absence of YAML references. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…d model Update CLAUDE.md, README.md, docs/getting-started.md, docs/cli-reference.md, docs/configuration.md, and docs/README.md to reflect the new config flow (~/.parallax/config.json, parallax init, parallax status, parallax open). Remove references to parallax.yml, parallax register, and parallax pending. Delete stale .codex skills that referenced the old file-based config model. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
|
The latest updates on your projects. Learn more about Vercel for GitHub. |
|
There are some issues running the custom ports: And when using default: |
…om source - start.ts: drop the `--` separator from pnpm filter args; pnpm 10 keeps it literal in the script command line, and vite's CLI parser (cac) treats `--` as end-of-options, silently falling back to default port 8080 - vite.config.ts: alias @parallax/common to ../common/src/index.ts so dev startup works on fresh clones without requiring `pnpm build` for common first (its package.json exports point only to ./dist) Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…orts to 9371/9372 - Remove AgentDefinition, agent.name, agent.systemPrompt, agentLabels from all types, validation, config store, orchestrator logic, AI adapters, Slack notifications, and UI - Remove Secrets nav section from dashboard (covered by Integrations tab) - Fix CORS to explicitly allow PUT/DELETE/POST/PATCH methods (dashboard mutations were blocked) - Change default ports from 3000/8080 to 9371/9372 across CLI, UI, tests, and all docs - Wire Slack bot onError callback so Bolt internal errors surface in parallax logs - Update all docs, READMEs, and CLAUDE.md to reflect these changes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…factor Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.
Summary
~/.parallax/config.json; addconfig-store.ts(atomic reads/writes) andconfig-validation.ts; rewriteloadConfig(); add CRUD REST endpoints for projects, agents, Slack, and secretsregister/unregister/pending; addparallax init(interactive @clack/prompts wizard),parallax open(browser launcher), andparallax status(reads running.json + DB without requiring the orchestrator).codexskillsCommits
feat(orchestrator)feat(cli)feat(ui)feat(marketing)docsTest plan
pnpm build— clean across all 6 packagespnpm test— 178 tests pass (cli + common + marketing + orchestrator + slack + ui)pnpm parallax init— wizard runs, writes~/.parallax/config.jsonpnpm parallax start— orchestrator starts, reads configpnpm parallax status— shows projects + task countspnpm parallax open— opens dashboard in browser🤖 Generated with Claude Code