MCPcopy Index your code
hub / github.com/ChinaSiro/claude-code-sourcemap / qq5

Function qq5

package/cli.js:16449–16449  ·  view source on GitHub ↗
(q,K,_,z)

Source from the content-addressed store, hash-verified

16447`),eK(1),Error(X)}if(!M.inputJSONSchema){let X=`Error: tool ${q} (passed via --permission-prompt-tool) must be an MCP tool`;throw process.stderr.write(`${X}
16448`),eK(1),Error(X)}Y=o75(M)}return Y($,A,O,w,j,H)}}async function YaY(q,K,_,z,Y,$,A,O,w,j,H){if(_){z.enqueue({type:"control_response",response:{subtype:"error",error:"Already initialized",request_id:K,pending_permission_requests:A.getPendingPermissionRequests()}});return}if(q.systemPrompt!==void 0)w.systemPrompt=q.systemPrompt;if(q.appendSystemPrompt!==void 0)w.appendSystemPrompt=q.appendSystemPrompt;if(q.promptSuggestions!==void 0)w.promptSuggestions=q.promptSuggestions;if(q.agents){let D=oi6(q.agents,"flagSettings");j.push(...D)}if(w.agent){let D=qB()===w.agent,f=j.find((G)=>G.agentType===w.agent);if(f&&!D){if(vc(f.agentType),!w.systemPrompt&&!I2(f)){let G=f.getSystemPrompt();if(G)w.systemPrompt=G}if(!w.userSpecifiedModel&&f.model&&f.model!=="inherit"){let G=A5(f.model);YP(G)}if(f.initialPrompt)A.prependUserMessage(f.initialPrompt)}else if(f?.initialPrompt)A.prependUserMessage(f.initialPrompt)}let M=Z7()?.outputStyle||iv,X=await Dh6(Z8()),P=RG6();if(q.hooks){let D={};for(let[f,G]of Object.entries(q.hooks))D[f]=G.map((Z)=>{let T=Z.hookCallbackIds.map((v)=>{return A.createHookCallback(v,Z.timeout)});return{matcher:Z.matcher,hooks:T}});It(D)}if(q.jsonSchema)di8(q.jsonSchema);let W={commands:Y.filter((D)=>D.userInvocable!==!1).map((D)=>({name:W_(D),description:UH6(D),argumentHint:D.argumentHint||""})),agents:j.map((D)=>({name:D.agentType,description:D.whenToUse,model:D.model==="inherit"?void 0:D.model})),output_style:M,available_output_styles:Object.keys(X),models:$,account:{email:P?.email,organization:P?.organization,subscriptionType:P?.subscription,tokenSource:P?.tokenSource,apiKeySource:P?.apiKeySource,apiProvider:E7()},pid:process.pid};if(BK()&&oJ()){let D=H();W.fast_mode_state=II(w.userSpecifiedModel??null,D.fastMode)}if(z.enqueue({type:"control_response",response:{subtype:"success",request_id:K,response:W}}),O){let f=FW.getInstance().getStatus();if(f)z.enqueue({type:"auth_status",isAuthenticating:f.isAuthenticating,output:f.output,error:f.error,uuid:wW(),session_id:N8()})}}async function s75(q,K,_,z){if(!e$())return{canRewind:!1,error:"File rewinding is not enabled."};if(!Hx8(K.fileHistory,q))return{canRewind:!1,error:"No file checkpoint found for this message."};if(z){let Y=await $68(K.fileHistory,q);return{canRewind:!0,filesChanged:Y?.filesChanged,insertions:Y?.insertions,deletions:Y?.deletions}}try{await jx8((Y)=>_(($)=>({...$,fileHistory:Y($.fileHistory)})),q)}catch(Y){return{canRewind:!1,error:`Failed to rewind: ${d6(Y)}`}}return{canRewind:!0}}function $aY(q,K,_,z){if(q.mode==="bypassPermissions"){if(na())return z.enqueue({type:"control_response",response:{subtype:"error",request_id:K,error:"Cannot set permission mode to bypassPermissions because it is disabled by settings or configuration"}}),_;if(!_.isBypassPermissionsModeAvailable)return z.enqueue({type:"control_response",response:{subtype:"error",request_id:K,error:"Cannot set permission mode to bypassPermissions because the session was not launched with --dangerously-skip-permissions"}}),_}if(q.mode==="auto"&&!Xy()){let Y=la();return z.enqueue({type:"control_response",response:{subtype:"error",request_id:K,error:Y?`Cannot set permission mode to auto: ${A56(Y)}`:"Cannot set permission mode to auto"}}),_}return z.enqueue({type:"control_response",response:{subtype:"success",request_id:K,response:{mode:q.mode}}}),{...ca(_.mode,q.mode,_),mode:q.mode}}function AaY(q,K,_,z){let Y=(X)=>z.enqueue({type:"control_response",response:{subtype:"error",request_id:q,error:X}}),$=_.find((X)=>X.name===K&&X.type==="connected");if(!$||$.type!=="connected")return Y(`server ${K} is not connected`);let A=$.config.pluginSource,O=A?Z4(A):void 0;if(!O?.marketplace)return Y(`server ${K} is not plugin-sourced; channel_enable requires a marketplace plugin`);let w={kind:"plugin",name:O.name,marketplace:O.marketplace},j=eH(),H=j.some((X)=>X.kind==="plugin"&&X.name===w.name&&X.marketplace===w.marketplace);if(!H)kc([...j,w]);let J=R78(K,$.capabilities,A);if(J.action==="skip"){if(!H)kc(j);return Y(J.reason)}let M=`${w.name}@${w.marketplace}`;C8(K,"Channel notifications registered"),d("tengu_mcp_channel_enable",{plugin:M}),$.client.setNotificationHandler(E78(),async(X)=>{let{content:P,meta:W}=X.params;C8(K,`notifications/claude/channel: ${P.slice(0,80)}`),d("tengu_mcp_channel_message",{content_length:P.length,meta_key_count:Object.keys(W??{}).length,entry_kind:"plugin",is_dev:!1,plugin:M}),jM({mode:"prompt",value:L78(K,P,W),priority:"next",isMeta:!0,origin:{kind:"channel",server:K},skipSlashCommands:!0})}),z.enqueue({type:"control_response",response:{subtype:"success",request_id:q,response:void 0}})}function iA7(q){if(q.type!=="connected")return;if(R78(q.name,q.capabilities,q.config.pluginSource).action!=="register")return;let _=dH6(q.name,eH()),z=_?.kind==="plugin"?`${_.name}@${_.marketplace}`:void 0;C8(q.name,"Channel notifications re-registered after reconnect"),q.client.setNotificationHandler(E78(),async(Y)=>{let{content:$,meta:A}=Y.params;C8(q.name,`notifications/claude/channel: ${$.slice(0,80)}`),d("tengu_mcp_channel_message",{content_length:$.length,meta_key_count:Object.keys(A??{}).length,entry_kind:_?.kind,is_dev:_?.dev??!1,plugin:z}),jM({mode:"prompt",value:L78(q.name,$,A),priority:"next",isMeta:!0,origin:{kind:"channel",server:q.name},skipSlashCommands:!0})})}function kl8(q,K){if(K==="stream-json"){let _={type:"result",subtype:"error_during_execution",duration_ms:0,duration_api_ms:0,is_error:!0,num_turns:0,stop_reason:null,session_id:N8(),total_cost_usd:0,usage:n0,modelUsage:{},permission_denials:[],uuid:wW(),errors:[q]};process.stdout.write(g6(_)+`
16449`)}else process.stderr.write(q+`
16450`)}function t75(q,K){let _=q.findIndex((z)=>z.uuid===K.uuid);if(_!==-1)q.splice(_,2)}async function OaY(q,K){let _=!ey();if(K.continue)try{d("tengu_continue_print",{});let z=await MK6(void 0,void 0);if(z){if(!K.forkSession){if(z.sessionId){if(Of(EX(z.sessionId),z.fullPath?Q75(z.fullPath):null),_)await mb()}}return i48(z,q),Ld(K.forkSession?{...z,worktreeSession:void 0}:z),{messages:z.messages,turnInterruptionState:z.turnInterruptionState,agentSetting:z.agentSetting}}}catch(z){return H6(z),eK(1),{messages:[]}}if(K.teleport)try{if(!OO("allow_remote_sessions"))throw Error("Remote sessions are disabled by your organization's policy.");if(d("tengu_teleport_print",{}),typeof K.teleport!=="string")throw Error("No session ID provided for teleport");let{checkOutTeleportedSessionBranch:z,processMessagesForTeleportResume:Y,teleportResumeCodeSession:$,validateGitState:A}=await Promise.resolve().then(() => (am(),A3K));await A();let O=await $(K.teleport),{branchError:w}=await z(O.branch);return{messages:Y(O.log,w)}}catch(z){return H6(z),eK(1),{messages:[]}}if(K.resume)try{d("tengu_resume_print",{});let z=u75(typeof K.resume==="string"?K.resume:"");if(!z){let $="Error: --resume requires a valid session ID when used with --print. Usage: claude -p --resume <session-id>";if(typeof K.resume==="string")$+=`. Session IDs must be in UUID format (e.g., 550e8400-e29b-41d4-a716-446655440000). Provided value "${K.resume}" is not a valid UUID`;return kl8($,K.outputFormat),eK(1),{messages:[]}}if(i6(process.env.CLAUDE_CODE_USE_CCR_V2)){let[,$]=await Promise.all([g97(z.sessionId),K.restoredWorkerState]);if($){if(q(BUK($)),typeof $.model==="string")YP($.model)}}else if(z.isUrl&&z.ingressUrl&&i6("true"))await B97(z.sessionId,z.ingressUrl);let Y=await MK6(z.sessionId,z.jsonlFile||void 0);if(!Y||Y.messages.length===0)if(z.isUrl||i6(process.env.CLAUDE_CODE_USE_CCR_V2))return{messages:await(K.sessionStartHooksPromise??xD("startup"))};else return kl8(`No conversation found with session ID: ${z.sessionId}`,K.outputFormat),eK(1),{messages:[]};if(K.resumeSessionAt){let $=Y.messages.findIndex((A)=>A.uuid===K.resumeSessionAt);if($<0)return kl8(`No message found with message.uuid of: ${K.resumeSessionAt}`,K.outputFormat),eK(1),{messages:[]};Y.messages=$>=0?Y.messages.slice(0,$+1):[]}if(!K.forkSession&&Y.sessionId){if(Of(EX(Y.sessionId),Y.fullPath?Q75(Y.fullPath):null),_)await mb()}return i48(Y,q),Ld(K.forkSession?{...Y,worktreeSession:void 0}:Y),{messages:Y.messages,turnInterruptionState:Y.turnInterruptionState,agentSetting:Y.agentSetting}}catch(z){H6(z);let Y=z instanceof Error?`Failed to resume session: ${z.message}`:"Failed to resume session with --print mode";return kl8(Y,K.outputFormat),eK(1),{messages:[]}}return{messages:await(K.sessionStartHooksPromise??xD("startup"))}}function waY(q,K){let _;if(typeof q==="string")if(q.trim()!=="")_=sm1([g6({type:"user",session_id:"",message:{role:"user",content:q},parent_tool_use_id:null})]);else _=sm1([]);else _=q;return K.sdkUrl?new Tl8(K.sdkUrl,_,K.replayUserMessages):new zK8(_,K.replayUserMessages)}async function e75({message:q,setAppState:K,onEnqueued:_,handledToolUseIds:z}){if(q.response.subtype==="success"&&q.response.response?.toolUseID&&typeof q.response.response.toolUseID==="string"){let Y=q.response.response,{toolUseID:$}=Y;if(!$)return!1;if(N(`handleOrphanedPermissionResponse: received orphaned control_response for toolUseID=${$} request_id=${q.response.request_id}`),z.has($))return N(`handleOrphanedPermissionResponse: skipping duplicate orphaned permission for toolUseID=${$} (already handled)`),!1;let A=await i97($);if(!A)return N(`handleOrphanedPermissionResponse: no unresolved tool_use found for toolUseID=${$} (already resolved in transcript)`),!1;return z.add($),N(`handleOrphanedPermissionResponse: enqueuing orphaned permission for toolUseID=${$} messageID=${A.message.id}`),jM({mode:"orphaned-permission",value:[],orphanedPermission:{permissionResult:Y,assistantMessage:A}}),_?.(),!0}return!1}function rA7(q){return{...q,scope:"dynamic"}}async function qq5(q,K,_,z){let{allowed:Y,blocked:$}=bq6(q),A={};for(let f of $)A[f]="Blocked by enterprise policy (allowedMcpServers/deniedMcpServers)";let O={},w={};for(let[f,G]of Object.entries(Y))if(G.type==="sdk")O[f]=G;else w[f]=G;let j=new Set(Object.keys(K.configs)),H=new Set(Object.keys(O)),J=[],M=[],X={...K.configs},P=[...K.clients],W=[...K.tools];for(let f of j)if(!H.has(f)){let G=P.find((T)=>T.name===f);if(G&&G.type==="connected")await G.cleanup();P=P.filter((T)=>T.name!==f);let Z=`mcp__${f}__`;W=W.filter((T)=>!T.name.startsWith(Z)),delete X[f],M.push(f)}for(let[f,G]of Object.entries(O))if(!j.has(f)){X[f]=G;let Z={type:"pending",name:f,config:{...G,scope:"dynamic"}};P=[...P,Z],J.push(f)}let D=await Kq5(w,_,z);return{response:{added:[...J,...D.response.added],removed:[...M,...D.response.removed],errors:{...A,...D.response.errors}},newSdkState:{configs:X,clients:P,tools:W},newDynamicState:D.newState,sdkServersChanged:J.length>0||M.length>0}}async function Kq5(q,K,_){let z=new Set(Object.keys(K.configs)),Y=new Set(Object.keys(q)),$=[...z].filter((D)=>!Y.has(D)),A=[...Y].filter((D)=>!z.has(D)),w=[...z].filter((D)=>Y.has(D)).filter((D)=>{let f=K.configs[D],G=q[D];if(!f||!G)return!0;let Z=rA7(G);return!Ob4(f,Z)}),j=[],H=[],J={},M=[...K.clients],X=[...K.tools];for(let D of[...$,...w]){let f=M.find((T)=>T.name===D),G=K.configs[D];if(f&&G){if(f.type==="connected")try{await f.cleanup()}catch(T){H6(T)}await pG(D,G)}let Z=`mcp__${D}__`;if(X=X.filter((T)=>!T.name.startsWith(Z)),M=M.filter((T)=>T.name!==D),$.includes(D))j.push(D)}for(let D of[...A,...w]){let f=q[D];if(!f)continue;let G=rA7(f);if(f.type==="sdk"){H.push(D);continue}try{let Z=await oC(D,G);if(M.push(Z),Z.type==="connected"){let T=await mL(Z);X.push(...T)}else if(Z.type==="failed")J[D]=Z.error||"Connection failed";H.push(D)}catch(Z){let T=x1(Z);J[D]=T.message,H6(T)}}let P={};for(let D of Y){let f=q[D];if(f)P[D]=rA7(f)}let W={clients:M,tools:X,configs:P};return _((D)=>{let f=new Set([...Object.keys(K.configs),...Object.keys(P)]),G=D.mcp.tools.filter((T)=>{for(let v of f)if(T.name.startsWith(`mcp__${v}__`))return!1;return!0}),Z=D.mcp.clients.filter((T)=>{return!f.has(T.name)});return{...D,mcp:{...D.mcp,tools:[...G,...X],clients:[...Z,...M]}}}),{response:{added:H,removed:j,errors:J},newState:W}}var d75,toY,c75,eoY,l75=`<system-reminder>
16451You are running in non-interactive mode and cannot return a response to the user until your team is shut down.
16452

Callers 1

S6Function · 0.85

Calls 10

bq6Function · 0.85
Kq5Function · 0.85
filterMethod · 0.80
entriesMethod · 0.45
keysMethod · 0.45
hasMethod · 0.45
findMethod · 0.45
cleanupMethod · 0.45
startsWithMethod · 0.45
pushMethod · 0.45

Tested by

no test coverage detected