@chatcode/chatcode-cli 1.0.3 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli.js +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -9312,4 +9312,4 @@ Usage: chatcode-cli --remote "your task description"`,()=>q4(1));n("tengu_remote
|
|
|
9312
9312
|
`));await $J8();let{teleportWithProgress:a5}=await Promise.resolve().then(() => (Uc_(),Fc_)),j4=await a5(yK,W6);rk6({sessionId:W6}),YK=j4.messages}catch(q7){if(q7 instanceof AJ)process.stderr.write(q7.formattedMessage+`
|
|
9313
9313
|
`);else O6(q7),process.stderr.write(fq.red(`Error: ${l6(q7)}
|
|
9314
9314
|
`));await q4(1)}}}if(V_){let q7=V_;try{let u_=performance.now(),a5=await Fa(T_??q7,void 0);if(!a5)return n("tengu_session_resumed",{entrypoint:"cli_flag",success:!1}),await SL(yK,`No conversation found with session ID: ${q7}`);let j4=T_?.fullPath??a5.fullPath;if(M7=await dL8(a5,{forkSession:!!M.forkSession,sessionIdOverride:q7,transcriptPath:j4},DA),M7.restoredAgentDef)r7=M7.restoredAgentDef;n("tengu_session_resumed",{entrypoint:"cli_flag",success:!0,resume_duration_ms:Math.round(performance.now()-u_)})}catch(u_){n("tengu_session_resumed",{entrypoint:"cli_flag",success:!1}),O6(u_),await SL(yK,`Failed to resume session ${q7}`)}}if(m)try{let q7=await m,u_=t8(q7,(a5)=>!a5.success);if(u_>0)process.stderr.write(fq.yellow(`Warning: ${u_}/${q7.length} file(s) failed to download.
|
|
9315
|
-
`))}catch(q7){return await SL(yK,`Error downloading files: ${l6(q7)}`)}let y4=M7??(Array.isArray(YK)?{messages:YK,fileHistorySnapshots:void 0,agentName:void 0,agentColor:void 0,restoredAgentDef:r7,initialState:jz,contentReplacements:void 0}:void 0);if(y4)F0q(M),U0q(M),await tF6(yK,{getFpsMetrics:D3,stats:wz,initialState:y4.initialState},{...zY,mainThreadAgentDefinition:y4.restoredAgentDef??r7,initialMessages:y4.messages,initialFileHistorySnapshots:y4.fileHistorySnapshots,initialContentReplacements:y4.contentReplacements,initialAgentName:y4.agentName,initialAgentColor:y4.agentColor},TY6);else await $m_(yK,{getFpsMetrics:D3,stats:wz,initialState:jz},hp(x8()),{...zY,initialSearchQuery:a7,forkSession:M.forkSession,filterByPr:B4})}else{let nq=s3&&U$.length===0?s3:void 0;w_("action_after_hooks"),F0q(M),U0q(M);let YK=null,M7=YK?[YK,...U$]:U$.length>0?U$:void 0;await K3q(),await tF6(yK,{getFpsMetrics:D3,stats:wz,initialState:jz},{...zY,initialMessages:M7,pendingHookMessages:nq},TY6)}}).version(`${MACRO.VERSION} (ChatCode CLI)`,"-v, --version","Output the version number"),x7("chromeIntegration"))K.option("--chrome","Enable browser integration"),K.option("--no-chrome","Disable browser integration");if(K.option("-w, --worktree [name]","Create a new git worktree for this session (optionally specify a name)"),K.option("--tmux","Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux."),qa())K.addOption(new V$("--advisor <model>","Enable the server-side advisor tool with the specified model (alias or full ID).").hideHelp());if(K.addOption(new V$("--agent-id <id>","Teammate agent ID").hideHelp()),K.addOption(new V$("--agent-name <name>","Teammate display name").hideHelp()),K.addOption(new V$("--team-name <name>","Team name for swarm coordination").hideHelp()),K.addOption(new V$("--agent-color <color>","Teammate UI color").hideHelp()),K.addOption(new V$("--plan-mode-required","Require plan mode before implementation").hideHelp()),K.addOption(new V$("--parent-session-id <id>","Parent session ID for analytics correlation").hideHelp()),K.addOption(new V$("--teammate-mode <mode>",'How to spawn teammates: "tmux", "in-process", or "auto"').choices(["auto","tmux","in-process"]).hideHelp()),K.addOption(new V$("--agent-type <type>","Custom agent type for this teammate").hideHelp()),K.addOption(new V$("--sdk-url <url>","Use remote WebSocket endpoint for SDK I/O streaming (only with -p and stream-json format)").hideHelp()),x7("remoteControl"))K.addOption(new V$("--teleport [session]","Resume a teleport session, optionally specify session ID").hideHelp()),K.addOption(new V$("--remote [description]","Create a remote session with the given description").hideHelp());x7("remoteControl"),w_("run_main_options_built");let _=process.argv.includes("-p")||process.argv.includes("--print"),$=process.argv.some((j)=>j.startsWith("cc://")||j.startsWith("cc+unix://"));if(_&&!$)return w_("run_before_parse"),await K.parseAsync(process.argv),w_("run_after_parse"),K;let z=K.command("mcp").description("Configure and manage MCP servers").configureHelp(q()).enablePositionalOptions();if(z.command("serve").description("Start the ChatCode CLI MCP server").option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).action(async({debug:j,verbose:M})=>{let{mcpServeHandler:J}=await Promise.resolve().then(() => (Ke(),qe));await J({debug:j,verbose:M})}),Og_(z),Gd())Hg_(z);if(z.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (local, user, or project) - if not specified, removes from whichever scope it exists in").action(async(j,M)=>{let{mcpRemoveHandler:J}=await Promise.resolve().then(() => (Ke(),qe));await J(j,M)}),z.command("list").description("List configured MCP servers. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let{mcpListHandler:j}=await Promise.resolve().then(() => (Ke(),qe));await j()}),z.command("get <name>").description("Get details about an MCP server. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async(j)=>{let{mcpGetHandler:M}=await Promise.resolve().then(() => (Ke(),qe));await M(j)}),z.command("add-json <name> <json>").description("Add an MCP server (stdio or SSE) with a JSON string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--client-secret","Prompt for OAuth client secret (or set MCP_CLIENT_SECRET env var)").action(async(j,M,J)=>{let{mcpAddJsonHandler:P}=await Promise.resolve().then(() => (Ke(),qe));await P(j,M,J)}),x7("desktopHandoff"))z.command("add-from-claude-desktop").description("Import MCP servers from desktop configuration (Mac and WSL only)").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(j)=>{let{mcpAddFromDesktopHandler:M}=await Promise.resolve().then(() => (Ke(),qe));await M(j)});z.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async()=>{let{mcpResetChoicesHandler:j}=await Promise.resolve().then(() => (Ke(),qe));await j()});let Y=K.command("auth").description("Manage authentication").configureHelp(q()),A=Y.command("login").description("Sign in to your ChatCode account").option("--email <email>","Pre-populate email address on the login page").option("--sso","Force SSO login flow").option("--console","Use ChatCode Console (API usage billing)");if(x7("consumerSubscription"))A.option("--claudeai","Use hosted subscription plan (default)");A.action(async({email:j,sso:M,console:J,claudeai:P})=>{let{authLogin:X}=await Promise.resolve().then(() => (K26(),pHq));await X({email:j,sso:M,console:J,claudeai:P})}),Y.command("status").description("Show authentication status").option("--json","Output as JSON (default)").option("--text","Output as human-readable text").action(async(j)=>{let{authStatus:M}=await Promise.resolve().then(() => (K26(),pHq));await M(j)}),Y.command("logout").description("Log out from your ChatCode account").action(async()=>{let{authLogout:j}=await Promise.resolve().then(() => (K26(),pHq));await j()});let O=()=>new V$("--cowork","Use cowork_plugins directory").hideHelp(),w=K.command("plugin").alias("plugins").description("Manage ChatCode CLI plugins").configureHelp(q());w.command("validate <path>").description("Validate a plugin or marketplace manifest").addOption(O()).action(async(j,M)=>{let{pluginValidateHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("list").description("List installed plugins").option("--json","Output as JSON").option("--available","Include available plugins from marketplaces (requires --json)").addOption(O()).action(async(j)=>{let{pluginListHandler:M}=await Promise.resolve().then(() => (CL(),EL));await M(j)});let H=w.command("marketplace").description("Manage ChatCode CLI marketplaces").configureHelp(q());if(H.command("add <source>").description("Add a marketplace from a URL, path, or GitHub repo").addOption(O()).option("--sparse <paths...>","Limit checkout to specific directories via git sparse-checkout (for monorepos). Example: --sparse .chatcode-cli-plugin plugins").option("--scope <scope>","Where to declare the marketplace: user (default), project, or local").action(async(j,M)=>{let{marketplaceAddHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),H.command("list").description("List all configured marketplaces").option("--json","Output as JSON").addOption(O()).action(async(j)=>{let{marketplaceListHandler:M}=await Promise.resolve().then(() => (CL(),EL));await M(j)}),H.command("remove <name>").alias("rm").description("Remove a configured marketplace").addOption(O()).action(async(j,M)=>{let{marketplaceRemoveHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),H.command("update [name]").description("Update marketplace(s) from their source - updates all if no name specified").addOption(O()).action(async(j,M)=>{let{marketplaceUpdateHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("install <plugin>").alias("i").description("Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)").option("-s, --scope <scope>","Installation scope: user, project, or local","user").addOption(O()).action(async(j,M)=>{let{pluginInstallHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("uninstall <plugin>").alias("remove").alias("rm").description("Uninstall an installed plugin").option("-s, --scope <scope>","Uninstall from scope: user, project, or local","user").option("--keep-data","Preserve the plugin's persistent data directory (~/.chatcode-cli/plugins/data/{id}/)").addOption(O()).action(async(j,M)=>{let{pluginUninstallHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("enable <plugin>").description("Enable a disabled plugin").option("-s, --scope <scope>",`Installation scope: ${Of.join(", ")} (default: auto-detect)`).addOption(O()).action(async(j,M)=>{let{pluginEnableHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("disable [plugin]").description("Disable an enabled plugin").option("-a, --all","Disable all enabled plugins").option("-s, --scope <scope>",`Installation scope: ${Of.join(", ")} (default: auto-detect)`).addOption(O()).action(async(j,M)=>{let{pluginDisableHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("update <plugin>").description("Update a plugin to the latest version (restart required to apply)").option("-s, --scope <scope>",`Installation scope: ${Xz6.join(", ")} (default: user)`).addOption(O()).action(async(j,M)=>{let{pluginUpdateHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),x7("consumerSubscription"))K.command("setup-token").description("Set up a long-lived authentication token (requires hosted subscription)").action(async()=>{let[{setupTokenHandler:j},{createRoot:M}]=await Promise.all([Promise.resolve().then(() => (d0q(),c0q)),Promise.resolve().then(() => (a6(),iS6))]),J=await M(Fz6(!1));await j(J)});return K.command("agents").description("List configured agents").option("--setting-sources <sources>","Comma-separated list of setting sources to load (user, project, local).").action(async()=>{let{agentsHandler:j}=await Promise.resolve().then(() => (Jd_(),Md_));await j(),process.exit(0)}),x7("remoteControl"),K.command("doctor").description("Check the health of your ChatCode CLI auto-updater. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let[{doctorHandler:j},{createRoot:M}]=await Promise.all([Promise.resolve().then(() => (d0q(),c0q)),Promise.resolve().then(() => (a6(),iS6))]),J=await M(Fz6(!1));await j(J)}),K.command("update").alias("upgrade").description("Check for updates and install if available").action(async()=>{let{update:j}=await Promise.resolve().then(() => (Xd_(),Pd_));await j()}),K.command("install [target]").description("Install ChatCode CLI native build. Use [target] to specify version (stable, latest, or specific version)").option("--force","Force installation even if already installed").action(async(j,M)=>{let{installHandler:J}=await Promise.resolve().then(() => (d0q(),c0q));await J(j,M)}),w_("run_before_parse"),await K.parseAsync(process.argv),w_("run_after_parse"),w_("main_after_run"),tT6(),K}async function zgz({hasInitialPrompt:q,hasStdin:K,verbose:_,debug:$,debugToStderr:z,print:Y,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:H,mcpClientCount:j,worktreeEnabled:M,skipWebFetchPreflight:J,githubActionInputs:P,dangerouslySkipPermissionsPassed:X,permissionMode:f,modeIsBypass:W,allowDangerouslySkipPermissionsPassed:Z,systemPromptFlag:G,appendSystemPromptFlag:D,thinkingConfig:N,assistantActivationPath:y}){try{n("tengu_init",{entrypoint:"claude",hasInitialPrompt:q,hasStdin:K,verbose:_,debug:$,debugToStderr:z,print:Y,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:H,mcpClientCount:j,worktree:M,skipWebFetchPreflight:J,...P&&{githubActionInputs:P},dangerouslySkipPermissionsPassed:X,permissionMode:f,modeIsBypass:W,inProtectedNamespace:$36(),allowDangerouslySkipPermissionsPassed:Z,thinkingType:N.type,...G&&{systemPromptFlag:G},...D&&{appendSystemPromptFlag:D},is_simple:A$()||void 0,is_coordinator:void 0,...y&&{assistantActivationPath:y},autoUpdatesChannel:GK().autoUpdatesChannel??"latest",...{}})}catch(L){O6(L)}}function F0q(q){}function U0q(q){return}function Ygz(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(wS)}function Agz(q){if(typeof q!=="object"||q===null)return{};let K=q,_=K.teammateMode;return{agentId:typeof K.agentId==="string"?K.agentId:void 0,agentName:typeof K.agentName==="string"?K.agentName:void 0,teamName:typeof K.teamName==="string"?K.teamName:void 0,agentColor:typeof K.agentColor==="string"?K.agentColor:void 0,planModeRequired:typeof K.planModeRequired==="boolean"?K.planModeRequired:void 0,parentSessionId:typeof K.parentSessionId==="string"?K.parentSessionId:void 0,teammateMode:_==="auto"||_==="tmux"||_==="in-process"?_:void 0,agentType:typeof K.agentType==="string"?K.agentType:void 0}}var fd_=()=>(FY(),wY(Ltq)),dmz=()=>wY(bm7),Fmz=()=>(L56(),wY(FH8)),Umz=null,IS8=11;var gh8=h(()=>{Jb();WBq();Vaq();$R8();c5();Px6();Wuq();US();a4();AD();HR8();tV();Nu_();Q8();Ru_();RJq();Gz6();Ttq();y0();mX6();Qx();YX();Ka();O3();CF6();MK();D8();$S6();sZ();sX();cd6();I8();U_();BDq();WV();sI();ZTq();iq();SL8();Lu_();RK6();Q8();Rq();t7q();Nq();H3();zm_();bi();mh8();cx();lP();ch8();Kg_();LJ();Xu();Cz6();vJ();Pf6();_g_();Iq();H0();VO();PL8();rc6();C5();zg_();zO();Lq();jh8();k7();MB();GP();yJ();aD();FJ();mB6();fg6();rG();hR();da();G_();Nt6();b8();Bm();w1();Yf6();Ag_();VJq();fE();wg_();jg_();SW8();QP6();lP();kW();IH();ux6();sL8();U$6();_3q();fV();S$();dx();tu();fK();zq();hq();uK();BO();DB6();eoq();cD();uF6();CO();Nq();Jg_();Xg_();Wg_();Zg_();Gg_();kg_();Ng_();Rg_();Lg_();rg_();og_();sg_();ZL8();eg_();Bu();n_6();lJ6();ZG6();E2();_W();lA();Y0q();$1();Uc6();sA();hM();gE();sT();$K6();BW();w_("main_tsx_entry");t8K();dRK();w_("main_tsx_imports_loaded");if(lmz())process.exit(1)});var Hgz={};function Ogz(){if(process.title="chatcode-cli",process.stdout.isTTY)process.stdout.write("\x1B]0;ChatCode CLI\x07")}async function wgz(){let q=process.argv.slice(2);if(q.length===1&&(q[0]==="--version"||q[0]==="-v"||q[0]==="-V")){console.log(`${MACRO.VERSION} (ChatCode CLI)`);return}let{profileCheckpoint:K}=await Promise.resolve().then(() => (Jb(),Cg8));if(K("cli_entry"),!Hg8(q)){console.error("This ChatCode capability is not enabled in this build."),process.exitCode=1;return}if(process.argv[2]==="--claude-in-chrome-mcp"){K("cli_claude_in_chrome_mcp_path");let{runClaudeInChromeMcpServer:Y}=await Promise.resolve().then(() => (D98(),G98));await Y();return}else if(process.argv[2]==="--chrome-native-host"){K("cli_chrome_native_host_path");let{runChromeNativeHost:Y}=await Promise.resolve().then(() => (Y0_(),z0_));await Y();return}if(!1)switch(q[0]){case"ps":case"logs":case"attach":case"kill":default:}if((q.includes("--tmux")||q.includes("--tmux=classic"))&&(q.includes("-w")||q.includes("--worktree")||q.some((Y)=>Y.startsWith("--worktree=")))){K("cli_tmux_worktree_fast_path");let{enableConfigs:Y}=await Promise.resolve().then(() => (D8(),qUK));Y();let{isWorktreeModeEnabled:A}=await Promise.resolve().then(() => me7);if(A()){let{execIntoTmuxWorktree:O}=await Promise.resolve().then(() => (BW(),ST_)),w=await O(q);if(w.handled)return;if(w.error){let{exitWithError:H}=await Promise.resolve().then(() => rm8);H(w.error)}}}if(q.length===1&&(q[0]==="--update"||q[0]==="--upgrade"))process.argv=[process.argv[0],process.argv[1],"update"];if(q.includes("--bare"))process.env.CHATCODE_CLI_SIMPLE="1";let{startCapturingEarlyInput:$}=await Promise.resolve().then(() => ($S6(),XQK));$(),K("cli_before_main_import");let{main:z}=await Promise.resolve().then(() => (gh8(),Zd_));K("cli_after_main_import"),await z(),K("cli_after_main_complete")}var vd_=h(()=>{Og8();jg8();Ag8();Ogz();process.env.COREPACK_ENABLE_AUTO_PIN="0";if(process.env.CHATCODE_CLI_REMOTE==="true"){let q=process.env.NODE_OPTIONS||"";process.env.NODE_OPTIONS=q?`${q} --max-old-space-size=8192`:"--max-old-space-size=8192"}wgz()});var jk6={name:"@chatcode/chatcode-cli",version:"1.0.3",description:"ChatCode CLI command-line coding assistant.",license:"SEE LICENSE IN LICENSE.md",type:"module",packageManager:"bun@1.3.5",repository:{type:"git",url:"http://gitlab.tianti.tg.unicom.local/kubernetesAMP/visualDesignPlatform/chatcode-cli.git"},engines:{node:">=18.0.0"},scripts:{dev:"bun run --feature BUDDY --feature AGENT_TRIGGERS ./src/dev-entry.ts",start:"bun run --feature BUDDY --feature AGENT_TRIGGERS ./src/dev-entry.ts",version:"bun run --feature BUDDY --feature AGENT_TRIGGERS ./src/dev-entry.ts --version",test:"bun test scripts/tests","scan:public-surface":"bun run scripts/public-surface-scan.mjs --fail-on-match","verify:public-surface":"bun run scripts/verify-public-surface-release.mjs",build:"bun run scripts/build.mjs",prepublishOnly:"bun run build"},files:["dist/","README.md"],publishConfig:{access:"public"},devDependencies:{"@alcalzone/ansi-tokenize":"0.3.0","adm-zip":"0.5.16","@ant/claude-for-chrome-mcp":"file:./shims/ant-claude-for-chrome-mcp","@ant/computer-use-input":"file:./shims/ant-computer-use-input","@ant/computer-use-mcp":"file:./shims/ant-computer-use-mcp","@ant/computer-use-swift":"file:./shims/ant-computer-use-swift","@anthropic-ai/claude-agent-sdk":"0.2.90","@anthropic-ai/mcpb":"2.1.2","@anthropic-ai/sandbox-runtime":"0.0.44","@anthropic-ai/sdk":"0.80.0","@aws-sdk/client-bedrock-runtime":"3.1020.0","@commander-js/extra-typings":"14.0.0","@growthbook/growthbook":"1.6.5","@modelcontextprotocol/sdk":"1.29.0","@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.214.0","@opentelemetry/core":"2.6.1","@opentelemetry/resources":"2.6.1","@opentelemetry/sdk-logs":"0.214.0","@opentelemetry/sdk-metrics":"2.6.1","@opentelemetry/sdk-trace-base":"2.6.1","@opentelemetry/semantic-conventions":"1.40.0",ajv:"8.18.0",asciichart:"1.5.25","auto-bind":"5.0.1",axios:"1.14.0","bidi-js":"1.0.3",chalk:"5.6.2",chokidar:"5.0.0","cli-boxes":"4.0.1","code-excerpt":"4.0.0",diff:"8.0.4","emoji-regex":"10.6.0","env-paths":"4.0.0",execa:"9.6.1",figures:"6.1.0","fuse.js":"7.1.0","get-east-asian-width":"1.5.0","google-auth-library":"10.6.2","highlight.js":"11.11.1","https-proxy-agent":"8.0.0",ignore:"7.0.5","indent-string":"5.0.0",ink:"6.8.0","jsonc-parser":"3.3.1","lodash-es":"4.17.23","lru-cache":"11.2.7",marked:"17.0.5","p-map":"7.0.4",picomatch:"4.0.4","proper-lockfile":"4.1.2",qrcode:"1.5.4",react:"19.2.4","react-reconciler":"0.33.0",semver:"7.7.4","shell-quote":"1.8.3","signal-exit":"4.1.0","stack-utils":"2.0.6","strip-ansi":"7.2.0","supports-hyperlinks":"4.4.0","tree-kill":"1.2.2","type-fest":"5.5.0",undici:"7.24.6","usehooks-ts":"3.1.1",uuid:"^11.1.0","vscode-jsonrpc":"8.2.1","vscode-languageserver-protocol":"3.17.5","vscode-languageserver-types":"3.17.5","wrap-ansi":"10.0.0",ws:"8.20.0",xss:"1.0.15",yaml:"2.8.3",zod:"4.3.6","color-diff-napi":"file:./shims/color-diff-napi","modifiers-napi":"file:./shims/modifiers-napi","url-handler-napi":"file:./shims/url-handler-napi"},bin:{"chatcode-cli":"./dist/cli.js",cco:"./dist/cli.js"}};zq();import{existsSync as mS8,readdirSync as jgz,readFileSync as Mgz}from"fs";import{dirname as kd_,extname as Jgz,join as SY6,resolve as Gd_}from"path";import{fileURLToPath as Pgz}from"url";if(process.platform!=="win32"&&process.platform!=="darwin")process.env.CHATCODE_CLI_NO_FLICKER??="1";process.env.CLAUDE_CODE_DISABLE_MOUSE??="0";var Dd_=kd_(Pgz(import.meta.url)),Xgz={VERSION:jk6.version,BUILD_TIME:"",PACKAGE_URL:jk6.name,NATIVE_PACKAGE_URL:jk6.name,VERSION_CHANGELOG:"",ISSUES_EXPLAINER:"contact support at https://yuanjing.chinaunicom.com",FEEDBACK_CHANNEL:"github"};if(!("MACRO"in globalThis))globalThis.MACRO=Xgz;function pS8(q,K){if(!mS8(q))return;for(let _ of jgz(q,{withFileTypes:!0})){let $=SY6(q,_.name);if(_.isDirectory()){pS8($,K);continue}if([".ts",".tsx",".js",".jsx",".mjs",".cjs"].includes(Jgz(_.name)))K.push($)}}function fgz(q){let K=q.replace(/\.js$/u,"");return[K,`${K}.ts`,`${K}.tsx`,`${K}.js`,`${K}.jsx`,`${K}.mjs`,`${K}.cjs`,SY6(K,"index.ts"),SY6(K,"index.tsx"),SY6(K,"index.js")].some(($)=>mS8($))}function Wgz(){let q=[],K=Gd_(Dd_,"..");if(R(`cliRoot: ${K}`,{level:"warn"}),R(`_runtimeDir: ${Dd_}`),!mS8(SY6(K,"src")))return[];pS8(SY6(K,"src"),q),pS8(SY6(K,"vendor"),q);let _=[],$=new Set,z=/(?:import|export)\s+[\s\S]*?from\s+['"](\.\.?\/[^'"]+)['"]|require\(\s*['"](\.\.?\/[^'"]+)['"]\s*\)/g;for(let Y of q){let A=Mgz(Y,"utf8");for(let O of A.matchAll(z)){let w=O[1]??O[2];if(!w)continue;let H=Gd_(kd_(Y),w);if(fgz(H))continue;let j=`${Y} -> ${w}`;if($.has(j))continue;$.add(j),_.push({importer:Y,specifier:w})}}return _.sort((Y,A)=>`${Y.importer}:${Y.specifier}`.localeCompare(`${A.importer}:${A.specifier}`))}var vWw=process.argv.slice(2),uS8=Wgz();if(uS8.length>0){console.log("Wanma-CLI restored development workspace"),console.log(`version: ${jk6.version}`),console.log(`missing relative imports: ${uS8.length}`),console.log(""),console.log("Top missing modules:");for(let q of uS8.slice(0,20))console.log(`- ${q.importer.replace(`${process.cwd()}/`,"")} -> ${q.specifier}`);console.log(""),console.log("The original app entry is still blocked by missing restored sources."),console.log("Use this workspace to continue restoration; once missing imports reach 0, this launcher will forward to src/main.tsx automatically."),process.exit(0)}await Promise.resolve().then(() => (vd_(),Hgz));
|
|
9315
|
+
`))}catch(q7){return await SL(yK,`Error downloading files: ${l6(q7)}`)}let y4=M7??(Array.isArray(YK)?{messages:YK,fileHistorySnapshots:void 0,agentName:void 0,agentColor:void 0,restoredAgentDef:r7,initialState:jz,contentReplacements:void 0}:void 0);if(y4)F0q(M),U0q(M),await tF6(yK,{getFpsMetrics:D3,stats:wz,initialState:y4.initialState},{...zY,mainThreadAgentDefinition:y4.restoredAgentDef??r7,initialMessages:y4.messages,initialFileHistorySnapshots:y4.fileHistorySnapshots,initialContentReplacements:y4.contentReplacements,initialAgentName:y4.agentName,initialAgentColor:y4.agentColor},TY6);else await $m_(yK,{getFpsMetrics:D3,stats:wz,initialState:jz},hp(x8()),{...zY,initialSearchQuery:a7,forkSession:M.forkSession,filterByPr:B4})}else{let nq=s3&&U$.length===0?s3:void 0;w_("action_after_hooks"),F0q(M),U0q(M);let YK=null,M7=YK?[YK,...U$]:U$.length>0?U$:void 0;await K3q(),await tF6(yK,{getFpsMetrics:D3,stats:wz,initialState:jz},{...zY,initialMessages:M7,pendingHookMessages:nq},TY6)}}).version(`${MACRO.VERSION} (ChatCode CLI)`,"-v, --version","Output the version number"),x7("chromeIntegration"))K.option("--chrome","Enable browser integration"),K.option("--no-chrome","Disable browser integration");if(K.option("-w, --worktree [name]","Create a new git worktree for this session (optionally specify a name)"),K.option("--tmux","Create a tmux session for the worktree (requires --worktree). Uses iTerm2 native panes when available; use --tmux=classic for traditional tmux."),qa())K.addOption(new V$("--advisor <model>","Enable the server-side advisor tool with the specified model (alias or full ID).").hideHelp());if(K.addOption(new V$("--agent-id <id>","Teammate agent ID").hideHelp()),K.addOption(new V$("--agent-name <name>","Teammate display name").hideHelp()),K.addOption(new V$("--team-name <name>","Team name for swarm coordination").hideHelp()),K.addOption(new V$("--agent-color <color>","Teammate UI color").hideHelp()),K.addOption(new V$("--plan-mode-required","Require plan mode before implementation").hideHelp()),K.addOption(new V$("--parent-session-id <id>","Parent session ID for analytics correlation").hideHelp()),K.addOption(new V$("--teammate-mode <mode>",'How to spawn teammates: "tmux", "in-process", or "auto"').choices(["auto","tmux","in-process"]).hideHelp()),K.addOption(new V$("--agent-type <type>","Custom agent type for this teammate").hideHelp()),K.addOption(new V$("--sdk-url <url>","Use remote WebSocket endpoint for SDK I/O streaming (only with -p and stream-json format)").hideHelp()),x7("remoteControl"))K.addOption(new V$("--teleport [session]","Resume a teleport session, optionally specify session ID").hideHelp()),K.addOption(new V$("--remote [description]","Create a remote session with the given description").hideHelp());x7("remoteControl"),w_("run_main_options_built");let _=process.argv.includes("-p")||process.argv.includes("--print"),$=process.argv.some((j)=>j.startsWith("cc://")||j.startsWith("cc+unix://"));if(_&&!$)return w_("run_before_parse"),await K.parseAsync(process.argv),w_("run_after_parse"),K;let z=K.command("mcp").description("Configure and manage MCP servers").configureHelp(q()).enablePositionalOptions();if(z.command("serve").description("Start the ChatCode CLI MCP server").option("-d, --debug","Enable debug mode",()=>!0).option("--verbose","Override verbose mode setting from config",()=>!0).action(async({debug:j,verbose:M})=>{let{mcpServeHandler:J}=await Promise.resolve().then(() => (Ke(),qe));await J({debug:j,verbose:M})}),Og_(z),Gd())Hg_(z);if(z.command("remove <name>").description("Remove an MCP server").option("-s, --scope <scope>","Configuration scope (local, user, or project) - if not specified, removes from whichever scope it exists in").action(async(j,M)=>{let{mcpRemoveHandler:J}=await Promise.resolve().then(() => (Ke(),qe));await J(j,M)}),z.command("list").description("List configured MCP servers. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let{mcpListHandler:j}=await Promise.resolve().then(() => (Ke(),qe));await j()}),z.command("get <name>").description("Get details about an MCP server. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async(j)=>{let{mcpGetHandler:M}=await Promise.resolve().then(() => (Ke(),qe));await M(j)}),z.command("add-json <name> <json>").description("Add an MCP server (stdio or SSE) with a JSON string").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").option("--client-secret","Prompt for OAuth client secret (or set MCP_CLIENT_SECRET env var)").action(async(j,M,J)=>{let{mcpAddJsonHandler:P}=await Promise.resolve().then(() => (Ke(),qe));await P(j,M,J)}),x7("desktopHandoff"))z.command("add-from-claude-desktop").description("Import MCP servers from desktop configuration (Mac and WSL only)").option("-s, --scope <scope>","Configuration scope (local, user, or project)","local").action(async(j)=>{let{mcpAddFromDesktopHandler:M}=await Promise.resolve().then(() => (Ke(),qe));await M(j)});z.command("reset-project-choices").description("Reset all approved and rejected project-scoped (.mcp.json) servers within this project").action(async()=>{let{mcpResetChoicesHandler:j}=await Promise.resolve().then(() => (Ke(),qe));await j()});let Y=K.command("auth").description("Manage authentication").configureHelp(q()),A=Y.command("login").description("Sign in to your ChatCode account").option("--email <email>","Pre-populate email address on the login page").option("--sso","Force SSO login flow").option("--console","Use ChatCode Console (API usage billing)");if(x7("consumerSubscription"))A.option("--claudeai","Use hosted subscription plan (default)");A.action(async({email:j,sso:M,console:J,claudeai:P})=>{let{authLogin:X}=await Promise.resolve().then(() => (K26(),pHq));await X({email:j,sso:M,console:J,claudeai:P})}),Y.command("status").description("Show authentication status").option("--json","Output as JSON (default)").option("--text","Output as human-readable text").action(async(j)=>{let{authStatus:M}=await Promise.resolve().then(() => (K26(),pHq));await M(j)}),Y.command("logout").description("Log out from your ChatCode account").action(async()=>{let{authLogout:j}=await Promise.resolve().then(() => (K26(),pHq));await j()});let O=()=>new V$("--cowork","Use cowork_plugins directory").hideHelp(),w=K.command("plugin").alias("plugins").description("Manage ChatCode CLI plugins").configureHelp(q());w.command("validate <path>").description("Validate a plugin or marketplace manifest").addOption(O()).action(async(j,M)=>{let{pluginValidateHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("list").description("List installed plugins").option("--json","Output as JSON").option("--available","Include available plugins from marketplaces (requires --json)").addOption(O()).action(async(j)=>{let{pluginListHandler:M}=await Promise.resolve().then(() => (CL(),EL));await M(j)});let H=w.command("marketplace").description("Manage ChatCode CLI marketplaces").configureHelp(q());if(H.command("add <source>").description("Add a marketplace from a URL, path, or GitHub repo").addOption(O()).option("--sparse <paths...>","Limit checkout to specific directories via git sparse-checkout (for monorepos). Example: --sparse .chatcode-cli-plugin plugins").option("--scope <scope>","Where to declare the marketplace: user (default), project, or local").action(async(j,M)=>{let{marketplaceAddHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),H.command("list").description("List all configured marketplaces").option("--json","Output as JSON").addOption(O()).action(async(j)=>{let{marketplaceListHandler:M}=await Promise.resolve().then(() => (CL(),EL));await M(j)}),H.command("remove <name>").alias("rm").description("Remove a configured marketplace").addOption(O()).action(async(j,M)=>{let{marketplaceRemoveHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),H.command("update [name]").description("Update marketplace(s) from their source - updates all if no name specified").addOption(O()).action(async(j,M)=>{let{marketplaceUpdateHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("install <plugin>").alias("i").description("Install a plugin from available marketplaces (use plugin@marketplace for specific marketplace)").option("-s, --scope <scope>","Installation scope: user, project, or local","user").addOption(O()).action(async(j,M)=>{let{pluginInstallHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("uninstall <plugin>").alias("remove").alias("rm").description("Uninstall an installed plugin").option("-s, --scope <scope>","Uninstall from scope: user, project, or local","user").option("--keep-data","Preserve the plugin's persistent data directory (~/.chatcode-cli/plugins/data/{id}/)").addOption(O()).action(async(j,M)=>{let{pluginUninstallHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("enable <plugin>").description("Enable a disabled plugin").option("-s, --scope <scope>",`Installation scope: ${Of.join(", ")} (default: auto-detect)`).addOption(O()).action(async(j,M)=>{let{pluginEnableHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("disable [plugin]").description("Disable an enabled plugin").option("-a, --all","Disable all enabled plugins").option("-s, --scope <scope>",`Installation scope: ${Of.join(", ")} (default: auto-detect)`).addOption(O()).action(async(j,M)=>{let{pluginDisableHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),w.command("update <plugin>").description("Update a plugin to the latest version (restart required to apply)").option("-s, --scope <scope>",`Installation scope: ${Xz6.join(", ")} (default: user)`).addOption(O()).action(async(j,M)=>{let{pluginUpdateHandler:J}=await Promise.resolve().then(() => (CL(),EL));await J(j,M)}),x7("consumerSubscription"))K.command("setup-token").description("Set up a long-lived authentication token (requires hosted subscription)").action(async()=>{let[{setupTokenHandler:j},{createRoot:M}]=await Promise.all([Promise.resolve().then(() => (d0q(),c0q)),Promise.resolve().then(() => (a6(),iS6))]),J=await M(Fz6(!1));await j(J)});return K.command("agents").description("List configured agents").option("--setting-sources <sources>","Comma-separated list of setting sources to load (user, project, local).").action(async()=>{let{agentsHandler:j}=await Promise.resolve().then(() => (Jd_(),Md_));await j(),process.exit(0)}),x7("remoteControl"),K.command("doctor").description("Check the health of your ChatCode CLI auto-updater. Note: The workspace trust dialog is skipped and stdio servers from .mcp.json are spawned for health checks. Only use this command in directories you trust.").action(async()=>{let[{doctorHandler:j},{createRoot:M}]=await Promise.all([Promise.resolve().then(() => (d0q(),c0q)),Promise.resolve().then(() => (a6(),iS6))]),J=await M(Fz6(!1));await j(J)}),K.command("update").alias("upgrade").description("Check for updates and install if available").action(async()=>{let{update:j}=await Promise.resolve().then(() => (Xd_(),Pd_));await j()}),K.command("install [target]").description("Install ChatCode CLI native build. Use [target] to specify version (stable, latest, or specific version)").option("--force","Force installation even if already installed").action(async(j,M)=>{let{installHandler:J}=await Promise.resolve().then(() => (d0q(),c0q));await J(j,M)}),w_("run_before_parse"),await K.parseAsync(process.argv),w_("run_after_parse"),w_("main_after_run"),tT6(),K}async function zgz({hasInitialPrompt:q,hasStdin:K,verbose:_,debug:$,debugToStderr:z,print:Y,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:H,mcpClientCount:j,worktreeEnabled:M,skipWebFetchPreflight:J,githubActionInputs:P,dangerouslySkipPermissionsPassed:X,permissionMode:f,modeIsBypass:W,allowDangerouslySkipPermissionsPassed:Z,systemPromptFlag:G,appendSystemPromptFlag:D,thinkingConfig:N,assistantActivationPath:y}){try{n("tengu_init",{entrypoint:"claude",hasInitialPrompt:q,hasStdin:K,verbose:_,debug:$,debugToStderr:z,print:Y,outputFormat:A,inputFormat:O,numAllowedTools:w,numDisallowedTools:H,mcpClientCount:j,worktree:M,skipWebFetchPreflight:J,...P&&{githubActionInputs:P},dangerouslySkipPermissionsPassed:X,permissionMode:f,modeIsBypass:W,inProtectedNamespace:$36(),allowDangerouslySkipPermissionsPassed:Z,thinkingType:N.type,...G&&{systemPromptFlag:G},...D&&{appendSystemPromptFlag:D},is_simple:A$()||void 0,is_coordinator:void 0,...y&&{assistantActivationPath:y},autoUpdatesChannel:GK().autoUpdatesChannel??"latest",...{}})}catch(L){O6(L)}}function F0q(q){}function U0q(q){return}function Ygz(){(process.stderr.isTTY?process.stderr:process.stdout.isTTY?process.stdout:void 0)?.write(wS)}function Agz(q){if(typeof q!=="object"||q===null)return{};let K=q,_=K.teammateMode;return{agentId:typeof K.agentId==="string"?K.agentId:void 0,agentName:typeof K.agentName==="string"?K.agentName:void 0,teamName:typeof K.teamName==="string"?K.teamName:void 0,agentColor:typeof K.agentColor==="string"?K.agentColor:void 0,planModeRequired:typeof K.planModeRequired==="boolean"?K.planModeRequired:void 0,parentSessionId:typeof K.parentSessionId==="string"?K.parentSessionId:void 0,teammateMode:_==="auto"||_==="tmux"||_==="in-process"?_:void 0,agentType:typeof K.agentType==="string"?K.agentType:void 0}}var fd_=()=>(FY(),wY(Ltq)),dmz=()=>wY(bm7),Fmz=()=>(L56(),wY(FH8)),Umz=null,IS8=11;var gh8=h(()=>{Jb();WBq();Vaq();$R8();c5();Px6();Wuq();US();a4();AD();HR8();tV();Nu_();Q8();Ru_();RJq();Gz6();Ttq();y0();mX6();Qx();YX();Ka();O3();CF6();MK();D8();$S6();sZ();sX();cd6();I8();U_();BDq();WV();sI();ZTq();iq();SL8();Lu_();RK6();Q8();Rq();t7q();Nq();H3();zm_();bi();mh8();cx();lP();ch8();Kg_();LJ();Xu();Cz6();vJ();Pf6();_g_();Iq();H0();VO();PL8();rc6();C5();zg_();zO();Lq();jh8();k7();MB();GP();yJ();aD();FJ();mB6();fg6();rG();hR();da();G_();Nt6();b8();Bm();w1();Yf6();Ag_();VJq();fE();wg_();jg_();SW8();QP6();lP();kW();IH();ux6();sL8();U$6();_3q();fV();S$();dx();tu();fK();zq();hq();uK();BO();DB6();eoq();cD();uF6();CO();Nq();Jg_();Xg_();Wg_();Zg_();Gg_();kg_();Ng_();Rg_();Lg_();rg_();og_();sg_();ZL8();eg_();Bu();n_6();lJ6();ZG6();E2();_W();lA();Y0q();$1();Uc6();sA();hM();gE();sT();$K6();BW();w_("main_tsx_entry");t8K();dRK();w_("main_tsx_imports_loaded");if(lmz())process.exit(1)});var Hgz={};function Ogz(){if(process.title="chatcode-cli",process.stdout.isTTY)process.stdout.write("\x1B]0;ChatCode CLI\x07")}async function wgz(){let q=process.argv.slice(2);if(q.length===1&&(q[0]==="--version"||q[0]==="-v"||q[0]==="-V")){console.log(`${MACRO.VERSION} (ChatCode CLI)`);return}let{profileCheckpoint:K}=await Promise.resolve().then(() => (Jb(),Cg8));if(K("cli_entry"),!Hg8(q)){console.error("This ChatCode capability is not enabled in this build."),process.exitCode=1;return}if(process.argv[2]==="--claude-in-chrome-mcp"){K("cli_claude_in_chrome_mcp_path");let{runClaudeInChromeMcpServer:Y}=await Promise.resolve().then(() => (D98(),G98));await Y();return}else if(process.argv[2]==="--chrome-native-host"){K("cli_chrome_native_host_path");let{runChromeNativeHost:Y}=await Promise.resolve().then(() => (Y0_(),z0_));await Y();return}if(!1)switch(q[0]){case"ps":case"logs":case"attach":case"kill":default:}if((q.includes("--tmux")||q.includes("--tmux=classic"))&&(q.includes("-w")||q.includes("--worktree")||q.some((Y)=>Y.startsWith("--worktree=")))){K("cli_tmux_worktree_fast_path");let{enableConfigs:Y}=await Promise.resolve().then(() => (D8(),qUK));Y();let{isWorktreeModeEnabled:A}=await Promise.resolve().then(() => me7);if(A()){let{execIntoTmuxWorktree:O}=await Promise.resolve().then(() => (BW(),ST_)),w=await O(q);if(w.handled)return;if(w.error){let{exitWithError:H}=await Promise.resolve().then(() => rm8);H(w.error)}}}if(q.length===1&&(q[0]==="--update"||q[0]==="--upgrade"))process.argv=[process.argv[0],process.argv[1],"update"];if(q.includes("--bare"))process.env.CHATCODE_CLI_SIMPLE="1";let{startCapturingEarlyInput:$}=await Promise.resolve().then(() => ($S6(),XQK));$(),K("cli_before_main_import");let{main:z}=await Promise.resolve().then(() => (gh8(),Zd_));K("cli_after_main_import"),await z(),K("cli_after_main_complete")}var vd_=h(()=>{Og8();jg8();Ag8();Ogz();process.env.COREPACK_ENABLE_AUTO_PIN="0";if(process.env.CHATCODE_CLI_REMOTE==="true"){let q=process.env.NODE_OPTIONS||"";process.env.NODE_OPTIONS=q?`${q} --max-old-space-size=8192`:"--max-old-space-size=8192"}wgz()});var jk6={name:"@chatcode/chatcode-cli",version:"2.0.0",description:"ChatCode CLI command-line coding assistant.",license:"SEE LICENSE IN LICENSE.md",type:"module",packageManager:"bun@1.3.5",repository:{type:"git",url:"http://gitlab.tianti.tg.unicom.local/kubernetesAMP/visualDesignPlatform/chatcode-cli.git"},engines:{node:">=18.0.0"},scripts:{dev:"bun run --feature BUDDY --feature AGENT_TRIGGERS ./src/dev-entry.ts",start:"bun run --feature BUDDY --feature AGENT_TRIGGERS ./src/dev-entry.ts",version:"bun run --feature BUDDY --feature AGENT_TRIGGERS ./src/dev-entry.ts --version",test:"bun test scripts/tests","scan:public-surface":"bun run scripts/public-surface-scan.mjs --fail-on-match","verify:public-surface":"bun run scripts/verify-public-surface-release.mjs",build:"bun run scripts/build.mjs",prepublishOnly:"bun run build"},files:["dist/","README.md"],publishConfig:{access:"public"},devDependencies:{"@alcalzone/ansi-tokenize":"0.3.0","adm-zip":"0.5.16","@ant/claude-for-chrome-mcp":"file:./shims/ant-claude-for-chrome-mcp","@ant/computer-use-input":"file:./shims/ant-computer-use-input","@ant/computer-use-mcp":"file:./shims/ant-computer-use-mcp","@ant/computer-use-swift":"file:./shims/ant-computer-use-swift","@anthropic-ai/claude-agent-sdk":"0.2.90","@anthropic-ai/mcpb":"2.1.2","@anthropic-ai/sandbox-runtime":"0.0.44","@anthropic-ai/sdk":"0.80.0","@aws-sdk/client-bedrock-runtime":"3.1020.0","@commander-js/extra-typings":"14.0.0","@growthbook/growthbook":"1.6.5","@modelcontextprotocol/sdk":"1.29.0","@opentelemetry/api":"1.9.1","@opentelemetry/api-logs":"0.214.0","@opentelemetry/core":"2.6.1","@opentelemetry/resources":"2.6.1","@opentelemetry/sdk-logs":"0.214.0","@opentelemetry/sdk-metrics":"2.6.1","@opentelemetry/sdk-trace-base":"2.6.1","@opentelemetry/semantic-conventions":"1.40.0",ajv:"8.18.0",asciichart:"1.5.25","auto-bind":"5.0.1",axios:"1.14.0","bidi-js":"1.0.3",chalk:"5.6.2",chokidar:"5.0.0","cli-boxes":"4.0.1","code-excerpt":"4.0.0",diff:"8.0.4","emoji-regex":"10.6.0","env-paths":"4.0.0",execa:"9.6.1",figures:"6.1.0","fuse.js":"7.1.0","get-east-asian-width":"1.5.0","google-auth-library":"10.6.2","highlight.js":"11.11.1","https-proxy-agent":"8.0.0",ignore:"7.0.5","indent-string":"5.0.0",ink:"6.8.0","jsonc-parser":"3.3.1","lodash-es":"4.17.23","lru-cache":"11.2.7",marked:"17.0.5","p-map":"7.0.4",picomatch:"4.0.4","proper-lockfile":"4.1.2",qrcode:"1.5.4",react:"19.2.4","react-reconciler":"0.33.0",semver:"7.7.4","shell-quote":"1.8.3","signal-exit":"4.1.0","stack-utils":"2.0.6","strip-ansi":"7.2.0","supports-hyperlinks":"4.4.0","tree-kill":"1.2.2","type-fest":"5.5.0",undici:"7.24.6","usehooks-ts":"3.1.1",uuid:"^11.1.0","vscode-jsonrpc":"8.2.1","vscode-languageserver-protocol":"3.17.5","vscode-languageserver-types":"3.17.5","wrap-ansi":"10.0.0",ws:"8.20.0",xss:"1.0.15",yaml:"2.8.3",zod:"4.3.6","color-diff-napi":"file:./shims/color-diff-napi","modifiers-napi":"file:./shims/modifiers-napi","url-handler-napi":"file:./shims/url-handler-napi"},bin:{"chatcode-cli":"./dist/cli.js",cco:"./dist/cli.js"}};zq();import{existsSync as mS8,readdirSync as jgz,readFileSync as Mgz}from"fs";import{dirname as kd_,extname as Jgz,join as SY6,resolve as Gd_}from"path";import{fileURLToPath as Pgz}from"url";if(process.platform!=="win32"&&process.platform!=="darwin")process.env.CHATCODE_CLI_NO_FLICKER??="1";process.env.CLAUDE_CODE_DISABLE_MOUSE??="0";var Dd_=kd_(Pgz(import.meta.url)),Xgz={VERSION:jk6.version,BUILD_TIME:"",PACKAGE_URL:jk6.name,NATIVE_PACKAGE_URL:jk6.name,VERSION_CHANGELOG:"",ISSUES_EXPLAINER:"contact support at https://yuanjing.chinaunicom.com",FEEDBACK_CHANNEL:"github"};if(!("MACRO"in globalThis))globalThis.MACRO=Xgz;function pS8(q,K){if(!mS8(q))return;for(let _ of jgz(q,{withFileTypes:!0})){let $=SY6(q,_.name);if(_.isDirectory()){pS8($,K);continue}if([".ts",".tsx",".js",".jsx",".mjs",".cjs"].includes(Jgz(_.name)))K.push($)}}function fgz(q){let K=q.replace(/\.js$/u,"");return[K,`${K}.ts`,`${K}.tsx`,`${K}.js`,`${K}.jsx`,`${K}.mjs`,`${K}.cjs`,SY6(K,"index.ts"),SY6(K,"index.tsx"),SY6(K,"index.js")].some(($)=>mS8($))}function Wgz(){let q=[],K=Gd_(Dd_,"..");if(R(`cliRoot: ${K}`,{level:"warn"}),R(`_runtimeDir: ${Dd_}`),!mS8(SY6(K,"src")))return[];pS8(SY6(K,"src"),q),pS8(SY6(K,"vendor"),q);let _=[],$=new Set,z=/(?:import|export)\s+[\s\S]*?from\s+['"](\.\.?\/[^'"]+)['"]|require\(\s*['"](\.\.?\/[^'"]+)['"]\s*\)/g;for(let Y of q){let A=Mgz(Y,"utf8");for(let O of A.matchAll(z)){let w=O[1]??O[2];if(!w)continue;let H=Gd_(kd_(Y),w);if(fgz(H))continue;let j=`${Y} -> ${w}`;if($.has(j))continue;$.add(j),_.push({importer:Y,specifier:w})}}return _.sort((Y,A)=>`${Y.importer}:${Y.specifier}`.localeCompare(`${A.importer}:${A.specifier}`))}var vWw=process.argv.slice(2),uS8=Wgz();if(uS8.length>0){console.log("Wanma-CLI restored development workspace"),console.log(`version: ${jk6.version}`),console.log(`missing relative imports: ${uS8.length}`),console.log(""),console.log("Top missing modules:");for(let q of uS8.slice(0,20))console.log(`- ${q.importer.replace(`${process.cwd()}/`,"")} -> ${q.specifier}`);console.log(""),console.log("The original app entry is still blocked by missing restored sources."),console.log("Use this workspace to continue restoration; once missing imports reach 0, this launcher will forward to src/main.tsx automatically."),process.exit(0)}await Promise.resolve().then(() => (vd_(),Hgz));
|