speccore 8.3.167 → 8.3.169

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.
@@ -2,16 +2,19 @@
2
2
  * AgentAdapter — 子 Agent 统一适配层
3
3
  *
4
4
  * v8.3.160+: 实现子 Agent 隔离,解决上下文漂移问题。
5
+ * v8.3.169+: 真正集成 Qoder Agent SDK,支持多工具动态适配:
6
+ * - Qoder: 通过 @qoder-ai/qoder-agent-sdk 直接调度子 Agent
7
+ * - Cursor/Windsurf/Claude/CodeBuddy/Trae: Headless 模式(文本标记)
8
+ * - 所有工具默认兜底 Headless
9
+ *
5
10
  * 每个 Pipeline 步骤可以指定 subagent,由适配层负责:
6
11
  * 1. 准备该 subagent 所需的紧凑上下文
7
12
  * 2. 控制上下文大小(Token 预算)
8
- * 3. 输出子 Agent 激活标记和指令
9
- *
10
- * 适配模式:
11
- * - Headless: 基于文件/状态机模拟子 Agent(默认,无需 SDK)
12
- * - QoderSdk: 通过 Qoder SDK API 创建独立子 Agent(预留接口)
13
+ * 3. 输出子 Agent 激活标记和指令(Headless)
14
+ * 4. 或直接通过 SDK 调度子 Agent 执行(Qoder SDK)
13
15
  */
14
16
  import { ContextSnapshot } from './pipeline-engine';
