@baton-dx/cli 0.1.4 → 0.3.0
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/README.md +10 -0
- package/dist/{agent-detection-C5gaTtah.mjs → agent-detection-DTiVeO5W.mjs} +329 -36
- package/dist/agent-detection-DTiVeO5W.mjs.map +1 -0
- package/dist/{agent-detection-BW5-jGuR.mjs → agent-detection-l61K-AbU.mjs} +1 -1
- package/dist/{context-detection-mMNLg_4F.mjs → context-detection-DqOTnD6_.mjs} +5 -5
- package/dist/context-detection-DqOTnD6_.mjs.map +1 -0
- package/dist/{create-Bo1zwMs0.mjs → create-BG_VVOTI.mjs} +4 -3
- package/dist/{create-Bo1zwMs0.mjs.map → create-BG_VVOTI.mjs.map} +1 -1
- package/dist/index.mjs +676 -102
- package/dist/index.mjs.map +1 -1
- package/dist/{list-B5xUVBTU.mjs → list-CCzjta6J.mjs} +4 -3
- package/dist/{list-B5xUVBTU.mjs.map → list-CCzjta6J.mjs.map} +1 -1
- package/dist/{remove-6S8F9xcE.mjs → remove-BBs6Mv8t.mjs} +2 -2
- package/dist/{remove-6S8F9xcE.mjs.map → remove-BBs6Mv8t.mjs.map} +1 -1
- package/dist/{src-Dh0ZvHbV.mjs → src-BgiJfm14.mjs} +261 -51
- package/dist/src-BgiJfm14.mjs.map +1 -0
- package/package.json +1 -1
- package/dist/agent-detection-C5gaTtah.mjs.map +0 -1
- package/dist/context-detection-mMNLg_4F.mjs.map +0 -1
- package/dist/execa-RdtdAT4S.mjs +0 -6343
- package/dist/execa-RdtdAT4S.mjs.map +0 -1
- package/dist/src-Dh0ZvHbV.mjs.map +0 -1
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"agent-detection-C5gaTtah.mjs","names":[],"sources":["../../agent-paths/src/registry.ts","../../core/src/detection/agent-detection.ts"],"sourcesContent":["import type { AgentPathConfig } from \"./types.js\";\n\n/**\n * Registry of all supported AI agents and their path configurations.\n * Each agent defines where it expects skills, rules, agents, memory, settings, and commands.\n */\nexport const AGENT_PATHS: readonly AgentPathConfig[] = [\n {\n key: \"claude-code\",\n name: \"Claude Code\",\n skills: {\n project: \".claude/skills/{name}\",\n global: \"~/.claude/skills/{name}\",\n },\n rules: {\n project: \".claude/rules/{name}.md\",\n global: \"~/.claude/rules/{name}.md\",\n },\n agents: {\n project: \".claude/agents/{name}.md\",\n global: \"~/.claude/agents/{name}.md\",\n },\n memory: {\n project: \"CLAUDE.md\",\n global: \"~/.claude/CLAUDE.md\",\n },\n settings: {\n project: \".claude/settings.json\",\n global: \"~/.claude/settings.json\",\n },\n commands: {\n project: \".claude/commands/{name}.md\",\n global: \"~/.claude/commands/{name}.md\",\n },\n detection: [\"claude\", \"~/.claude/\"],\n legacy: {},\n },\n {\n key: \"cursor\",\n name: \"Cursor\",\n skills: {\n project: \".cursor/skills/{name}\",\n global: \"~/.cursor/skills/{name}\",\n },\n rules: {\n project: \".cursor/rules/{name}.mdc\",\n global: \"~/.cursor/rules/{name}.mdc\",\n },\n agents: {\n project: \".cursor/agents/{name}.md\",\n global: \"~/.cursor/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.cursor/AGENTS.md\",\n },\n settings: {\n project: \".cursor/settings.json\",\n global: \"~/.cursor/settings.json\",\n },\n commands: {\n project: \".cursor/commands/{name}.md\",\n global: \"~/.cursor/commands/{name}.md\",\n },\n detection: [\"cursor\", \"~/.cursor/\"],\n legacy: {\n rules: [\".cursorrules\"],\n },\n },\n {\n key: \"windsurf\",\n name: \"Windsurf\",\n skills: {\n project: \".windsurf/skills/{name}\",\n global: \"~/.codeium/windsurf/skills/{name}\",\n },\n rules: {\n project: \".windsurf/rules/{name}.md\",\n global: \"~/.codeium/windsurf/rules/{name}.md\",\n },\n agents: {\n project: \".windsurf/agents/{name}.md\",\n global: \"~/.codeium/windsurf/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.codeium/windsurf/AGENTS.md\",\n },\n settings: {\n project: \".windsurf/settings.json\",\n global: \"~/.codeium/windsurf/settings.json\",\n },\n commands: {\n project: \".windsurf/workflows/{name}.md\",\n global: \"~/.codeium/windsurf/workflows/{name}.md\",\n },\n detection: [\"windsurf\", \"~/.codeium/windsurf/\"],\n legacy: {\n rules: [\".windsurfrules\"],\n },\n },\n {\n key: \"antigravity\",\n name: \"Antigravity\",\n skills: {\n project: \".agent/skills/{name}\",\n global: \"~/.gemini/antigravity/skills/{name}\",\n },\n rules: {\n project: \".agent/rules/{name}.md\",\n global: \"~/.gemini/antigravity/rules/{name}.md\",\n },\n agents: {\n project: \".agent/agents/{name}.md\",\n global: \"~/.gemini/antigravity/agents/{name}.md\",\n },\n memory: {\n project: \"GEMINI.md\",\n global: \"~/.gemini/antigravity/GEMINI.md\",\n },\n settings: {\n project: \".agent/settings.json\",\n global: \"~/.gemini/antigravity/settings.json\",\n },\n commands: {\n project: \".agent/workflows/{name}.md\",\n global: \"~/.gemini/antigravity/workflows/{name}.md\",\n },\n detection: [\"antigravity\", \"~/.gemini/antigravity/\"],\n legacy: {},\n },\n {\n key: \"codex\",\n name: \"Codex CLI\",\n skills: {\n project: \".codex/skills/{name}\",\n global: \"~/.codex/skills/{name}\",\n },\n rules: {\n project: \".codex/rules/{name}.md\",\n global: \"~/.codex/rules/{name}.md\",\n },\n agents: {\n project: \".codex/agents/{name}.md\",\n global: \"~/.codex/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.codex/AGENTS.md\",\n },\n settings: {\n project: \".codex/config.toml\",\n global: \"~/.codex/config.toml\",\n },\n commands: {\n project: \".codex/commands/{name}.md\",\n global: \"~/.codex/commands/{name}.md\",\n },\n detection: [\"codex\", \"~/.codex/\"],\n legacy: {},\n },\n {\n key: \"github-copilot\",\n name: \"GitHub Copilot\",\n skills: {\n project: \".github/skills/{name}\",\n global: \"~/.github/skills/{name}\",\n },\n rules: {\n project: \".github/copilot-instructions.md\",\n global: \"~/.github/copilot-instructions.md\",\n },\n agents: {\n project: \".github/agents/{name}.md\",\n global: \"~/.github/agents/{name}.md\",\n },\n memory: {\n project: \".github/copilot-instructions.md\",\n global: \"~/.github/copilot-instructions.md\",\n },\n settings: {\n project: \".github/copilot/settings.json\",\n global: \"~/.github/copilot/settings.json\",\n },\n commands: {\n project: \".github/copilot/commands/{name}.md\",\n global: \"~/.github/copilot/commands/{name}.md\",\n },\n detection: [\"gh\", \"~/.github/\"],\n legacy: {},\n },\n {\n key: \"opencode\",\n name: \"OpenCode\",\n skills: {\n project: \".opencode/skills/{name}\",\n global: \"~/.config/opencode/skills/{name}\",\n },\n rules: {\n project: \".opencode/rules/{name}.md\",\n global: \"~/.config/opencode/rules/{name}.md\",\n },\n agents: {\n project: \".opencode/agents/{name}.md\",\n global: \"~/.config/opencode/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.config/opencode/AGENTS.md\",\n },\n settings: {\n project: \".opencode/settings.json\",\n global: \"~/.config/opencode/settings.json\",\n },\n commands: {\n project: \".opencode/commands/{name}.md\",\n global: \"~/.config/opencode/commands/{name}.md\",\n },\n detection: [\"opencode\", \"~/.config/opencode/\"],\n legacy: {},\n },\n {\n key: \"amp\",\n name: \"Amp\",\n skills: {\n project: \".agents/skills/{name}\",\n global: \"~/.config/agents/skills/{name}\",\n },\n rules: {\n project: \".agents/rules/{name}.md\",\n global: \"~/.config/agents/rules/{name}.md\",\n },\n agents: {\n project: \".agents/agents/{name}.md\",\n global: \"~/.config/agents/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.config/agents/AGENTS.md\",\n },\n settings: {\n project: \".agents/settings.json\",\n global: \"~/.config/agents/settings.json\",\n },\n commands: {\n project: \".agents/commands/{name}.md\",\n global: \"~/.config/agents/commands/{name}.md\",\n },\n detection: [\"amp\", \"~/.config/agents/\"],\n legacy: {},\n },\n {\n key: \"kiro\",\n name: \"Kiro\",\n skills: {\n project: \".kiro/skills/{name}\",\n global: \"~/.kiro/skills/{name}\",\n },\n rules: {\n project: \".kiro/rules/{name}.md\",\n global: \"~/.kiro/rules/{name}.md\",\n },\n agents: {\n project: \".kiro/agents/{name}.md\",\n global: \"~/.kiro/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.kiro/AGENTS.md\",\n },\n settings: {\n project: \".kiro/settings.json\",\n global: \"~/.kiro/settings.json\",\n },\n commands: {\n project: \".kiro/commands/{name}.md\",\n global: \"~/.kiro/commands/{name}.md\",\n },\n detection: [\"kiro\", \"~/.kiro/\"],\n legacy: {},\n },\n {\n key: \"zed\",\n name: \"Zed\",\n skills: {\n project: \".zed/skills/{name}\",\n global: \"~/.zed/skills/{name}\",\n },\n rules: {\n project: \".zed/rules/{name}.md\",\n global: \"~/.zed/rules/{name}.md\",\n },\n agents: {\n project: \".zed/agents/{name}.md\",\n global: \"~/.zed/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.zed/AGENTS.md\",\n },\n settings: {\n project: \".zed/settings.json\",\n global: \"~/.zed/settings.json\",\n },\n commands: {\n project: \".zed/commands/{name}.md\",\n global: \"~/.zed/commands/{name}.md\",\n },\n detection: [\"zed\", \"~/.zed/\"],\n legacy: {},\n },\n {\n key: \"cline\",\n name: \"Cline\",\n skills: {\n project: \".cline/skills/{name}\",\n global: \"~/.cline/skills/{name}\",\n },\n rules: {\n project: \".cline/rules/{name}.md\",\n global: \"~/.cline/rules/{name}.md\",\n },\n agents: {\n project: \".cline/agents/{name}.md\",\n global: \"~/.cline/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.cline/AGENTS.md\",\n },\n settings: {\n project: \".cline/settings.json\",\n global: \"~/.cline/settings.json\",\n },\n commands: {\n project: \".cline/commands/{name}.md\",\n global: \"~/.cline/commands/{name}.md\",\n },\n detection: [\"cline\", \"~/.cline/\"],\n legacy: {},\n },\n {\n key: \"roo\",\n name: \"Roo\",\n skills: {\n project: \".roo/skills/{name}\",\n global: \"~/.roo/skills/{name}\",\n },\n rules: {\n project: \".roo/rules/{name}.md\",\n global: \"~/.roo/rules/{name}.md\",\n },\n agents: {\n project: \".roo/agents/{name}.md\",\n global: \"~/.roo/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.roo/AGENTS.md\",\n },\n settings: {\n project: \".roo/settings.json\",\n global: \"~/.roo/settings.json\",\n },\n commands: {\n project: \".roo/commands/{name}.md\",\n global: \"~/.roo/commands/{name}.md\",\n },\n detection: [\"roo\", \"~/.roo/\"],\n legacy: {},\n },\n {\n key: \"junie\",\n name: \"Junie\",\n skills: {\n project: \".junie/skills/{name}\",\n global: \"~/.junie/skills/{name}\",\n },\n rules: {\n project: \".junie/rules/{name}.md\",\n global: \"~/.junie/rules/{name}.md\",\n },\n agents: {\n project: \".junie/agents/{name}.md\",\n global: \"~/.junie/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.junie/AGENTS.md\",\n },\n settings: {\n project: \".junie/settings.json\",\n global: \"~/.junie/settings.json\",\n },\n commands: {\n project: \".junie/commands/{name}.md\",\n global: \"~/.junie/commands/{name}.md\",\n },\n detection: [\"junie\", \"~/.junie/\"],\n legacy: {},\n },\n {\n key: \"trae\",\n name: \"Trae\",\n skills: {\n project: \".trae/skills/{name}\",\n global: \"~/.trae/skills/{name}\",\n },\n rules: {\n project: \".trae/rules/{name}.md\",\n global: \"~/.trae/rules/{name}.md\",\n },\n agents: {\n project: \".trae/agents/{name}.md\",\n global: \"~/.trae/agents/{name}.md\",\n },\n memory: {\n project: \"AGENTS.md\",\n global: \"~/.trae/AGENTS.md\",\n },\n settings: {\n project: \".trae/settings.json\",\n global: \"~/.trae/settings.json\",\n },\n commands: {\n project: \".trae/commands/{name}.md\",\n global: \"~/.trae/commands/{name}.md\",\n },\n detection: [\"trae\", \"~/.trae/\"],\n legacy: {},\n },\n];\n","import { constants, access } from \"node:fs/promises\";\nimport { homedir } from \"node:os\";\nimport { join } from \"node:path\";\nimport { AGENT_PATHS } from \"@baton-dx/agent-paths\";\n\n/**\n * Cache for detected agents (valid for process lifetime)\n */\nlet cachedAgents: string[] | null = null;\n\n/**\n * Check if a command exists in PATH\n */\nasync function commandExists(command: string): Promise<boolean> {\n try {\n const { execa } = await import(\"execa\");\n await execa(\"which\", [command]);\n return true;\n } catch {\n return false;\n }\n}\n\n/**\n * Check if a directory exists\n */\nasync function directoryExists(path: string): Promise<boolean> {\n try {\n await access(path, constants.R_OK);\n return true;\n } catch {\n return false;\n }\n}\n\n/**\n * Detect if a specific agent is installed\n */\nasync function isAgentInstalled(agentKey: string): Promise<boolean> {\n const agentConfig = AGENT_PATHS.find((agent) => agent.key === agentKey);\n if (!agentConfig) return false;\n\n // Check each detection method\n for (const detection of agentConfig.detection) {\n // If detection string starts with ~/, it's a directory path\n if (detection.startsWith(\"~/\")) {\n const dirPath = join(homedir(), detection.slice(2));\n if (await directoryExists(dirPath)) {\n return true;\n }\n }\n // If detection string starts with ., it's also a directory path relative to home\n else if (detection.startsWith(\".\")) {\n const dirPath = join(homedir(), detection);\n if (await directoryExists(dirPath)) {\n return true;\n }\n }\n // Otherwise, treat it as a CLI binary name\n else {\n if (await commandExists(detection)) {\n return true;\n }\n }\n }\n\n return false;\n}\n\n/**\n * Detect all installed AI agents\n * Results are cached for the duration of the process\n */\nexport async function detectInstalledAgents(): Promise<string[]> {\n // Return cached result if available\n if (cachedAgents !== null) {\n return cachedAgents;\n }\n\n const installedAgents: string[] = [];\n\n // Check each agent in parallel\n const detectionPromises = AGENT_PATHS.map(async (agent) => {\n const isInstalled = await isAgentInstalled(agent.key);\n return isInstalled ? agent.key : null;\n });\n\n const results = await Promise.all(detectionPromises);\n\n // Filter out null results\n for (const result of results) {\n if (result !== null) {\n installedAgents.push(result);\n }\n }\n\n // Cache the result\n cachedAgents = installedAgents;\n\n return installedAgents;\n}\n\n/**\n * Clear the agent detection cache\n * Useful for testing or when agent installation state may have changed\n */\nexport function clearAgentCache(): void {\n cachedAgents = null;\n}\n\n/**\n * Override agent detection with a specific list of agents\n * Used when --agents flag is provided\n */\nexport function setDetectedAgents(agents: string[]): void {\n cachedAgents = [...agents];\n}\n"],"mappings":"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"}
|