blade-code 0.5.20 → 0.6.1
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/blade.js +2 -2
- package/dist/chunk-1t0cavth.js +28 -0
- package/dist/{chunk-x9zj0r7s.js → chunk-21zps3hb.js} +1 -1
- package/dist/{chunk-16n5hhnx.js → chunk-2ncjrcgb.js} +1 -1
- package/dist/{chunk-7ycmx7c2.js → chunk-39h8jdm3.js} +1 -1
- package/dist/{chunk-yddnm9n2.js → chunk-3ak4p05x.js} +1 -1
- package/dist/{chunk-5dprrzex.js → chunk-43et0hmr.js} +1 -1
- package/dist/chunk-563zye36.js +1 -0
- package/dist/{chunk-pfsft4nd.js → chunk-63954vzc.js} +1 -1
- package/dist/{chunk-w9gtgz08.js → chunk-65jg6hh5.js} +1 -1
- package/dist/{chunk-mz6n4w13.js → chunk-67dzm8te.js} +1 -1
- package/dist/chunk-6j51sw65.js +1 -0
- package/dist/{chunk-bhjw4b73.js → chunk-7rjrzngk.js} +1 -1
- package/dist/{chunk-16phf0ej.js → chunk-7zffps74.js} +2 -2
- package/dist/{chunk-5mqvwzj8.js → chunk-8a2z6mgp.js} +1 -1
- package/dist/{chunk-rr5p05rj.js → chunk-8zsr8vfz.js} +1 -1
- package/dist/{chunk-g6hftss3.js → chunk-9bzyfdpb.js} +1 -1
- package/dist/{chunk-8fqg3c10.js → chunk-9krqc9hn.js} +1 -1
- package/dist/{chunk-szp6w6e0.js → chunk-aeccd2wk.js} +1 -1
- package/dist/{chunk-adaxybvz.js → chunk-az0gxvcj.js} +1 -1
- package/dist/{chunk-68ctb04g.js → chunk-b5nhr3na.js} +1 -1
- package/dist/chunk-caw1bxy6.js +1 -0
- package/dist/chunk-g7xh4e99.js +1 -0
- package/dist/{chunk-f38xkfg6.js → chunk-gj13a4b0.js} +1 -1
- package/dist/{chunk-g5pasj7t.js → chunk-gn1acna6.js} +1 -1
- package/dist/{chunk-gjx50fr1.js → chunk-hg60qxhf.js} +351 -330
- package/dist/chunk-j1ehsp0x.js +3 -0
- package/dist/{chunk-zxame725.js → chunk-kevt8v3j.js} +1 -1
- package/dist/{chunk-q5yn875m.js → chunk-m7xm1ssb.js} +1 -1
- package/dist/chunk-n9mwp62v.js +1 -0
- package/dist/chunk-pex1hq3x.js +613 -0
- package/dist/chunk-rbj6kay8.js +6 -0
- package/dist/{chunk-j2ag7hh6.js → chunk-s53zeref.js} +1 -1
- package/dist/{chunk-yk91w5p2.js → chunk-t44946na.js} +3 -3
- package/dist/{chunk-37rethcy.js → chunk-t7hd45rg.js} +2 -2
- package/dist/chunk-xbwztgcz.js +2 -0
- package/dist/{chunk-k2h94jvh.js → chunk-xp4a56jz.js} +1 -1
- package/dist/{chunk-k65n39by.js → chunk-y57hcnk6.js} +1 -1
- package/dist/{chunk-qwfywxs2.js → chunk-zfy765hj.js} +1 -1
- package/dist/{chunk-3e7tfpmx.js → chunk-zxfgsb8m.js} +1 -1
- package/package.json +3 -2
- package/dist/chunk-bx4d9898.js +0 -1
- package/dist/chunk-cy8kd1cf.js +0 -2
- package/dist/chunk-fe7g701v.js +0 -1
- package/dist/chunk-fjvhbve8.js +0 -1
- package/dist/chunk-ktpzvmxg.js +0 -602
- package/dist/chunk-mxrre2n3.js +0 -24
- package/dist/chunk-set7v1rf.js +0 -3
- package/dist/chunk-tdjwh8xv.js +0 -6
- package/dist/chunk-th432d0b.js +0 -1
- package/dist/chunk-zh3ndtvg.js +0 -1
package/dist/chunk-mxrre2n3.js
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import{sb as $,xb as A}from"./chunk-7ycmx7c2.js";import{execSync as I}from"child_process";import{existsSync as Q,realpathSync as L}from"fs";import{basename as _,isAbsolute as F,resolve as T}from"path";import*as U from"os";import*as H from"path";function J(){let B=A(),q=O(B);return{workingDirectory:B,projectRoot:q,platform:`${U.platform()} (${U.arch()})`,nodeVersion:process.version,currentDate:new Date().toISOString().split("T")[0],homeDirectory:U.homedir()}}function V(B,q){try{return I(q,{cwd:B,encoding:"utf8",stdio:["pipe","pipe","ignore"]}).trim()}catch{return null}}function G(B={}){let{includeGitSnapshot:q=!0,includeDirectoryListing:M=!0}=B,z=J(),W=Q(H.join(z.projectRoot,".git")),E=_(process.env.SHELL||"unknown"),X=["package.json","tsconfig.json","BLADE.md",".env.example"].filter((K)=>Q(H.join(z.projectRoot,K))).map((K)=>`- \`${H.join(z.projectRoot,K)}\``),N=`# Environment
|
|
2
|
-
You have been invoked in the following environment:
|
|
3
|
-
- Primary working directory: ${z.workingDirectory}
|
|
4
|
-
- Is a git repository: ${W?"true":"false"}
|
|
5
|
-
- Platform: ${z.platform}
|
|
6
|
-
- Shell: ${E}
|
|
7
|
-
- Node.js: ${z.nodeVersion}`;if(q&&W){let K=V(z.projectRoot,"git rev-parse --abbrev-ref HEAD"),Y=V(z.projectRoot,"git status --short"),Z=V(z.projectRoot,"git log --oneline -n 3");if(K)N+=`
|
|
8
|
-
- Current branch: ${K}`;if(Y)N+=`
|
|
9
|
-
|
|
10
|
-
Working tree status:
|
|
11
|
-
${Y}`;if(Z)N+=`
|
|
12
|
-
|
|
13
|
-
Recent commits:
|
|
14
|
-
${Z}`}if(N+=`
|
|
15
|
-
|
|
16
|
-
When using file tools (read, write, edit), provide absolute paths based on: \`${z.workingDirectory}/\``,X.length>0)N+=`
|
|
17
|
-
|
|
18
|
-
Key project files at root for quick reference:
|
|
19
|
-
${X.join(`
|
|
20
|
-
`)}`;if(M){let K=V(z.projectRoot,"ls -1 | head -30");if(K)N+=`
|
|
21
|
-
|
|
22
|
-
Project root directory listing:
|
|
23
|
-
${K}`}return N}function O(B){let q=B,M=null;while(q!==H.dirname(q)){if(Q(H.join(q,".git")))return q;if(Q(H.join(q,".blade")))return q;if(Q(H.join(q,".claude")))return q;if(!M&&Q(H.join(q,"package.json")))M=q;q=H.dirname(q)}return M??B}function P(B,q){let M=F(B)?B:T(q||process.cwd(),B),z;try{z=L(M)}catch{z=M}$(z)}
|
|
24
|
-
export{G as Z,O as _,P as $};
|
package/dist/chunk-set7v1rf.js
DELETED
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{appendFileSync as Z,existsSync as _,mkdirSync as $,readdirSync as E,statSync as Y,unlinkSync as O}from"node:fs";import k from"node:os";import Q from"node:path";var R;((B)=>{B[B.DEBUG=0]="DEBUG";B[B.INFO=1]="INFO";B[B.WARN=2]="WARN";B[B.ERROR=3]="ERROR"})(R||={});var M=null,W=null,X=!1;function m(j){if(M!==j)M=j}async function I(){}function w(){if(X)return W;X=!0;try{let j=Q.join(k.homedir(),".blade","logs");if(!_(j))$(j,{recursive:!0,mode:493});if(Y(j).uid===0&&process.getuid&&process.getuid()!==0)return console.error(""),console.error("[FAIL] 权限错误:~/.blade/logs 目录属于 root 用户"),console.error(""),console.error("这通常是因为您曾经使用 sudo 运行过 blade。"),console.error(""),console.error("解决方法:"),console.error(" sudo chown -R $USER:$USER ~/.blade/"),console.error(""),console.error("然后重新运行 blade(不要使用 sudo)"),console.error(""),null;return z(j,30),W=j,j}catch(j){return console.error("[Logger] 无法创建日志目录:",j),null}}function z(j,q){try{let G=E(j),H=Date.now(),B=q*24*60*60*1000;for(let K of G){if(!K.startsWith("blade-")||!K.endsWith(".log")&&!K.endsWith(".jsonl"))continue;let T=Q.join(j,K);try{let U=Y(T);if(H-U.mtimeMs>B)O(T)}catch(U){}}}catch(G){}}function F(){let j=w();if(!j)return null;let q=M||"default";return Q.join(j,`blade-${q}.jsonl`)}function A(j,q,G){let H=F();if(!H)return;try{let B={timestamp:new Date().toISOString(),level:R[q],category:j,message:G};Z(H,JSON.stringify(B)+`
|
|
2
|
-
`)}catch(B){}}class J{static globalDebugConfig=null;enabled;minLevel;category;constructor(j={}){if(j.enabled!==void 0)this.enabled=j.enabled;else if(J.globalDebugConfig!==null)this.enabled=Boolean(J.globalDebugConfig);else this.enabled=!1;this.minLevel=j.minLevel??0,this.category=j.category??"General"}static setGlobalDebug(j){J.globalDebugConfig=j}static clearGlobalDebug(){J.globalDebugConfig=null}setEnabled(j){this.enabled=j}parseDebugFilter(j){if(!j)return{enabled:!1};if(j===!0||j==="true"||j==="1")return{enabled:!0};let q=String(j).trim();if(!q)return{enabled:!0};if(q.startsWith("!"))return{enabled:!0,filter:{mode:"exclude",categories:q.split(",").map((B)=>B.trim().replace(/^!/,"")).filter(Boolean)}};return{enabled:!0,filter:{mode:"include",categories:q.split(",").map((H)=>H.trim()).filter(Boolean)}}}shouldLogCategory(j){if(!j)return!0;let q=this.category.toLowerCase();if(j.mode==="include")return j.categories.some((G)=>q.includes(G.toLowerCase()));return!j.categories.some((G)=>q.includes(G.toLowerCase()))}shouldLogToConsole(j){if(J.globalDebugConfig!==null){let{enabled:q,filter:G}=this.parseDebugFilter(J.globalDebugConfig);if(!q)return!1;if(j<this.minLevel)return!1;return this.shouldLogCategory(G)}return this.enabled&&j>=this.minLevel}log(j,...q){let G=q.map((H)=>typeof H==="object"?JSON.stringify(H):String(H)).join(" ");if(A(this.category,j,G),this.shouldLogToConsole(j)){let H=R[j],B=`[${this.category}] [${H}]`;console.error(B,...q)}}debug(...j){this.log(0,...j)}info(...j){this.log(1,...j)}warn(...j){this.log(2,...j)}error(...j){this.log(3,...j)}}function V(j,q){return new J({...q,category:j})}var h=new J({category:"General"});
|
|
3
|
-
export{m as yb,I as zb,J as Ab,V as Bb,h as Cb};
|
package/dist/chunk-tdjwh8xv.js
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import{p as z,q as g,r as v,s as p}from"./chunk-g6hftss3.js";import{t as E}from"./chunk-k2h94jvh.js";import{v as S,w as h,x as c}from"./chunk-5mqvwzj8.js";import{G as w,I as F,J as y,L as x,M as C}from"./chunk-gjx50fr1.js";import"./chunk-rr5p05rj.js";import"./chunk-mxrre2n3.js";import"./chunk-cy8kd1cf.js";import"./chunk-68ctb04g.js";import"./chunk-x9zj0r7s.js";import"./chunk-mz6n4w13.js";import{Sa as O}from"./chunk-ktpzvmxg.js";import"./chunk-yddnm9n2.js";import"./chunk-yk91w5p2.js";import"./chunk-37rethcy.js";import{wb as H,xb as T}from"./chunk-7ycmx7c2.js";import"./chunk-set7v1rf.js";import"./chunk-j2ag7hh6.js";import bq from"yargs";import{hideBin as Uq}from"yargs/helpers";import{z as b}from"zod";import{z as Q}from"zod";var L=1,V=Q.object({event_version:Q.literal(L)}),i=V.extend({type:Q.literal("content_delta"),delta:Q.string()}),n=V.extend({type:Q.literal("thinking_delta"),delta:Q.string()}),r=V.extend({type:Q.literal("thinking"),content:Q.string()}),s=V.extend({type:Q.literal("stream_end")}),o=V.extend({type:Q.literal("content"),content:Q.string()}),a=V.extend({type:Q.literal("tool_start"),tool_name:Q.string(),summary:Q.string(),target:Q.string().optional(),tool_kind:Q.enum(["readonly","write","execute"]).optional()}),t=V.extend({type:Q.literal("tool_result"),tool_name:Q.string(),summary:Q.string(),target:Q.string().optional(),tool_kind:Q.enum(["readonly","write","execute"]).optional()}),e=V.extend({type:Q.literal("phase"),phase:Q.enum(["turn","searching","inspecting","target_hit","executing","completed"]),status:Q.enum(["ongoing","hit","done"]),message:Q.string(),turn:Q.number().optional(),tool_name:Q.string().optional(),target:Q.string().optional()}),qq=V.extend({type:Q.literal("tool_detail"),tool_name:Q.string(),detail:Q.string()}),Gq=V.extend({type:Q.literal("task_update"),tasks:Q.array(x)}),Qq=V.extend({type:Q.literal("token_usage"),input_tokens:Q.number(),output_tokens:Q.number(),total_tokens:Q.number(),max_context_tokens:Q.number()}),Xq=V.extend({type:Q.literal("compacting"),state:Q.enum(["started","completed"])}),Yq=V.extend({type:Q.literal("turn_limit"),turns_count:Q.number(),action:Q.literal("continue")}),Zq=V.extend({type:Q.literal("output"),content:Q.string(),exit_code:Q.number()}),$q=V.extend({type:Q.literal("error"),message:Q.string()}),Nq=Q.discriminatedUnion("type",[i,n,r,s,o,a,t,e,qq,Gq,Qq,Xq,Yq,Zq,$q]);function N(G,X){return{event_version:L,type:G,...X}}var Kq=b.enum(["text","jsonl"]),Aq=b.object({headless:b.boolean().optional(),message:b.string().optional(),_:b.array(b.union([b.string(),b.number()])).optional(),model:b.string().optional(),systemPrompt:b.string().optional(),appendSystemPrompt:b.string().optional(),maxTurns:b.number().int().refine((G)=>G===-1||G>0,{message:"must be -1 or a positive integer"}).optional(),permissionMode:b.nativeEnum(H).optional(),mcpConfig:b.array(b.string()).optional(),strictMcpConfig:b.boolean().optional(),sessionId:b.string().optional(),allowedTools:b.array(b.string()).optional(),disallowedTools:b.array(b.string()).optional(),continue:b.boolean().optional(),resume:b.union([b.string(),b.boolean()]).optional(),outputFormat:Kq.optional()});class d{openedThinking=!1;wroteAssistantContent=!1;markAssistantContent(){this.wroteAssistantContent=!0}setThinkingOpened(G){this.openedThinking=G}hasOpenThinking(){return this.openedThinking}completeStream(){let G={openedThinking:this.openedThinking,wroteAssistantContent:this.wroteAssistantContent};return this.openedThinking=!1,this.wroteAssistantContent=!1,G}}function Rq(G){return G.issues.map((X)=>`${X.path.join(".")||"options"}: ${X.message}`).join("; ")}function Vq(G){let X=Aq.safeParse(G);if(!X.success)throw Error(`Invalid headless options: ${Rq(X.error)}`);return X.data}function _q(G){return G.command("* [message]","Run full agent loop without Ink UI and print events to the terminal",(X)=>X.positional("message",{describe:"Message to process",type:"string"}).option("headless",{type:"boolean",describe:"Run full agent loop without Ink UI and print events to the terminal"}).option("model",{describe:"Model ID for this run",type:"string"}).option("system-prompt",{describe:"Replace the default system prompt",type:"string"}).option("append-system-prompt",{describe:"Append a system prompt to the default system prompt",type:"string"}).option("max-turns",{alias:["maxTurns"],describe:"Maximum conversation turns (-1: unlimited, N>0: limit to N turns)",type:"number"}).option("output-format",{alias:["outputFormat"],choices:["text","jsonl"],describe:"Headless output format",type:"string"}),async(X)=>{if(!X.headless)return;let Y=await Bq(X);process.exit(Y)})}function _(G,X=""){G.write(`${X}
|
|
2
|
-
`)}function Dq(G){return`[task] [${G.status}] ${G.subject}`}function Mq(){return{requestConfirmation:async(G)=>({approved:!0,reason:"headless-auto-approved",scope:"session"})}}function jq(G){if(!(G instanceof Error))return"Unknown error";let q=G.lastError??G;if(q.responseBody)try{let A=JSON.parse(q.responseBody)?.error?.message;if(A)return q.statusCode?`${A} (HTTP ${q.statusCode})`:A}catch{}let Z=G.message.match(/Last error:\s*(.+)$/);if(Z)return Z[1];return G.message}function fq(G){return G==="jsonl"?"jsonl":"text"}function W(G,X){let Y=(...q)=>{for(let Z of q){let U=X[Z];if(typeof U==="string"&&U.trim()!=="")return U}return};switch(G){case"Read":case"Edit":case"Write":case"UndoEdit":return Y("file_path");case"NotebookEdit":return Y("notebook_path");case"Grep":return Y("path","pattern");case"Glob":return Y("pattern");case"WebFetch":return Y("url");case"WebSearch":return Y("query");case"Bash":return Y("description","command");case"Task":return Y("description");case"LSP":return Y("filePath","operation");default:return}}function Pq(G,X,Y,q){let Z=new Set(["Glob","Grep","WebSearch","LS"]),U=new Set(["Read","WebFetch"]);if(new Set(["Edit","Write","NotebookEdit","Bash","LSP","UndoEdit"]).has(G)&&!q.targetLocked)return{phase:"target_hit",status:"hit",message:`Target locked: ${X}`,shouldLockTarget:!0};if(q.targetLocked)return{phase:"executing",status:"hit",message:Y?`Working within target: ${X}`:`Executing: ${X}`,shouldLockTarget:!1};if(Z.has(G))return{phase:"searching",status:"ongoing",message:`Still searching: ${X}`,shouldLockTarget:!1};if(U.has(G))return{phase:"inspecting",status:"ongoing",message:`Inspecting candidate: ${X}`,shouldLockTarget:!1};return{phase:"executing",status:q.targetLocked?"hit":"ongoing",message:`Executing: ${X}`,shouldLockTarget:!1}}function k(G,X){let Y=(q,Z)=>{G.stdout.write(`${JSON.stringify(N(q,Z))}
|
|
3
|
-
`)};return{contentDelta(q){if(X==="jsonl"){Y("content_delta",{delta:q});return}G.stdout.write(q)},thinkingDelta(q,Z){if(X==="jsonl")return Y("thinking_delta",{delta:q}),Z;if(!Z)G.stderr.write("[thinking] ");return G.stderr.write(q),!0},thinking(q){if(X==="jsonl"){Y("thinking",{content:q});return}_(G.stderr,`[thinking] ${q}`)},streamEnd(q,Z){if(X==="jsonl"){Y("stream_end",{});return}if(Z)G.stderr.write(`
|
|
4
|
-
`);if(q)G.stdout.write(`
|
|
5
|
-
`)},content(q){if(X==="jsonl"){Y("content",{content:q});return}_(G.stdout,q)},toolStart(q,Z,U,A){if(X==="jsonl"){Y("tool_start",{tool_name:q,summary:Z,target:U,tool_kind:A});return}_(G.stderr,`[tool:start] ${Z}`)},toolResult(q,Z,U,A){if(X==="jsonl"){Y("tool_result",{tool_name:q,summary:Z,target:U,tool_kind:A});return}_(G.stderr,`[tool:result] ${Z}`)},phase(q,Z,U,A={}){if(X==="jsonl"){Y("phase",{phase:q,status:Z,message:U,turn:A.turn,tool_name:A.toolName,target:A.target});return}_(G.stderr,`[phase:${q}] ${U}`)},toolDetail(q,Z){if(X==="jsonl"){Y("tool_detail",{tool_name:q,detail:Z});return}_(G.stderr,Z)},taskUpdate(q){if(X==="jsonl"){Y("task_update",{tasks:q});return}for(let Z of q)_(G.stderr,Dq(Z))},tokenUsage(q){if(X==="jsonl"){Y("token_usage",{input_tokens:q.inputTokens,output_tokens:q.outputTokens,total_tokens:q.totalTokens,max_context_tokens:q.maxContextTokens});return}_(G.stderr,`[tokens] in=${q.inputTokens} out=${q.outputTokens} total=${q.totalTokens} / ${q.maxContextTokens}`)},compacting(q){if(X==="jsonl"){Y("compacting",{state:q?"started":"completed"});return}_(G.stderr,q?"[context] compacting started":"[context] compacting completed")},turnLimit(q){if(X==="jsonl"){Y("turn_limit",{turns_count:q,action:"continue"});return}_(G.stderr,`[turn-limit] continuing after ${q} turns`)},output(q,Z=0){if(X==="jsonl"){Y("output",{content:q,exit_code:Z});return}_(Z===0?G.stdout:G.stderr,q)},error(q){if(X==="jsonl"){Y("error",{message:q});return}_(G.stderr,q)}}}async function Bq(G,X={stdout:process.stdout,stderr:process.stderr}){let Y="text",q=k(X,Y),Z=new d,U={targetLocked:!1},A;try{let K=Vq(G);Y=fq(K.outputFormat),q=k(X,Y),await z();let P=await g(K),D=await v(P);if(D.mode==="output"){if(D.content)q.output(D.content,D.exitCode??0);return D.exitCode??0}let J=K.permissionMode??"yolo",{sessionId:I,messages:u}=await p({sessionId:K.sessionId,continue:K.continue,resume:K.resume,fallbackSessionPrefix:"headless"}),m={messages:[...u],userId:"cli-user",sessionId:I,workspaceRoot:T(),permissionMode:J,confirmationHandler:Mq()};A=await w.create({sessionId:I,modelId:K.model,mcpConfig:K.mcpConfig,strictMcpConfig:K.strictMcpConfig});let l=await C.createWithRuntime(A,{sessionId:I,systemPrompt:K.systemPrompt,appendSystemPrompt:K.appendSystemPrompt,maxTurns:K.maxTurns,modelId:K.model,permissionMode:J,toolWhitelist:K.allowedTools,toolBlacklist:K.disallowedTools,mcpConfig:K.mcpConfig,strictMcpConfig:K.strictMcpConfig});if((await O(l.chatStream(D.content,m,{stream:!0,maxTurns:K.maxTurns,onTurnLimitReached:async(R)=>{return q.turnLimit(R.turnsCount),{continue:!0,reason:"headless-auto-continue"}}}),async(R)=>{switch(R.kind){case"content_delta":Z.markAssistantContent(),q.contentDelta(R.delta);break;case"thinking_delta":Z.setThinkingOpened(q.thinkingDelta(R.delta,Z.hasOpenThinking()));break;case"stream_end":{let $=Z.completeStream();q.streamEnd($.wroteAssistantContent,$.openedThinking);break}case"tool_start":{let $=R.toolCall;if(!("function"in $))break;if(["TaskCreate","TaskUpdate","TaskList"].includes($.function.name))break;try{let M=JSON.parse($.function.arguments),j=F($.function.name,M),f=W($.function.name,M),B=Pq($.function.name,j,f,U);if(B.shouldLockTarget)U.targetLocked=!0;q.phase(B.phase,B.status,B.message,{toolName:$.function.name,target:f}),q.toolStart($.function.name,j,f,R.toolKind)}catch{q.phase(U.targetLocked?"executing":"searching",U.targetLocked?"hit":"ongoing",U.targetLocked?`Working within target: ${$.function.name}`:`Still searching: ${$.function.name}`,{toolName:$.function.name}),q.toolStart($.function.name,$.function.name,void 0,R.toolKind)}break}case"tool_result":{let $=R.toolCall;if(!("function"in $))break;let M;try{let f=JSON.parse($.function.arguments);M=W($.function.name,f)}catch{M=void 0}let j=y($.function.name,R.result);if(q.toolResult($.function.name,j.summary,M,void 0),j.detail)q.toolDetail($.function.name,j.detail);break}case"token_usage":q.tokenUsage(R.usage);break;case"compaction":q.compacting(R.phase==="start");break;case"task_update":q.taskUpdate(R.tasks);break;case"subagent_spawned":case"subagent_completed":break;case"model_fallback":break;case"turn_start":if(R.turn===1)U.targetLocked=!1;q.phase("turn",U.targetLocked?"hit":"ongoing",`Turn ${R.turn} started`,{turn:R.turn});break;default:{let $=R}}})).metadata?.outputTruncated)q.error("[warning] 输出因达到 token 上限被截断,部分内容可能不完整。");return q.phase("completed","done","Headless run completed"),0}catch(K){if(Z.hasOpenThinking()&&Y==="text")X.stderr.write(`
|
|
6
|
-
`);return q.error(`Error: ${jq(K)}`),1}finally{await A?.dispose()}}async function vq(){if(!process.argv.slice(2).includes("--headless"))return!1;let{headless:Y,"output-format":q,"system-prompt":Z,"append-system-prompt":U,"max-turns":A,...K}=E,P=bq(Uq(process.argv)).scriptName("blade").strict(!1).options(K).middleware([S,h,c]);return _q(P),await P.parse(),!0}export{Bq as runHeadless,vq as handleHeadlessMode,Aq as HeadlessOptionsSchema};
|
package/dist/chunk-th432d0b.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as a,h as b,i as c,j as d,k as e}from"./chunk-qwfywxs2.js";import"./chunk-j2ag7hh6.js";export{b as setSkipUntilVersion,d as performUpgrade,c as getUpgradeCommand,e as checkVersionOnStartup,a as checkVersion};
|
package/dist/chunk-zh3ndtvg.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{rb as a}from"./chunk-37rethcy.js";import"./chunk-set7v1rf.js";import"./chunk-j2ag7hh6.js";export{a as createChatServiceAsync};
|