feat(cli): deprecation warnings for tunnel, rc, and REPL commands#900
feat(cli): deprecation warnings for tunnel, rc, and REPL commands#900tamirdresher merged 3 commits intoinsiderfrom
Conversation
🛫 PR Readiness Check
PR Scope: 📦🔧 Mixed (product + infrastructure)
|
| Status | Check | Details |
|---|---|---|
| ❌ | Single commit | 2 commits — consider squashing before review |
| ✅ | Not in draft | Ready for review |
| ✅ | Branch up to date | Up to date with insider |
| ❌ | Copilot review | No Copilot review yet — it may still be processing |
| ✅ | Changeset present | Changeset file found |
| ✅ | Scope clean | No .squad/ or docs/proposals/ files |
| ✅ | No merge conflicts | No merge conflicts |
| ✅ | Copilot threads resolved | No Copilot review threads |
| ❌ | CI passing | 1 check(s) still running |
| ✅ | Issue linked | Issue reference found |
| ✅ | Protected files | No protected bootstrap files changed |
Files Changed (2 files, +20 −7)
| File | +/− |
|---|---|
.changeset/deprecate-tunnel-rc-repl.md |
+5 −0 |
packages/squad-cli/src/cli-entry.ts |
+15 −7 |
Total: +20 −7
This check runs automatically on every push. Fix any ❌ items and push again.
See CONTRIBUTING.md and PR Requirements for details.
Adds visible deprecation warnings to: - Interactive REPL shell (squad with no args) - squad start (and --tunnel flag) - squad rc / remote-control - squad rc-tunnel Phase 1: warnings only — no behavior changes. Commands still work but now emit a yellow deprecation notice pointing users to the GitHub Copilot CLI as the replacement. Help text updated to show [DEPRECATED] tags on affected commands. Closes #899 Related: #665 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
cdb20ec to
34f150a
Compare
🏗️ Architectural Review
Automated architectural review — informational only. |
🔒 Security Review🔒 Security review: 2 info.
Automated security review — informational only. |
🟡 Impact Analysis — PR #900Risk tier: 🟡 MEDIUM 📊 Summary
🎯 Risk Factors
📦 Modules Affectedroot (1 file)
squad-cli (1 file)
This report is generated automatically for every PR. See #733 for details. |
There was a problem hiding this comment.
Pull request overview
Adds Phase 1 deprecation warnings in the Squad CLI for the interactive REPL (no-args), start (including --tunnel), and Remote Control commands, and marks those commands as deprecated in --help output.
Changes:
- Mark REPL/default mode,
start,rc, andrc-tunnelas[DEPRECATED]insquad --help. - Emit yellow deprecation notices when invoking the REPL (no args),
squad start(and--tunnel),squad rc, andsquad rc-tunnel. - Add a changeset documenting the CLI deprecation-warning behavior change.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
| File | Description |
|---|---|
| packages/squad-cli/src/cli-entry.ts | Adds help tags + runtime deprecation warnings for REPL/start/RC/tunnel-related paths. |
| .changeset/deprecate-tunnel-rc-repl.md | Documents the deprecation warnings as a patch changeset for @bradygaster/squad-cli. |
Comments suppressed due to low confidence (1)
packages/squad-cli/src/cli-entry.ts:802
- Same as above: the deprecation guidance mentions running
copilotdirectly, which is ambiguous next to the existingsquad copilotcommand and may not exist in a typical install. Prefer consistently recommendinggh copilot, or clarify the expected installation/alias.
console.log(`\n${YELLOW}⚠ DEPRECATED:${RESET} "squad rc" is deprecated and will be removed in a future release.`);
console.log(` Use the GitHub Copilot CLI directly: ${BOLD}copilot${RESET} or ${BOLD}gh copilot${RESET}\n`);
const { runRC } = await import('./cli/commands/rc.js');
const hasTunnel = args.includes('--tunnel');
const portIdx = args.indexOf('--port');
const port = (portIdx !== -1 && args[portIdx + 1]) ? parseInt(args[portIdx + 1]!, 10) : 0;
| console.log(`\n${YELLOW}⚠ DEPRECATED:${RESET} "squad start" is deprecated and will be removed in a future release.`); | ||
| console.log(` Use the GitHub Copilot CLI directly: ${BOLD}copilot${RESET} or ${BOLD}gh copilot${RESET}\n`); | ||
| const { runStart } = await import('./cli/commands/start.js'); | ||
| const hasTunnel = args.includes('--tunnel'); | ||
| if (hasTunnel) { | ||
| console.log(`${YELLOW}⚠ DEPRECATED:${RESET} --tunnel is deprecated and will be removed in a future release.\n`); |
There was a problem hiding this comment.
The deprecation message suggests using copilot directly, which can be ambiguous in this repo (there is also a squad copilot subcommand) and may not be installed on all systems. Consider pointing users only to gh copilot (which is the documented default in several places) or explicitly clarifying what copilot refers to to avoid confusion.
| @@ -0,0 +1,5 @@ | |||
| --- | |||
| "@bradygaster/squad-cli": patch | |||
There was a problem hiding this comment.
Changeset frontmatter uses double quotes around the package name. Other changesets in this repo consistently use single quotes (e.g. .changeset/fix-team-root-all-commands.md:2). Aligning to the established format avoids churn and keeps changesets consistent.
| "@bradygaster/squad-cli": patch | |
| '@bradygaster/squad-cli': patch |
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
🏗️ Post-Merge Review — Mal (Lead)Verdict: ✅ Approve with follow-ups Deprecating tunnel/RC/REPL is strategically correct — Brady filed #665 himself citing persistent rendering bugs and maintenance drag, and the Copilot CLI is objectively the better interactive experience. Phase 1 (warnings only, no behavior changes) is low-risk and well-scoped. Findings
Recommended Follow-Ups
Good work — clean diff, proper changeset, thorough checklist. Review by Squad AI team (Mal — Lead) · requested by Dina Berry |
…#900, bradygaster#875) - Add YAML value escaping helper for skill metadata - Replace catch(err: any) with catch(err: unknown) + narrowing - Add type guards to replace unsafe type assertions - Standardize deprecation messages on `gh copilot` - Fix unsafe exports type cast in cross-package test Closes bradygaster#924, bradygaster#925, bradygaster#926 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
- Add YAML value escaping helper for skill metadata - Replace catch(err: any) with catch(err: unknown) + narrowing - Add type guards to replace unsafe type assertions - Standardize deprecation messages on `gh copilot` - Fix unsafe exports type cast in cross-package test Closes #924, #925, #926 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix: address post-merge review findings (#876, #900, #875) - Add YAML value escaping helper for skill metadata - Replace catch(err: any) with catch(err: unknown) + narrowing - Add type guards to replace unsafe type assertions - Standardize deprecation messages on `gh copilot` - Fix unsafe exports type cast in cross-package test Closes #924, #925, #926 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: add changeset for review findings fix Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: trigger CI Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(.squad): EECOM history — PR #942 rebase learnings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: update changeset to accurately reflect PR changes (drop YAML escaping reference) Agent-Logs-Url: https://github.com/bradygaster/squad/sessions/54f41407-61bf-4977-85b7-572341c47b62 Co-authored-by: bradygaster <41929050+bradygaster@users.noreply.github.com> --------- Co-authored-by: Copilot <copilot@github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
* feat(cli): add deprecation warnings for tunnel, rc, and REPL commands Adds visible deprecation warnings to: - Interactive REPL shell (squad with no args) - squad start (and --tunnel flag) - squad rc / remote-control - squad rc-tunnel Phase 1: warnings only — no behavior changes. Commands still work but now emit a yellow deprecation notice pointing users to the GitHub Copilot CLI as the replacement. Help text updated to show [DEPRECATED] tags on affected commands. Closes #899 Related: #665 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: add changeset for tunnel/rc/REPL deprecation warnings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * fix: shorten deprecation hint to fit 80-char UX gate Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <copilot@github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
* fix: address post-merge review findings (#876, #900, #875) - Add YAML value escaping helper for skill metadata - Replace catch(err: any) with catch(err: unknown) + narrowing - Add type guards to replace unsafe type assertions - Standardize deprecation messages on `gh copilot` - Fix unsafe exports type cast in cross-package test Closes #924, #925, #926 Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: add changeset for review findings fix Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: trigger CI Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore(.squad): EECOM history — PR #942 rebase learnings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * chore: update changeset to accurately reflect PR changes (drop YAML escaping reference) Agent-Logs-Url: https://github.com/bradygaster/squad/sessions/54f41407-61bf-4977-85b7-572341c47b62 Co-authored-by: bradygaster <41929050+bradygaster@users.noreply.github.com> --------- Co-authored-by: Copilot <copilot@github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
What
Adds Phase 1 deprecation warnings to the tunnel, Remote Control, and REPL commands. Five commands now emit yellow warnings pointing users to the GitHub Copilot CLI as the replacement. No behavior changes - all commands still work.
Why
The tunnel/RC/REPL features add significant complexity to the CLI without sufficient adoption. The GitHub Copilot CLI provides native interactive and remote access capabilities. Squad should be lean. Closes #899. Related: #665.
How
Added console.log deprecation notices at the top of each affected command handler in cli-entry.ts, and [DEPRECATED] tags in the --help output. Minimal change - 1 file, 15 insertions.
PR Readiness Checklist
Branch & Commit
Build & Test
Changeset
Docs
Exports
Breaking Changes
None. All commands continue to work exactly as before. Warnings are additive console output only.
Waivers