17
+ import { type HostAiTool } from './ask-host-ai';
15
18
  export interface AgentContext {
16
19
  /** 子 Agent 名称 */
17
20
  subagent: string;
@@ -44,6 +47,17 @@ export interface SubagentConfig {
44
47
  /** 关联技能文件路径 */
45
48
  skills: string[];
46
49
  }
50
+ export type AgentAdapterMode = 'headless' | 'qoder-sdk' | 'cursor-sdk' | 'windsurf-sdk' | 'claude-sdk' | 'codebuddy-sdk';
51
+ export interface SubagentDispatchResult {
52
+ /** 是否成功执行 */
53
+ success: boolean;
54
+ /** Agent 的文本回复 */
55
+ content?: string;
56
+ /** 被修改/创建的文件路径列表 */
57
+ filesChanged?: string[];
58
+ /** 错误信息 */
59
+ error?: string;
60
+ }
47
61
  export interface AgentAdapter {
48
62
  /** 注册子 Agent 配置 */
49
63
  registerSubagent(name: string, config: SubagentConfig): void;
@@ -54,12 +68,17 @@ export interface AgentAdapter {
54
68
  /** 构建子 Agent 激活标记和指令 */
55
69
  buildActivationPrompt(ctx: AgentContext, nextPrompt: string): string;
56
70
  /** 获取支持的适配模式 */
57
- getMode(): 'headless' | 'qoder-sdk';
71
+ getMode(): AgentAdapterMode;
72
+ /** v8.3.169+: 直接调度子 Agent 执行任务(SDK 模式)
73
+ * 返回 null 表示当前适配器不支持直接调度,需由外层 AI 接管 */
74
+ dispatchSubagent?(ctx: AgentContext, taskPrompt: string): Promise<SubagentDispatchResult | null>;
58
75
  }
59
76
  export declare class HeadlessAdapter implements AgentAdapter {
60
77
  private registry;
61
78
  constructor();
62
- getMode(): 'headless' | 'qoder-sdk';
79
+ getMode(): AgentAdapterMode;
80
+ /** v8.3.169+: Headless 模式不支持直接调度,返回 null 由外层 AI 接管 */
81
+ dispatchSubagent(_ctx: AgentContext, _taskPrompt: string): Promise<SubagentDispatchResult | null>;
63
82
  registerSubagent(name: string, config: SubagentConfig): void;
64
83
  getSubagentConfig(name: string): SubagentConfig | undefined;
65
84
  /** 准备子 Agent 的紧凑上下文 */
@@ -69,13 +88,33 @@ export declare class HeadlessAdapter implements AgentAdapter {
69
88
  }
70
89
  export declare class QoderSdkAdapter implements AgentAdapter {
71
90
  private registry;
91
+ private sdkModule;
72
92
  constructor();
73
- getMode(): 'headless' | 'qoder-sdk';
93
+ getMode(): AgentAdapterMode;
74
94
  registerSubagent(name: string, config: SubagentConfig): void;
75
95
  getSubagentConfig(name: string): SubagentConfig | undefined;
96
+ /** 上下文准备:回退到 Headless(Prompt 构建阶段统一使用) */
76
97
  prepareContext(ctx: AgentContext): Promise<string>;
98
+ /** 激活标记:回退到 Headless(SDK 模式下也输出标记作为备用) */
77
99
  buildActivationPrompt(ctx: AgentContext, nextPrompt: string): string;
100
+ /** v8.3.169+: 通过 Qoder Agent SDK 直接调度子 Agent */
101
+ dispatchSubagent(ctx: AgentContext, taskPrompt: string): Promise<SubagentDispatchResult | null>;
78
102
  }
79
- export declare function createAgentAdapter(mode?: 'headless' | 'qoder-sdk'): AgentAdapter;
103
+ /** 判断当前工具是否支持 SDK 级子 Agent 调度 */
104
+ export declare function isSdkDispatchSupported(tool?: HostAiTool): boolean;
105
+ /** 判断当前环境是否支持直接子 Agent 调度(SDK 或 Headless) */
106
+ export declare function isSubagentDispatchSupported(): boolean;
107
+ /**
108
+ * 调度子 Agent 执行任务
109
+ *
110
+ * - Qoder 环境:通过 @qoder-ai/qoder-agent-sdk 直接调用
111
+ * - 其他环境:返回 null(由外层 AI 通过 [SPECCORE_SUBAGENT] 标记接管)
112
+ */
113
+ export declare function dispatchSubagent(ctx: AgentContext, taskPrompt: string): Promise<SubagentDispatchResult | null>;
114
+ /**
115
+ * 创建适配器
116
+ * v8.3.169+: 根据检测到的宿主工具自动选择适配器
117
+ */
118
+ export declare function createAgentAdapter(mode?: AgentAdapterMode): AgentAdapter;
80
119
  export declare const defaultAdapter: HeadlessAdapter;
81
120
  //# sourceMappingURL=agent-adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-adapter.d.ts","sourceRoot":"","sources":["../../src/core/agent-adapter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAIpD,MAAM,WAAW,YAAY;IAC3B,iBAAiB;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU;IACV,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS;IACT,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY;IACZ,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,oBAAoB;IACpB,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc;IACd,WAAW,EAAE,MAAM,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC;IACxE,aAAa;IACb,GAAG,EAAE,MAAM,CAAC;CACb;AAGD,MAAM,WAAW,cAAc;IAC7B,kBAAkB;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc;IACd,kBAAkB,EAAE,MAAM,GAAG,aAAa,GAAG,eAAe,GAAG,eAAe,CAAC;IAC/E,kBAAkB;IAClB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,eAAe;IACf,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAGD,MAAM,WAAW,YAAY;IAC3B,mBAAmB;IACnB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7D,wBAAwB;IACxB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAC;IAC5D,yBAAyB;IACzB,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,wBAAwB;IACxB,qBAAqB,CAAC,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;IACrE,gBAAgB;IAChB,OAAO,IAAI,UAAU,GAAG,WAAW,CAAC;CACrC;AA0KD,qBAAa,eAAgB,YAAW,YAAY;IAClD,OAAO,CAAC,QAAQ,CAA8B;;IAY9C,OAAO,IAAI,UAAU,GAAG,WAAW;IAInC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI;IAK5D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAI3D,uBAAuB;IACjB,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAyJxD,qBAAqB;IACrB,qBAAqB,CAAC,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;CAgBrE;AAMD,qBAAa,eAAgB,YAAW,YAAY;IAClD,OAAO,CAAC,QAAQ,CAA8B;;IAY9C,OAAO,IAAI,UAAU,GAAG,WAAW;IAInC,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,cAAc,GAAG,IAAI;IAI5D,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAIrD,cAAc,CAAC,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;IAQxD,qBAAqB,CAAC,GAAG,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM;CAMrE;AAMD,wBAAgB,kBAAkB,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,WAAW,GAAG,YAAY,CAkBhF;AAGD,eAAO,MAAM,cAAc,iBAAwB,CAAC"}
1
+ {"version":3,"file":"agent-adapter.d.ts","sourceRoot":"","sources":["../../src/core/agent-adapter.ts"],"names":[],"mappings":"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"}
@@ -3,19 +3,58 @@
3
3
  * AgentAdapter — 子 Agent 统一适配层
4
4
  *
5
5
  * v8.3.160+: 实现子 Agent 隔离,解决上下文漂移问题。
6
+ * v8.3.169+: 真正集成 Qoder Agent SDK,支持多工具动态适配:
7
+ * - Qoder: 通过 @qoder-ai/qoder-agent-sdk 直接调度子 Agent
8
+ * - Cursor/Windsurf/Claude/CodeBuddy/Trae: Headless 模式(文本标记)
9
+ * - 所有工具默认兜底 Headless
10
+ *
6
11
  * 每个 Pipeline 步骤可以指定 subagent,由适配层负责:
7
12
  * 1. 准备该 subagent 所需的紧凑上下文
8
13
  * 2. 控制上下文大小(Token 预算)
9
- * 3. 输出子 Agent 激活标记和指令
10
- *
11
- * 适配模式:
12
- * - Headless: 基于文件/状态机模拟子 Agent(默认,无需 SDK)
13
- * - QoderSdk: 通过 Qoder SDK API 创建独立子 Agent(预留接口)
14
+ * 3. 输出子 Agent 激活标记和指令(Headless)
15
+ * 4. 或直接通过 SDK 调度子 Agent 执行(Qoder SDK)
14
16
  */
17
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
18
+ if (k2 === undefined) k2 = k;
19
+ var desc = Object.getOwnPropertyDescriptor(m, k);
20
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
21
+ desc = { enumerable: true, get: function() { return m[k]; } };
22
+ }
23
+ Object.defineProperty(o, k2, desc);
24
+ }) : (function(o, m, k, k2) {
25
+ if (k2 === undefined) k2 = k;
26
+ o[k2] = m[k];
27
+ }));
28
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
29
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
30
+ }) : function(o, v) {
31
+ o["default"] = v;
32
+ });
33
+ var __importStar = (this && this.__importStar) || (function () {
34
+ var ownKeys = function(o) {
35
+ ownKeys = Object.getOwnPropertyNames || function (o) {
36
+ var ar = [];
37
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
38
+ return ar;
39
+ };
40
+ return ownKeys(o);
41
+ };
42
+ return function (mod) {
43
+ if (mod && mod.__esModule) return mod;
44
+ var result = {};
45
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
46
+ __setModuleDefault(result, mod);
47
+ return result;
48
+ };
49
+ })();
15
50
  Object.defineProperty(exports, "__esModule", { value: true });
