nairon-bench 0.5.1 → 0.5.2

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.
Files changed (2) hide show
  1. package/dist/index.js +89 -25
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -16086,22 +16086,62 @@ function markProjectScanned(projectDir) {
16086
16086
  }
16087
16087
  writeFileSync4(join9(projectDir, PROJECT_SCAN_MARKER), new Date().toISOString());
16088
16088
  }
16089
- function detectAgent() {
16089
+ var AGENT_CONFIGS = [
16090
+ {
16091
+ id: "claude-code",
16092
+ name: "Claude Code",
16093
+ paths: [".claude"]
16094
+ },
16095
+ {
16096
+ id: "opencode",
16097
+ name: "OpenCode",
16098
+ paths: [".config/opencode", ".local/share/opencode", ".opencode"]
16099
+ },
16100
+ {
16101
+ id: "cursor",
16102
+ name: "Cursor",
16103
+ paths: [".cursor"]
16104
+ },
16105
+ {
16106
+ id: "codex",
16107
+ name: "Codex CLI",
16108
+ paths: [".codex"]
16109
+ },
16110
+ {
16111
+ id: "copilot",
16112
+ name: "GitHub Copilot",
16113
+ paths: [".github-copilot"]
16114
+ },
16115
+ {
16116
+ id: "cody",
16117
+ name: "Sourcegraph Cody",
16118
+ paths: [".cody"]
16119
+ },
16120
+ {
16121
+ id: "aider",
16122
+ name: "Aider",
16123
+ paths: [".aider"]
16124
+ }
16125
+ ];
16126
+ function detectAllAgents() {
16090
16127
  const home = homedir8();
16091
- const claudeConfig = join9(home, ".claude");
16092
- const hasClaudeCode = existsSync9(claudeConfig);
16093
- const opencodeConfig = join9(home, ".config", "opencode");
16094
- const opencodeData = join9(home, ".local", "share", "opencode");
16095
- const hasOpenCode = existsSync9(opencodeConfig) || existsSync9(opencodeData);
16096
- const cursorConfig = join9(home, ".cursor");
16097
- const hasCursor = existsSync9(cursorConfig);
16098
- if (hasClaudeCode)
16099
- return "claude-code";
16100
- if (hasOpenCode)
16101
- return "opencode";
16102
- if (hasCursor)
16103
- return "cursor";
16104
- return "unknown";
16128
+ const cwd = process.cwd();
16129
+ const detected = [];
16130
+ for (const agent of AGENT_CONFIGS) {
16131
+ for (const relativePath of agent.paths) {
16132
+ const homePath = join9(home, relativePath);
16133
+ if (existsSync9(homePath)) {
16134
+ detected.push({ id: agent.id, name: agent.name, configPath: homePath });
16135
+ break;
16136
+ }
16137
+ const projectPath = join9(cwd, relativePath);
16138
+ if (existsSync9(projectPath)) {
16139
+ detected.push({ id: agent.id, name: agent.name, configPath: projectPath });
16140
+ break;
16141
+ }
16142
+ }
16143
+ }
16144
+ return detected;
16105
16145
  }
16106
16146
  function analyzeReadme(projectDir) {
16107
16147
  const readmePath = join9(projectDir, "README.md");
@@ -16874,14 +16914,28 @@ async function showFirstScanWelcome(projectDir) {
16874
16914
  console.log(` ${colors2.primary("✨")} ${colors2.bold("First scan in this project!")}`);
16875
16915
  console.log(colors2.dim(" " + "═".repeat(50)));
16876
16916
  console.log();
16877
- const agent = detectAgent();
16878
- const agentNames = {
16879
- "claude-code": "Claude Code",
16880
- opencode: "OpenCode",
16881
- cursor: "Cursor",
16882
- unknown: "Unknown"
16883
- };
16884
- console.log(` ${icons.info} Detected agent: ${colors2.bold(agentNames[agent])}`);
16917
+ const detectedAgents = detectAllAgents();
16918
+ let selectedAgent = null;
16919
+ if (detectedAgents.length === 0) {
16920
+ console.log(` ${icons.info} No AI coding agents detected`);
16921
+ console.log(` ${colors2.dim(" Install Claude Code, Cursor, or OpenCode to get started")}`);
16922
+ } else if (detectedAgents.length === 1) {
16923
+ selectedAgent = detectedAgents[0];
16924
+ console.log(` ${icons.info} Detected agent: ${colors2.bold(selectedAgent.name)}`);
16925
+ } else {
16926
+ console.log(` ${icons.info} Found ${colors2.bold(detectedAgents.length.toString())} AI coding agents:`);
16927
+ console.log();
16928
+ const agentChoice = await consola.prompt("Which agent are you using for this project?", {
16929
+ type: "select",
16930
+ options: detectedAgents.map((a2) => ({
16931
+ value: a2.id,
16932
+ label: a2.name
16933
+ }))
16934
+ });
16935
+ selectedAgent = detectedAgents.find((a2) => a2.id === agentChoice) || detectedAgents[0];
16936
+ console.log();
16937
+ console.log(` ${icons.success} Selected: ${colors2.bold(selectedAgent.name)}`);
16938
+ }
16885
16939
  const context = analyzeReadme(projectDir);
16886
16940
  if (context) {
16887
16941
  console.log(` ${icons.info} Project: ${colors2.bold(context.name)}`);
@@ -23666,6 +23720,16 @@ var BOLD = "\x1B[1m";
23666
23720
  var RESET = "\x1B[0m";
23667
23721
  var MAGENTA = "\x1B[35m";
23668
23722
  var CHANGELOG = [
23723
+ {
23724
+ version: "0.5.2",
23725
+ date: "2026-02-14",
23726
+ title: "Multi-Agent Detection",
23727
+ highlights: [
23728
+ "Detects ALL installed AI agents (Claude Code, Cursor, OpenCode, Codex, etc.)",
23729
+ "Choose which agent you're using if multiple are found",
23730
+ "Expanded agent support: Copilot, Cody, Aider"
23731
+ ]
23732
+ },
23669
23733
  {
23670
23734
  version: "0.5.1",
23671
23735
  date: "2026-02-14",
@@ -24127,7 +24191,7 @@ function showFullChangelog() {
24127
24191
  // package.json
24128
24192
  var package_default = {
24129
24193
  name: "nairon-bench",
24130
- version: "0.5.1",
24194
+ version: "0.5.2",
24131
24195
  description: "AI workflow benchmarking CLI",
24132
24196
  type: "module",
24133
24197
  bin: {
@@ -26654,7 +26718,7 @@ function formatBytes(bytes) {
26654
26718
  // package.json
26655
26719
  var package_default2 = {
26656
26720
  name: "nairon-bench",
26657
- version: "0.5.1",
26721
+ version: "0.5.2",
26658
26722
  description: "AI workflow benchmarking CLI",
26659
26723
  type: "module",
26660
26724
  bin: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nairon-bench",
3
- "version": "0.5.1",
3
+ "version": "0.5.2",
4
4
  "description": "AI workflow benchmarking CLI",
5
5
  "type": "module",
6
6
  "bin": {