fileContent = sharedState.data?.[filename];
    return fileContent ?? &quot;&quot;;
  }

  // execAsync: make the LLM call with the prepared file content
  public async execAsync(fileContent: string): Promise&lt;string&gt; {
    if (!fileContent) {
      throw new Error(&quot;Empty file content!&quot;);
    }
    const prompt = `Summarize this text in ~10 words:\n${fileContent}`;
    const summary = await callLLM(prompt); // might fail
    return summary;
  }

  // execFallbackAsync: provide a default summa