@docyrus/docyrus 0.0.27 → 0.0.28

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": "@docyrus/docyrus",
3
- "version": "0.0.27",
3
+ "version": "0.0.28",
4
4
  "private": false,
5
5
  "description": "Docyrus API CLI",
6
6
  "main": "./main.js",
package/server-loader.js CHANGED
@@ -693,7 +693,7 @@ var init_dist = __esm({
693
693
  var import_node_fs = require("node:fs");
694
694
  var import_node_url = require("node:url");
695
695
  var import_node_path4 = require("node:path");
696
- var import_picocolors = __toESM(require_picocolors());
696
+ var import_picocolors2 = __toESM(require_picocolors());
697
697
 
698
698
  // src/agent/envStore.ts
699
699
  var import_promises = require("node:fs/promises");
@@ -5526,6 +5526,31 @@ function parseServerLoaderRequest(payload) {
5526
5526
  return JSON.parse(payload);
5527
5527
  }
5528
5528
 
5529
+ // src/services/spinner.ts
5530
+ var import_picocolors = __toESM(require_picocolors());
5531
+ var SPINNER_FRAMES = ["\u280B", "\u2819", "\u2839", "\u2838", "\u283C", "\u2834", "\u2826", "\u2827", "\u2807", "\u280F"];
5532
+ var SPINNER_INTERVAL_MS = 80;
5533
+ function createSpinner(message) {
5534
+ let frameIndex = 0;
5535
+ let currentMessage = message;
5536
+ const render = () => {
5537
+ const frame = import_picocolors.default.cyan(SPINNER_FRAMES[frameIndex]);
5538
+ process.stderr.write(`\r ${frame} ${import_picocolors.default.dim(currentMessage)}`);
5539
+ frameIndex = (frameIndex + 1) % SPINNER_FRAMES.length;
5540
+ };
5541
+ render();
5542
+ const interval = setInterval(render, SPINNER_INTERVAL_MS);
5543
+ return {
5544
+ update(newMessage) {
5545
+ currentMessage = newMessage;
5546
+ },
5547
+ stop() {
5548
+ clearInterval(interval);
5549
+ process.stderr.write(`\r${" ".repeat(currentMessage.length + 10)}\r`);
5550
+ }
5551
+ };
5552
+ }
5553
+
5529
5554
  // src/server/server-loader.ts
5530
5555
  function readRequiredEnv(name) {
5531
5556
  const value = process.env[name];
@@ -5624,8 +5649,8 @@ function resolveRequestedModel(params) {
5624
5649
  function renderStartupSplash(version) {
5625
5650
  process.stderr.write(
5626
5651
  `
5627
- ${import_picocolors.default.bold("DOCYRUS SERVER")} ${import_picocolors.default.dim(`v${version}`)}
5628
- ${import_picocolors.default.green("Starting agent server...")}
5652
+ ${import_picocolors2.default.bold("DOCYRUS SERVER")} ${import_picocolors2.default.dim(`v${version}`)}
5653
+ ${import_picocolors2.default.green("Starting agent server...")}
5629
5654
  `
5630
5655
  );
5631
5656
  }
@@ -5695,6 +5720,7 @@ async function main() {
5695
5720
  settingsManager.setLastChangelogVersion(version);
5696
5721
  }
5697
5722
  renderStartupSplash(version);
5723
+ const spinner = createSpinner("Loading agent...");
5698
5724
  const requestedModel = resolveRequestedModel({
5699
5725
  request,
5700
5726
  modelRegistry
@@ -5707,6 +5733,7 @@ async function main() {
5707
5733
  authStorage.setRuntimeApiKey(apiKeyProvider, request.apiKey);
5708
5734
  }
5709
5735
  const sessionManager = pi.SessionManager.create(cwd, request.sessionDir);
5736
+ spinner.update("Loading resources...");
5710
5737
  const resourceLoader = new pi.DefaultResourceLoader({
5711
5738
  cwd,
5712
5739
  agentDir,
@@ -5719,6 +5746,7 @@ async function main() {
5719
5746
  )
5720
5747
  });
5721
5748
  await resourceLoader.reload();
5749
+ spinner.update("Creating session...");
5722
5750
  const { session, extensionsResult } = await pi.createAgentSession({
5723
5751
  cwd,
5724
5752
  agentDir,
@@ -5734,6 +5762,7 @@ async function main() {
5734
5762
  if (hasPackagedMcpAdapter) {
5735
5763
  extensionsResult.runtime.flagValues.set("mcp-config", mcpConfigPath);
5736
5764
  }
5765
+ spinner.stop();
5737
5766
  if (!session.model) {
5738
5767
  throw new Error(
5739
5768
  `No models available.