Skip to content

feat(cli): curl/irl installation scripts and docs#9835

Open
RomneyDa wants to merge 10 commits intomainfrom
dallin/curl-installs
Open

feat(cli): curl/irl installation scripts and docs#9835
RomneyDa wants to merge 10 commits intomainfrom
dallin/curl-installs

Conversation

@RomneyDa
Copy link
Collaborator

@RomneyDa RomneyDa commented Jan 23, 2026

Description

  • Adds scripts for installing the Continue CLI for linux/macos and windows
  • Handles node installation for users who don't have it/the right version
  • simplifies installation

Continue Tasks: ▶️ 1 queued · ✅ 1 no changes · ✅ 1 merged — View all


Summary by cubic

Adds cross-platform one-line installers for Continue CLI that auto-install Node.js 20+ when needed and streamline setup. Updates docs to auto-detect OS and show the right command, making onboarding faster.

  • New Features
    • One-liners: macOS/Linux via curl to install.sh; Windows via PowerShell irm to install.ps1.
    • Auto Node setup: detects Node, installs 20.19+ with fnm if missing, persists PATH/profile, and fixes npm global permissions.
    • Better docs: OS tab auto-detect, shared CLI install snippet reused across guides/README, and updated Install/Overview pages (Node prereq now 20+).

Written for commit 589caab. Summary will update on new commits.

@RomneyDa RomneyDa requested a review from a team as a code owner January 23, 2026 22:19
@RomneyDa RomneyDa requested review from Patrick-Erichsen and removed request for a team January 23, 2026 22:19
@dosubot dosubot bot added the size:XL This PR changes 500-999 lines, ignoring generated files. label Jan 23, 2026
@github-actions
Copy link

github-actions bot commented Jan 23, 2026

✅ Review Complete

Code Review Summary

⚠️ Continue API authentication failed. Please check your CONTINUE_API_KEY.


Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

4 issues found across 6 files

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="extensions/cli/scripts/install.sh">

<violation number="1" location="extensions/cli/scripts/install.sh:149">
P2: `set -u` plus unguarded `$FNM_DIR` expansion in `source_fnm` will abort the installer when FNM_DIR is unset.</violation>

<violation number="2" location="extensions/cli/scripts/install.sh:182">
P2: Cleanup can remove an existing fnm installation because CLEANUP_FNM is set unconditionally without tracking whether the install directory pre-existed.</violation>
</file>

<file name="extensions/cli/scripts/install.ps1">

<violation number="1" location="extensions/cli/scripts/install.ps1:173">
P2: Direct-download fnm install only updates the current session PATH; no persistent PATH update is written, so new shells may not find `fnm` and the profile init will fail after restart.</violation>

<violation number="2" location="extensions/cli/scripts/install.ps1:274">
P2: User-local npm prefix is only added to the current session PATH; after restarting PowerShell the CLI may not be on PATH, so `cn` can be missing despite a successful install.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

- Fix CLEANUP_FNM to only mark for cleanup if fnm dir doesn't pre-exist
- Guard FNM_DIR expansion with parameter substitution to avoid set -u errors
- Persist fnm PATH to user environment in PowerShell for future sessions
- Persist npm global bin PATH to user environment in PowerShell

Co-authored-by: dallin <dallin@continue.dev>

Generated with [Continue](https://continue.dev)

Co-Authored-By: Continue <noreply@continue.dev>
…t-perform-those-actions-for-you-

fix: address code review comments for installation scripts
Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2 issues found across 19 files (changes from recent commits).

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="extensions/cli/README.md">

<violation number="1" location="extensions/cli/README.md:12">
P2: Docs now recommend `curl|bash`/`irm|iex` of scripts from the moving `main` branch without pinning or integrity verification, which creates a supply‑chain risk and non‑reproducible installs.</violation>
</file>

<file name="docs/guides/posthog-github-continuous-ai.mdx">

<violation number="1" location="docs/guides/posthog-github-continuous-ai.mdx:1">
P2: Frontmatter delimiter is corrupted (`20---`), so the YAML metadata won’t be parsed as frontmatter and can break MDX metadata/builds.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

Copy link
Contributor

@cubic-dev-ai cubic-dev-ai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

1 issue found across 2 files (changes from recent commits).

Prompt for AI agents (all issues)

Check if these issues are valid — if so, understand the root cause of each and fix them.


<file name="docs/snippets/OSAutoDetect.jsx">

<violation number="1" location="docs/snippets/OSAutoDetect.jsx:15">
P2: Linux user agents are not detected, so they’ll default to the npm tab even though the comment says macOS/Linux should map to tab 0. Add a Linux check so Linux users see the intended tab.</violation>
</file>

Reply with feedback, questions, or to request a fix. Tag @cubic-dev-ai to re-run a review.

@RomneyDa
Copy link
Collaborator Author

RomneyDa commented Feb 4, 2026

squash and merge this preferabiy

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XL This PR changes 500-999 lines, ignoring generated files.

Projects

Status: Todo

Development

Successfully merging this pull request may close these issues.

1 participant