[{"data":1,"prerenderedAt":373},["ShallowReactive",2],{"navigation_en":3,"-docs-getting-started-introduction":153,"-docs-getting-started-introduction-surround":370},{"gettingStarted":4,"guides":41,"cli":87,"configuration":123},[5],{"title":6,"icon":7,"path":8,"stem":9,"children":10,"page":7},"Getting Started",false,"\u002Fdocs\u002Fgetting-started","docs\u002Fgetting-started",[11,16,21,26,31,36],{"title":12,"path":13,"stem":14,"icon":15},"Introduction","\u002Fdocs\u002Fgetting-started\u002Fintroduction","docs\u002Fgetting-started\u002F01.introduction","i-lucide-house",{"title":17,"path":18,"stem":19,"icon":20},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","docs\u002Fgetting-started\u002F02.installation","i-lucide-download",{"title":22,"path":23,"stem":24,"icon":25},"Quick Start","\u002Fdocs\u002Fgetting-started\u002Fquick-start","docs\u002Fgetting-started\u002F03.quick-start","i-lucide-zap",{"title":27,"path":28,"stem":29,"icon":30},"How It Works","\u002Fdocs\u002Fgetting-started\u002Fhow-it-works","docs\u002Fgetting-started\u002F04.how-it-works","i-lucide-workflow",{"title":32,"path":33,"stem":34,"icon":35},"Refs","\u002Fdocs\u002Fgetting-started\u002Frefs","docs\u002Fgetting-started\u002F05.refs","i-lucide-git-branch",{"title":37,"path":38,"stem":39,"icon":40},"Workspaces & Worktrees","\u002Fdocs\u002Fgetting-started\u002Fworkspaces","docs\u002Fgetting-started\u002F06.workspaces","i-lucide-folder-tree",[42],{"title":43,"icon":7,"path":44,"stem":45,"children":46,"page":7},"Guides","\u002Fdocs\u002Fguides","docs\u002Fguides",[47,52,57,62,67,72,77,82],{"title":48,"path":49,"stem":50,"icon":51},"Review a Pull Request","\u002Fdocs\u002Fguides\u002Freview-a-pull-request","docs\u002Fguides\u002F01.review-a-pull-request","i-lucide-git-pull-request",{"title":53,"path":54,"stem":55,"icon":56},"Run Dev Servers in Parallel","\u002Fdocs\u002Fguides\u002Frun-dev-servers-in-parallel","docs\u002Fguides\u002F02.run-dev-servers-in-parallel","i-lucide-plug",{"title":58,"path":59,"stem":60,"icon":61},"Seed Local Files","\u002Fdocs\u002Fguides\u002Fseed-local-files","docs\u002Fguides\u002F03.seed-local-files","i-lucide-sprout",{"title":63,"path":64,"stem":65,"icon":66},"Refresh a Workspace","\u002Fdocs\u002Fguides\u002Frefresh-a-workspace","docs\u002Fguides\u002F04.refresh-a-workspace","i-lucide-refresh-cw",{"title":68,"path":69,"stem":70,"icon":71},"Clean Up Workspaces","\u002Fdocs\u002Fguides\u002Fclean-up-workspaces","docs\u002Fguides\u002F05.clean-up-workspaces","i-lucide-trash-2",{"title":73,"path":74,"stem":75,"icon":76},"Script with uxd","\u002Fdocs\u002Fguides\u002Fscript-with-uxd","docs\u002Fguides\u002F06.script-with-uxd","i-lucide-braces",{"title":78,"path":79,"stem":80,"icon":81},"Install Shell Completions","\u002Fdocs\u002Fguides\u002Fshell-completions","docs\u002Fguides\u002F07.shell-completions","i-lucide-keyboard",{"title":83,"path":84,"stem":85,"icon":86},"Troubleshooting","\u002Fdocs\u002Fguides\u002Ftroubleshooting","docs\u002Fguides\u002F08.troubleshooting","i-lucide-stethoscope",[88],{"title":89,"icon":7,"path":90,"stem":91,"children":92,"page":7},"CLI Reference","\u002Fdocs\u002Fcli","docs\u002Fcli",[93,98,103,108,113,118],{"title":94,"path":95,"stem":96,"icon":97},"Command Grammar","\u002Fdocs\u002Fcli\u002Foverview","docs\u002Fcli\u002F01.overview","i-lucide-terminal",{"title":99,"path":100,"stem":101,"icon":102},"Workspace Verbs","\u002Fdocs\u002Fcli\u002Fworkspace-verbs","docs\u002Fcli\u002F02.workspace-verbs","i-lucide-folder-git-2",{"title":104,"path":105,"stem":106,"icon":107},"Project Verbs","\u002Fdocs\u002Fcli\u002Fproject-verbs","docs\u002Fcli\u002F03.project-verbs","i-lucide-boxes",{"title":109,"path":110,"stem":111,"icon":112},"Top-Level Verbs","\u002Fdocs\u002Fcli\u002Ftop-level-verbs","docs\u002Fcli\u002F04.top-level-verbs","i-lucide-wrench",{"title":114,"path":115,"stem":116,"icon":117},"Global Flags","\u002Fdocs\u002Fcli\u002Fglobal-flags","docs\u002Fcli\u002F05.global-flags","i-lucide-flag",{"title":119,"path":120,"stem":121,"icon":122},"Exit Codes","\u002Fdocs\u002Fcli\u002Fexit-codes","docs\u002Fcli\u002F06.exit-codes","i-lucide-circle-alert",[124],{"title":125,"icon":7,"path":126,"stem":127,"children":128,"page":7},"Configuration","\u002Fdocs\u002Fconfiguration","docs\u002Fconfiguration",[129,134,139,144,148],{"title":130,"path":131,"stem":132,"icon":133},"Overview","\u002Fdocs\u002Fconfiguration\u002Foverview","docs\u002Fconfiguration\u002F01.overview","i-lucide-settings",{"title":135,"path":136,"stem":137,"icon":138},"Project File","\u002Fdocs\u002Fconfiguration\u002Fproject-file","docs\u002Fconfiguration\u002F02.project-file","i-lucide-file-code",{"title":140,"path":141,"stem":142,"icon":143},"Commands & Hooks","\u002Fdocs\u002Fconfiguration\u002Fcommands-and-hooks","docs\u002Fconfiguration\u002F03.commands-and-hooks","i-lucide-play",{"title":145,"path":146,"stem":147,"icon":76},"Environment & Templates","\u002Fdocs\u002Fconfiguration\u002Fenvironment-and-templates","docs\u002Fconfiguration\u002F04.environment-and-templates",{"title":149,"path":150,"stem":151,"icon":152},"Editors","\u002Fdocs\u002Fconfiguration\u002Feditors","docs\u002Fconfiguration\u002F05.editors","i-lucide-app-window",{"id":154,"title":12,"body":155,"description":362,"extension":363,"links":364,"meta":365,"navigation":366,"path":13,"seo":367,"stem":14,"__hash__":369},"docs_gettingStarted\u002Fdocs\u002Fgetting-started\u002F01.introduction.md",{"type":156,"value":157,"toc":357},"minimark",[158,166,173,239,244,247,255,269,275,279,311,315,353],[159,160,161,165],"p",{},[162,163,164],"strong",{},"uxd"," — unpack, execute, debug — materializes any git ref of a configured\nproject into an isolated, runnable local workspace with one command.",[159,167,168,169,172],{},"AI coding agents produce branches and pull requests faster than anyone can read\nthem. Reading a diff tells you what changed; it does not tell you whether the\napp still works. ",[170,171,164],"code",{}," closes that gap: it turns a ref — a PR number, a branch,\na commit, a URL, or a local path — into a ready-to-run git worktree, so you can\nstart the app, click through the UI, and poke at the change instead of\nreviewing blind.",[174,175,180],"pre",{"className":176,"code":177,"language":178,"meta":179,"style":179},"language-bash shiki shiki-themes github-light-high-contrast github-light-high-contrast github-dark-high-contrast","uxd my-project 42 code        # PR #42 → worktree → open in editor\nuxd my-project 42 run dev     # same workspace → install deps → start dev server\nuxd my-project clean --merged # dispose of workspaces whose PRs merged\n","bash","",[170,181,182,205,223],{"__ignoreMap":179},[183,184,187,190,194,198,201],"span",{"class":185,"line":186},"line",1,[183,188,164],{"class":189},"szw1H",[183,191,193],{"class":192},"semJd"," my-project",[183,195,197],{"class":196},"ssYy9"," 42",[183,199,200],{"class":192}," code",[183,202,204],{"class":203},"sq92B","        # PR #42 → worktree → open in editor\n",[183,206,208,210,212,214,217,220],{"class":185,"line":207},2,[183,209,164],{"class":189},[183,211,193],{"class":192},[183,213,197],{"class":196},[183,215,216],{"class":192}," run",[183,218,219],{"class":192}," dev",[183,221,222],{"class":203},"     # same workspace → install deps → start dev server\n",[183,224,226,228,230,233,236],{"class":185,"line":225},3,[183,227,164],{"class":189},[183,229,193],{"class":192},[183,231,232],{"class":192}," clean",[183,234,235],{"class":196}," --merged",[183,237,238],{"class":203}," # dispose of workspaces whose PRs merged\n",[240,241,243],"h2",{"id":242},"the-one-pipeline","The one pipeline",[159,245,246],{},"Every workspace command is the same three steps:",[174,248,253],{"className":249,"code":251,"language":252},[250],"language-text","resolve(ref) → materialize(workspace) → act(command)\n","text",[170,254,251],{"__ignoreMap":179},[159,256,257,260,261,264,265,268],{},[162,258,259],{},"Resolve"," turns a ref into a concrete git target. ",[162,262,263],{},"Materialize"," ensures a\nworktree exists for that target, with dependencies installed, seed files\ncopied, and ports allocated — idempotent, and cheap when the workspace already\nexists. ",[162,266,267],{},"Act"," does the thing you asked for: open an editor, run a configured\ncommand, exec an arbitrary command, drop into a shell, diff, or sync.",[159,270,271,274],{},[170,272,273],{},"checkout"," is the pipeline with a no-op act step. Every other verb is a thin\nwrapper over it. Learn the pipeline once and the whole CLI follows.",[240,276,278],{"id":277},"what-you-get","What you get",[280,281,282,287,295,304],"card-group",{},[283,284,286],"card",{"icon":40,"title":285},"Isolated workspaces","One git worktree per ref, off a single bare clone. Branches do not fight over\nyour main checkout, and you can hold several refs open at once.",[283,288,290,291,294],{"icon":56,"title":289},"Ports that do not collide","Each workspace gets its own port allocation, exported as ",[170,292,293],{},"$UXD_PORT"," and\ninterpolated into your config, so two dev servers run side by side.",[283,296,299,300,303],{"icon":297,"title":298},"i-lucide-package","Setup that runs itself","Dependency installs and seed files (",[170,301,302],{},".env.local"," and friends) are part of\nmaterializing, not a checklist you keep in your head.",[283,305,307,310],{"icon":51,"title":306},"Degrades gracefully",[170,308,309],{},"gh"," adds PR state, CI marks, and true PR diffs. Without it, everything still\nworks against plain git.",[240,312,314],{"id":313},"where-to-go-next","Where to go next",[316,317,318,331,341,347],"ul",{},[319,320,321,322,326,327,330],"li",{},"New here? ",[323,324,325],"a",{"href":18},"Install uxd",", then follow the\n",[323,328,329],{"href":23},"quick start",".",[319,332,333,334,337,338,330],{},"Want the model in your head? Read\n",[323,335,336],{"href":28},"how it works"," and\n",[323,339,340],{"href":33},"refs",[319,342,343,344,330],{},"Have a task in mind? Start with the ",[323,345,346],{"href":49},"guides",[319,348,349,350,330],{},"Looking up a flag? Go straight to the ",[323,351,352],{"href":95},"CLI reference",[354,355,356],"style",{},"html pre.shiki code .szw1H, html code.shiki .szw1H{--shiki-light:#702C00;--shiki-default:#702C00;--shiki-dark:#FFB757}html pre.shiki code .semJd, html code.shiki .semJd{--shiki-light:#032563;--shiki-default:#032563;--shiki-dark:#ADDCFF}html pre.shiki code .ssYy9, html code.shiki .ssYy9{--shiki-light:#023B95;--shiki-default:#023B95;--shiki-dark:#91CBFF}html pre.shiki code .sq92B, html code.shiki .sq92B{--shiki-light:#66707B;--shiki-default:#66707B;--shiki-dark:#BDC4CC}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":179,"searchDepth":207,"depth":207,"links":358},[359,360,361],{"id":242,"depth":207,"text":243},{"id":277,"depth":207,"text":278},{"id":313,"depth":207,"text":314},"uxd materializes any git ref of a configured project into an isolated, runnable local workspace with one command.","md",null,{},{"icon":15},{"title":12,"description":368},"uxd turns a PR number, branch, commit, URL, or path into a ready-to-run git worktree, so you can run a change locally instead of reviewing it blind.","R4uViKWKgjij-msKDKUbPefkMEdDmyxUrLOwW4dR8Nw",[364,371],{"title":17,"path":18,"stem":19,"description":372,"icon":20,"children":-1},"Install the uxd CLI globally, from a clone, or run it without installing.",1784975260425]