16
51
  exports.defaultAdapter = exports.QoderSdkAdapter = exports.HeadlessAdapter = void 0;
52
+ exports.isSdkDispatchSupported = isSdkDispatchSupported;
53
+ exports.isSubagentDispatchSupported = isSubagentDispatchSupported;
54
+ exports.dispatchSubagent = dispatchSubagent;
17
55
  exports.createAgentAdapter = createAgentAdapter;
18
56
  const logger_1 = require("../utils/logger");
57
+ const ask_host_ai_1 = require("./ask-host-ai");
19
58
  // ── 全局子 Agent 注册表 ──
20
59
  const subagentRegistry = new Map();
21
60
  // ── 默认子 Agent 配置(以 _INDEX.md 角色定义为准) ──
@@ -194,6 +233,10 @@ class HeadlessAdapter {
194
233
  getMode() {
195
234
  return 'headless';
196
235
  }
236
+ /** v8.3.169+: Headless 模式不支持直接调度,返回 null 由外层 AI 接管 */
237
+ async dispatchSubagent(_ctx, _taskPrompt) {
238
+ return null;
239
+ }
197
240
  registerSubagent(name, config) {
198
241
  this.registry.set(name, config);
199
242
  logger_1.logger.debug(`[AgentAdapter] 注册子 Agent: ${name}`);
@@ -363,11 +406,34 @@ class HeadlessAdapter {
363
406
  }
364
407
  exports.HeadlessAdapter = HeadlessAdapter;
365
408
  // ═══════════════════════════════════════════════════════════
366
- // QoderSdkAdapter — Qoder SDK 深度集成(预留接口)
409
+ // QoderSdkAdapter — Qoder Agent SDK 深度集成(v8.3.169+)
367
410
  // ═══════════════════════════════════════════════════════════
411
+ /** SpecCore subagent → Qoder AgentDefinition 的映射 */
412
+ function buildQoderAgentDefinition(config) {
413
+ return {
414
+ description: config.description,
415
+ prompt: config.systemPrompt,
416
+ tools: ['Read', 'Write', 'Edit', 'Glob', 'Grep', 'Bash'],
417
+ maxTurns: 30,
418
+ permissionMode: 'acceptEdits',
419
+ };
420
+ }
421
+ /** 内置 subagent 名称映射(优先使用 Qoder 内置 Agent) */
422
+ function mapToQoderAgentName(subagent) {
423
+ const builtinMap = {
424
+ 'general-purpose': 'general-purpose',
425
+ 'Explore': 'Explore',
426
+ 'Plan': 'Plan',
427
+ };
428
+ // 如果 SpecCore subagent 名与 Qoder 内置 Agent 匹配,直接返回
429
+ if (builtinMap[subagent])
430
+ return builtinMap[subagent];
431
+ // 否则使用自定义 Agent(通过 agents 选项注册)
432
+ return undefined;
433
+ }
368
434
  class QoderSdkAdapter {
369
- // private sdkClient: any; // Qoder SDK 客户端(运行时动态加载)
370
435
  constructor() {
436
+ this.sdkModule = null;
371
437
  this.registry = new Map(subagentRegistry);
372
438
  for (const config of DEFAULT_SUBAGENTS) {
373
439
  if (!this.registry.has(config.name)) {
@@ -384,42 +450,173 @@ class QoderSdkAdapter {
384
450
  getSubagentConfig(name) {
385
451
  return this.registry.get(name);
386
452
  }
453
+ /** 上下文准备:回退到 Headless(Prompt 构建阶段统一使用) */
387
454
  async prepareContext(ctx) {
388
- // TODO: 通过 Qoder SDK 创建子 Agent,传递 systemPrompt 和上下文
389
- // 当前回退到 Headless 实现
390
- logger_1.logger.warn('[QoderSdkAdapter] SDK 未初始化,回退到 Headless 模式');
391
455
  const headless = new HeadlessAdapter();
392
456
  return headless.prepareContext(ctx);
393
457
  }
458
+ /** 激活标记:回退到 Headless(SDK 模式下也输出标记作为备用) */
394
459
  buildActivationPrompt(ctx, nextPrompt) {
395
- // TODO: 调用 Qoder SDK 创建子 Agent 并触发执行
396
- // 当前回退到 Headless 实现
397
460
  const headless = new HeadlessAdapter();
398
461
  return headless.buildActivationPrompt(ctx, nextPrompt);
399
462
  }
463
+ /** v8.3.169+: 通过 Qoder Agent SDK 直接调度子 Agent */
464
+ async dispatchSubagent(ctx, taskPrompt) {
465
+ try {
466
+ // 1. 动态加载 SDK(optional dependency)
467
+ if (!this.sdkModule) {
468
+ try {
469
+ this.sdkModule = await Promise.resolve().then(() => __importStar(require('@qoder-ai/qoder-agent-sdk')));
470
+ logger_1.logger.info('[QoderSdkAdapter] SDK 加载成功');
471
+ }
472
+ catch (sdkErr) {
473
+ logger_1.logger.warn(`[QoderSdkAdapter] SDK 加载失败: ${sdkErr.message},回退到 Headless`);
474
+ return null;
475
+ }
476
+ }
477
+ const { query, accessTokenFromEnv } = this.sdkModule;
478
+ if (!query) {
479
+ logger_1.logger.warn('[QoderSdkAdapter] SDK 不可用(缺少 query 函数),回退到 Headless');
480
+ return null;
481
+ }
482
+ const config = this.registry.get(ctx.subagent);
483
+ // 2. 构建自定义 agents 定义
484
+ const customAgents = {};
485
+ if (config) {
486
+ customAgents[ctx.subagent] = buildQoderAgentDefinition(config);
487
+ }
488
+ // 3. 确定使用的 agent 名称
489
+ const qoderAgentName = mapToQoderAgentName(ctx.subagent) || ctx.subagent;
490
+ // 4. 构建 options
491
+ const options = {
492
+ auth: accessTokenFromEnv ? accessTokenFromEnv() : undefined,
493
+ cwd: ctx.cwd,
494
+ allowedTools: ['Read', 'Write', 'Edit', 'Glob', 'Grep', 'Bash', 'Agent'],
495
+ permissionMode: 'acceptEdits',
496
+ };
497
+ // 如果有自定义 agent 定义,注入 agents
498
+ if (Object.keys(customAgents).length > 0) {
499
+ options.agents = customAgents;
500
+ }
501
+ // 如果映射到内置 agent,使用 agent 选项
502
+ if (mapToQoderAgentName(ctx.subagent)) {
503
+ options.agent = qoderAgentName;
504
+ }
505
+ logger_1.logger.info(`[QoderSdkAdapter] 调度子 Agent: ${ctx.subagent} (Qoder agent: ${qoderAgentName})`);
506
+ // 5. 调用 SDK query()
507
+ const stream = query({ prompt: taskPrompt, options });
508
+ // 6. 消费消息流,收集结果
509
+ let content = '';
510
+ const filesChanged = [];
511
+ let error;
512
+ for await (const message of stream) {
513
+ if (message.type === 'assistant') {
514
+ for (const block of message.message?.content || []) {
515
+ if (block.type === 'text') {
516
+ content += block.text;
517
+ }
518
+ else if (block.type === 'tool_use') {
519
+ logger_1.logger.debug(`[QoderSdkAdapter] 工具调用: ${block.name}`);
520
+ if (block.name === 'Write' || block.name === 'Edit') {
521
+ const path = block.input?.path || block.input?.file_path;
522
+ if (path && !filesChanged.includes(path)) {
523
+ filesChanged.push(path);
524
+ }
525
+ }
526
+ }
527
+ }
528
+ }
529
+ else if (message.type === 'result') {
530
+ if (message.subtype === 'error') {
531
+ error = message.result?.message || '子 Agent 执行出错';
532
+ }
533
+ logger_1.logger.info(`[QoderSdkAdapter] 子 Agent ${ctx.subagent} 执行完成: ${message.subtype}`);
534
+ }
535
+ }
536
+ return {
537
+ success: !error,
538
+ content: content || undefined,
539
+ filesChanged: filesChanged.length > 0 ? filesChanged : undefined,
540
+ error,
541
+ };
542
+ }
543
+ catch (e) {
544
+ logger_1.logger.warn(`[QoderSdkAdapter] 调度失败: ${e.message},回退到 Headless`);
545
+ return null;
546
+ }
547
+ }
400
548
  }
401
549
  exports.QoderSdkAdapter = QoderSdkAdapter;
402
550
  // ═══════════════════════════════════════════════════════════
551
+ // 工具能力检测
552
+ // ═══════════════════════════════════════════════════════════
553
+ /** 判断当前工具是否支持 SDK 级子 Agent 调度 */
554
+ function isSdkDispatchSupported(tool) {
555
+ const t = tool || (0, ask_host_ai_1.detectHostAi)();
556
+ return t === 'qoder';
557
+ }
558
+ /** 判断当前环境是否支持直接子 Agent 调度(SDK 或 Headless) */
559
+ function isSubagentDispatchSupported() {
560
+ return true; // Headless 始终支持(通过标记模式)
561
+ }
562
+ // ═══════════════════════════════════════════════════════════
563
+ // 统一调度入口(v8.3.169+)
564
+ // ═══════════════════════════════════════════════════════════
565
+ /**
566
+ * 调度子 Agent 执行任务
567
+ *
568
+ * - Qoder 环境:通过 @qoder-ai/qoder-agent-sdk 直接调用
569
+ * - 其他环境:返回 null(由外层 AI 通过 [SPECCORE_SUBAGENT] 标记接管)
570
+ */
571
+ async function dispatchSubagent(ctx, taskPrompt) {
572
+ const tool = (0, ask_host_ai_1.detectHostAi)();
573
+ // Qoder 环境:尝试 SDK 调度
574
+ if (tool === 'qoder') {
575
+ const adapter = new QoderSdkAdapter();
576
+ const result = await adapter.dispatchSubagent(ctx, taskPrompt);
577
+ if (result)
578
+ return result;
579
+ }
580
+ // 其他环境:Headless 模式,返回 null 让外层 AI 接管
581
+ logger_1.logger.debug(`[dispatchSubagent] 工具 ${tool} 不支持 SDK 直接调度,使用 Headless 模式`);
582
+ return null;
583
+ }
584
+ // ═══════════════════════════════════════════════════════════
403
585
  // 工厂函数
404
586
  // ═══════════════════════════════════════════════════════════
587
+ /**
588
+ * 创建适配器
589
+ * v8.3.169+: 根据检测到的宿主工具自动选择适配器
590
+ */
405
591
  function createAgentAdapter(mode) {
406
592
  const envMode = process.env.SPECCORE_AGENT_MODE;
407
- const effectiveMode = mode || envMode || 'headless';
408
- if (effectiveMode === 'qoder-sdk') {
409
- // 检查 Qoder SDK 是否可用
410
- try {
411
- // require('@qoder/sdk'); // 运行时检查
412
- logger_1.logger.info('[AgentAdapter] 使用 Qoder SDK 模式');
593
+ const effectiveMode = mode || envMode;
594
+ // 如果显式指定了模式,按模式创建
595
+ if (effectiveMode) {
596
+ if (effectiveMode === 'qoder-sdk') {
597
+ logger_1.logger.info('[AgentAdapter] 使用 Qoder SDK 模式(显式指定)');
413
598
  return new QoderSdkAdapter();
414
599
  }
415
- catch {
416
- logger_1.logger.warn('[AgentAdapter] Qoder SDK 不可用,回退到 Headless 模式');
600
+ logger_1.logger.debug(`[AgentAdapter] 使用 Headless 模式(显式指定: ${effectiveMode})`);
601
+ return new HeadlessAdapter();
602
+ }
603
+ // 自动检测:根据宿主工具选择
604
+ const tool = (0, ask_host_ai_1.detectHostAi)();
605
+ switch (tool) {
606
+ case 'qoder':
607
+ logger_1.logger.info('[AgentAdapter] 自动检测到 Qoder 环境,使用 QoderSdkAdapter');
608
+ return new QoderSdkAdapter();
609
+ case 'workbuddy':
610
+ case 'trae':
611
+ case 'cursor':
612
+ case 'windsurf':
613
+ case 'claude':
614
+ case 'codebuddy':
615
+ default:
616
+ logger_1.logger.debug(`[AgentAdapter] 工具 ${tool} 使用 Headless 模式`);
417
617
  return new HeadlessAdapter();
418
- }
419
618
  }
420
- logger_1.logger.debug('[AgentAdapter] 使用 Headless 模式');
421
- return new HeadlessAdapter();
422
619
  }
423
- // 默认导出 HeadlessAdapter(向后兼容)
620
+ // 默认导出 HeadlessAdapter(向后兼容:prepareContext 阶段所有工具通用)
424
621
  exports.defaultAdapter = new HeadlessAdapter();
425
622
  //# sourceMappingURL=agent-adapter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agent-adapter.js","sourceRoot":"","sources":["../../src/core/agent-adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agent-adapter.js","sourceRoot":"","sources":["../../src/core/agent-adapter.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,9 @@
1
1
  /**
2
- * ask-host-ai — 宿主 AI 层(WorkBuddy / TRAE / Qoder)
2
+ * ask-host-ai — 宿主 AI 层(WorkBuddy / TRAE / Qoder / Cursor / Windsurf / Claude / CodeBuddy)
3
3
  * 通过文件协议与用户当前使用的 AI 工具通信
4
4
  *
5
+ * v8.3.169+: 扩展多工具检测与适配支持
6
+ *
5
7
  * 协议:
6
8
  * 1. CLI 写入 ~/.speccore/.ai-request.json
7
9
  * 2. 宿主 AI 检测文件变更,读取后处理
@@ -10,8 +12,9 @@
10
12
  */
11
13
  /**
12
14
  * 检测当前运行环境中的 AI 工具
15
+ * v8.3.169+: 扩展支持 cursor / windsurf / claude / codebuddy
13
16
  */
14
- export type HostAiTool = 'workbuddy' | 'trae' | 'qoder' | 'none';
17
+ export type HostAiTool = 'workbuddy' | 'trae' | 'qoder' | 'cursor' | 'windsurf' | 'claude' | 'codebuddy' | 'none';
15
18
  /** 判断当前是否在 AI 工具上下文(WorkBuddy/TRAE/Qoder 调用,非纯终端) */
16
19
  export declare function isAiContext(): boolean;
17
20
  export declare function detectHostAi(): HostAiTool;
@@ -1 +1 @@
1
- {"version":3,"file":"ask-host-ai.d.ts","sourceRoot":"","sources":["../../src/core/ask-host-ai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAmCH;;GAEG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AAEjE,qDAAqD;AACrD,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAED,wBAAgB,YAAY,IAAI,UAAU,CAqBzC;AAMD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,EAC/B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAChC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CA+CrB;AAUD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAGnG;AAMD,wBAAsB,SAAS,CAC7B,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,EAC/B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAChC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAoCrB"}
1
+ {"version":3,"file":"ask-host-ai.d.ts","sourceRoot":"","sources":["../../src/core/ask-host-ai.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAmCH;;;GAGG;AACH,MAAM,MAAM,UAAU,GAClB,WAAW,GACX,MAAM,GACN,OAAO,GACP,QAAQ,GACR,UAAU,GACV,QAAQ,GACR,WAAW,GACX,MAAM,CAAC;AAEX,qDAAqD;AACrD,wBAAgB,WAAW,IAAI,OAAO,CAErC;AAaD,wBAAgB,YAAY,IAAI,UAAU,CA2BzC;AAMD;;;;;;GAMG;AACH,wBAAsB,SAAS,CAC7B,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,EAC/B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAChC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CA+CrB;AAUD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAGnG;AAMD,wBAAsB,SAAS,CAC7B,IAAI,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,EAC/B,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAM,GAChC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAsCrB"}
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  /**
3
- * ask-host-ai — 宿主 AI 层(WorkBuddy / TRAE / Qoder)
3
+ * ask-host-ai — 宿主 AI 层(WorkBuddy / TRAE / Qoder / Cursor / Windsurf / Claude / CodeBuddy)
4
4
  * 通过文件协议与用户当前使用的 AI 工具通信
5
5
  *
6
+ * v8.3.169+: 扩展多工具检测与适配支持
7
+ *
6
8
  * 协议:
7
9
  * 1. CLI 写入 ~/.speccore/.ai-request.json
8
10
  * 2. 宿主 AI 检测文件变更,读取后处理
@@ -27,6 +29,16 @@ const MAX_WAIT = 15000; // 15s timeout
27
29
  function isAiContext() {
28
30
  return detectHostAi() !== 'none' || !process.stdout.isTTY;
29
31
  }
32
+ /** 目录名到工具名的映射 */
33
+ const DIR_TO_TOOL = {
34
+ '.trae-cn': 'trae',
35
+ '.trae': 'trae',
36
+ '.qoder': 'qoder',
37
+ '.codebuddy': 'codebuddy',
38
+ '.cursor': 'cursor',
39
+ '.claude': 'claude',
40
+ '.windsurf': 'windsurf',
41
+ };
30
42
  function detectHostAi() {
31
43
  // WorkBuddy: 检查会话文件
32
44
  if (process.env.WORKBUDDY_SESSION || process.env.CLAUDE_CODE_SESSION) {
@@ -36,13 +48,18 @@ function detectHostAi() {
36
48
  if (process.env.TRAE_SESSION || process.env.TENCENT_AI_CODING) {
37
49
  return 'trae';
38
50
  }
39
- // TRAE/Qoder: 检查工具目录(兜底,回溯到项目根目录)
51
+ // Qoder
52
+ if (process.env.QODER_SESSION) {
53
+ return 'qoder';
54
+ }
55
+ // v8.3.169+: 检查工具目录(兜底,回溯到项目根目录)
40
56
  const { pathExistsSync } = require('fs-extra');
41
57
  let searchDir = process.cwd();
42
58
  for (let i = 0; i < 5; i++) {
43
- for (const dir of ['.trae-cn', '.trae', '.qoder', '.codebuddy', '.cursor', '.claude', '.windsurf']) {
44
- if (pathExistsSync((0, path_1.join)(searchDir, dir)))
45
- return 'trae';
59
+ for (const dir of Object.keys(DIR_TO_TOOL)) {
60
+ if (pathExistsSync((0, path_1.join)(searchDir, dir))) {
61
+ return DIR_TO_TOOL[dir];
62
+ }
46
63
  }
47
64
  const parent = (0, path_1.join)(searchDir, '..');
48
65
  if (parent === searchDir)
@@ -169,8 +186,10 @@ async function tryHostAi(type, input, context = {}) {
169
186
  return fileResult;
170
187
  emitWorkBuddySignal(type, input, context);
171
188
  }
172
- // TRAE/Qoder: 仅文件协议
173
- if (tool === 'trae' || tool === 'qoder') {
189
+ // v8.3.169+: 支持更多工具的宿主 AI 通信
190
+ // 这些工具统一使用文件协议(WorkBuddy 额外支持信号标记)
191
+ const fileProtocolTools = ['trae', 'qoder', 'cursor', 'windsurf', 'claude', 'codebuddy'];
192
+ if (fileProtocolTools.includes(tool)) {
174
193
  return askHostAi(type, input, context);
175
194
  }
176
195
  return null;
@@ -1 +1 @@
1
- {"version":3,"file":"ask-host-ai.js","sourceRoot":"","sources":["../../src/core/ask-host-ai.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-host-ai.js","sourceRoot":"","sources":["../../src/core/ask-host-ai.ts"],"names":[],"mappings":"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"}