glab-agent 0.2.12 → 0.2.13

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "glab-agent",
3
- "version": "0.2.12",
3
+ "version": "0.2.13",
4
4
  "type": "module",
5
5
  "description": "Multi-agent GitLab To-Do watcher with YAML-defined agents, skills, and GitLab registry.",
6
6
  "license": "MIT",
@@ -396,6 +396,13 @@ export async function runWatcherCycle(
396
396
  const logger = dependencies.logger ?? console;
397
397
  const state = await dependencies.stateStore.load();
398
398
 
399
+ // When Feishu app client is configured, suppress group webhook notifications —
400
+ // personal Feishu cards already cover the full lifecycle (accepted/running/completed/failed).
401
+ // Mutate a local copy so the original config is untouched.
402
+ if (dependencies.feishuClient && config.webhookUrl) {
403
+ config = { ...config, webhookUrl: undefined };
404
+ }
405
+
399
406
  if (state.activeRun && isPidAlive(state.activeRun.pid) && state.activeRun.pid !== pid) {
400
407
  logger.info(`Watcher is busy with issue #${state.activeRun.issueIid}.`);
401
408
  await updateAgentUserStatus(dependencies, "busy", `#${state.activeRun.issueIid}`);
@@ -766,6 +773,11 @@ export async function runConcurrentWatcherCycle(
766
773
  const state = await dependencies.stateStore.load();
767
774
  const concurrency = config.agentDefinition?.concurrency ?? 1;
768
775
 
776
+ // Suppress group webhook when Feishu personal cards are active
777
+ if (dependencies.feishuClient && config.webhookUrl) {
778
+ config = { ...config, webhookUrl: undefined };
779
+ }
780
+
769
781
  // 1. Collect finished tasks
770
782
  for (const [issueIid, spawned] of spawnedRuns) {
771
783
  const result = await spawned.run.poll();