feat: add skills doctor command for agent diagnostics#376
feat: add skills doctor command for agent diagnostics#376anthony-maio wants to merge 1 commit intovercel-labs:mainfrom
skills doctor command for agent diagnostics#376Conversation
Adds a diagnostic command that outputs system info (OS, Node, CLI version) and lists all detected agents with their resolved project/global paths. Helps users and maintainers quickly triage "skill not loading" issues.
|
@anthony-maio is attempting to deploy a commit to the Vercel Team on Vercel. A member of the Team first needs to authorize it. |
There was a problem hiding this comment.
Pull request overview
This PR adds a new skills doctor diagnostic command to help users and maintainers quickly troubleshoot "skill not loading" issues by displaying system information and detected agent configurations. The command provides clear visibility into the CLI environment (OS, Node version, CLI version) and shows which agents are detected along with their resolved project and global skill paths.
Changes:
- Adds
skills doctorcommand that outputs system diagnostics and agent detection information - Integrates the new command into the CLI help text and banner
- Includes comprehensive test coverage for the new command
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| src/doctor.ts | Implements the diagnostic command with system info and agent detection logic |
| tests/doctor.test.ts | Adds test coverage for system information output, agent detection, exit codes, and logo display |
| src/cli.ts | Integrates the doctor command into the CLI router, help text, and banner |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| @@ -0,0 +1,54 @@ | |||
| import os from 'node:os'; | |||
There was a problem hiding this comment.
The import style is inconsistent with the rest of the codebase. All other files use named imports from 'os' without the 'node:' prefix (e.g., import { homedir } from 'os';). Consider changing to use named imports: import { type, release, arch } from 'os'; to maintain consistency.
| import { join } from 'path'; | ||
| import { existsSync } from 'fs'; | ||
| import { agents, detectInstalledAgents } from './agents.ts'; | ||
| import type { AgentType } from './types.ts'; |
There was a problem hiding this comment.
The imported type AgentType is not used in this file. The type is inferred from the return value of detectInstalledAgents(). Consider removing this unused import.
| import type { AgentType } from './types.ts'; |
Adds a diagnostic command that outputs system info (OS, Node, CLI version) and lists all detected agents with their resolved project/global paths. Helps users and maintainers quickly triage "skill not loading" issues.