claude-scope 0.8.11 → 0.8.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.
@@ -7653,14 +7653,18 @@ var DevServerWidget = class {
7653
7653
  styleFn = devServerStyles.balanced;
7654
7654
  cwd = null;
7655
7655
  processPatterns = [
7656
- { regex: /nuxt.*dev/i, name: "Nuxt", icon: "\u26A1" },
7657
- { regex: /next.*dev/i, name: "Next.js", icon: "\u25B2" },
7658
- { regex: /vite.*dev/i, name: "Vite", icon: "\u26A1" },
7659
- { regex: /svelte.*dev/i, name: "Svelte", icon: "\u{1F525}" },
7660
- { regex: /astro.*dev/i, name: "Astro", icon: "\u{1F680}" },
7661
- { regex: /remix.*dev/i, name: "Remix", icon: "\u{1F4BF}" },
7662
- { regex: /(npm|yarn|pnpm|bun).*run\s+dev/i, name: "Dev", icon: "\u{1F680}" },
7663
- { regex: /(npm|yarn|pnpm|bun).*run\s+build/i, name: "Build", icon: "\u{1F528}" }
7656
+ // Generic server patterns - more specific to avoid shell history false positives
7657
+ { regex: /^[\w\s]+\/npm\s+(exec|run)\s+serve/i, name: "Server", icon: "\u{1F310}" },
7658
+ { regex: /^[\w\s]+\/npx\s+serve\s+-/i, name: "Server", icon: "\u{1F310}" },
7659
+ { regex: /^[\w\s]+\/(python|python3)\s+-m\s+http\.server/i, name: "HTTP", icon: "\u{1F310}" },
7660
+ // Generic dev/build patterns - require full command path
7661
+ { regex: /^[\w\s]+\/(npm|yarn|pnpm|bun)\s+run\s+dev\s*$/i, name: "Dev", icon: "\u{1F680}" },
7662
+ { regex: /^[\w\s]+\/(npm|yarn|pnpm|bun)\s+run\s+build\s*$/i, name: "Build", icon: "\u{1F528}" },
7663
+ // Framework-specific patterns - require executable path
7664
+ { regex: /\/(nuxt|next|astro|remix|svelte)\s+dev/i, name: "Framework", icon: "\u26A1" },
7665
+ { regex: /\/node.*\/vite\s*$/i, name: "Vite", icon: "\u26A1" },
7666
+ // Fallback: simpler patterns but checked last
7667
+ { regex: /\s(nuxt|next|vite)\s+dev\s/i, name: "DevServer", icon: "\u26A1" }
7664
7668
  ];
7665
7669
  constructor(colors2) {
7666
7670
  this.colors = colors2 ?? DEFAULT_THEME;
@@ -7737,16 +7741,18 @@ var DevServerWidget = class {
7737
7741
  */
7738
7742
  async detectDevServer() {
7739
7743
  try {
7740
- const { stdout } = await execFileAsync2("ps", ["-aux"], {
7744
+ const { stdout } = await execFileAsync2("ps", ["aux"], {
7741
7745
  timeout: 1e3
7742
7746
  });
7743
7747
  for (const pattern of this.processPatterns) {
7744
7748
  if (pattern.regex.test(stdout)) {
7749
+ const isBuilding = pattern.name.toLowerCase().includes("build");
7750
+ const isRunning = !isBuilding;
7745
7751
  return {
7746
7752
  name: pattern.name,
7747
7753
  icon: pattern.icon,
7748
- isRunning: /dev/i.test(stdout),
7749
- isBuilding: /build/i.test(stdout)
7754
+ isRunning,
7755
+ isBuilding
7750
7756
  };
7751
7757
  }
7752
7758
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-scope",
3
- "version": "0.8.11",
3
+ "version": "0.8.13",
4
4
  "description": "Claude Code plugin for session status and analytics",
5
5
  "license": "MIT",
6
6
  "type": "module",