Skill: CLI Command Wiring

SkillDev tools

Bug class: Commands implemented in packages/squad-cli/src/cli/commands/ but never routed in cli-entry.ts.

Available today. Use it from your connected AI after setup.

Connect ahel once, and every AI you use reads what you have installed.

Then ask your AI: use the Skill: CLI Command Wiring skill

About this capability

CSA Copilot: the ultimate content factory for Microsoft Cloud Solution Architects

What this skill tells your AI

The instructions your AI receives, as published by olivomarco/vbd-copilot in .copilot/skills/cli-wiring/SKILL.md and read by ahel’s review.

Bug class: Commands implemented in packages/squad-cli/src/cli/commands/ but never routed in cli-entry.ts.

Checklist — Adding a New CLI Command

  1. Create command file in packages/squad-cli/src/cli/commands/<name>.ts

    • Export a run<Name>(cwd, options) async function (or class with static methods for utility modules)
  2. Add routing block in packages/squad-cli/src/cli-entry.ts inside main():

    if (cmd === '<name>') {
      const { run<Name> } = await import('./cli/commands/<name>.js');
      // parse args, call function
      await run<Name>(process.cwd(), options);
      return;
    }
    
  3. Add help text in the help section of cli-entry.ts (search for Commands:):

    console.log(`  ${BOLD}<name>${RESET}     <description>`);
    console.log(`             Usage: <name> [flags]`);
    
  4. Verify both exist — the recurring bug is doing step 1 but missing steps 2-3.

Wiring Patterns by Command Type

TypeExampleHow to wire
Standard commandexport.ts, build.tsrun*() function, parse flags from args
Placeholder commandloop, hireInline in cli-entry.ts, prints pending message
Utility/check modulerc-tunnel.ts, copilot-bridge.tsWire as diagnostic check (e.g., isDevtunnelAvailable())
Subcommand of anotherinit-remote.tsAlready used inside parent + standalone alias

Common Import Pattern

import { BOLD, RESET, DIM, RED, GREEN, YELLOW } from './cli/core/output.js';

Use dynamic await import() for command modules to keep startup fast (lazy loading).

History

  • #237 / PR #244: 4 commands wired (rc, copilot-bridge, init-remote, rc-tunnel). aspire, link, loop, hire were already present.

Signals

GitHub stars
67
Forks
44
Last commit
Jul 2026
Advanced
Catalog kind
skill
Gateway key
cli-wiring
Source
github.com/olivomarco/vbd-copilot