把iflow装进U盘,随插随用

iFlow CLI 便携版制作教程

:clipboard: 前置准备

1. 下载Node.js便携版

2. 准备U盘

  • 确保U盘有足够空间(建议至少500MB)

:police_car_light: 注意事项

  • 需要管理员权限运行安装脚本

  • 确保网络连接正常(首次安装需要下载iFlow CLI)

  • 建议使用Node.js v20.12.2版本以确保兼容性

  • 重要:先新建.txt文件,复制代码后要"另存为",把最下面的编码格式改成ANSI,否则会出现编码错误

:rocket: 自动化安装代码

将以下代码保存为 portable_iflow_setup_ansi.bat,双击运行即可自动完成安装:


@echo off

chcp 936 >nul 2>&1

echo ========================================

echo iFlow CLI 便携版自动安装脚本

echo ========================================

echo.

REM 检测USB驱动器

set USB_DRIVE=

for /f "tokens=2 delims==" %%i in ('wmic logicaldisk where "drivetype=2" get deviceid /value 2^>nul') do (

set USB_DRIVE=%%i

goto :found_usb

)

:found_usb

if "%USB_DRIVE%"=="" (

echo 错误:未找到USB驱动器,请插入USB驱动器后重试

pause

exit /b

)

echo 找到USB驱动器: %USB_DRIVE%

echo.

REM 创建目录结构

echo 创建目录结构...

if not exist "%USB_DRIVE%\PortableApps" mkdir "%USB_DRIVE%\PortableApps"

if not exist "%USB_DRIVE%\PortableApps\nodejs" mkdir "%USB_DRIVE%\PortableApps\nodejs"

if not exist "%USB_DRIVE%\PortableApps\iflow" mkdir "%USB_DRIVE%\PortableApps\iflow"

REM 检查Node.js

if not exist "%USB_DRIVE%\PortableApps\nodejs\node-v20.12.2-win-x64\node.exe" (

echo.

echo 请先下载Node.js便携版并解压到以下目录:

echo %USB_DRIVE%\PortableApps\nodejs\node-v20.12.2-win-x64\

echo.

echo 下载地址:https://nodejs.org/download/release/v20.12.2/node-v20.12.2-win-x64.zip

echo.

pause

exit /b

)

REM 设置环境变量并安装iFlow CLI

echo 设置环境变量...

set PATH=%USB_DRIVE%\PortableApps\nodejs\node-v20.12.2-win-x64;%PATH%

set NODE_PATH=%USB_DRIVE%\PortableApps\nodejs\node_modules

set npm_config_prefix=%USB_DRIVE%\PortableApps\nodejs

echo 安装iFlow CLI...

npm install -g @iflow-ai/iflow-cli

REM 创建启动脚本

echo 创建启动脚本...

echo @echo off > "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo chcp 936 ^>nul 2^>^&1 >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo echo Starting portable iFlow CLI... >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo REM Get current drive letter from script location >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo set SCRIPT_DRIVE=%%~d0 >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo REM Set up portable Node.js environment >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo set PATH=%%SCRIPT_DRIVE%%\PortableApps\nodejs\node-v20.12.2-win-x64;%%PATH%% >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo set NODE_PATH=%%SCRIPT_DRIVE%%\PortableApps\nodejs\node_modules >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo set npm_config_prefix=%%SCRIPT_DRIVE%%\PortableApps\nodejs >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo REM Change to user profile directory >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo cd /d %%USERPROFILE%% >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo REM Start iFlow CLI using local installation >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo "%%SCRIPT_DRIVE%%\PortableApps\nodejs\iflow.cmd" %%* >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

echo pause >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

REM 创建桌面快捷方式脚本

echo 创建桌面快捷方式脚本...

echo @echo off > "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo chcp 936 ^>nul 2^>^&1 >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo REM Get current drive letter from script location >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo set SCRIPT_DRIVE=%%~d0 >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo powershell -Command "try { $WshShell = New-Object -comObject WScript.Shell; $Shortcut = $WshShell.CreateShortcut('%%USERPROFILE%%\Desktop\iFlow_Portable.lnk'); $Shortcut.TargetPath = 'cmd.exe'; $Shortcut.Arguments = '/k %%SCRIPT_DRIVE%%\PortableApps\iflow\start_iflow.bat'; $Shortcut.WorkingDirectory = '%%USERPROFILE%%'; $Shortcut.IconLocation = '%%SystemRoot%%\System32\shell32.dll,13'; $Shortcut.Save(); Write-Host 'Portable iFlow shortcut created on desktop' } catch { Write-Host 'Error creating shortcut:' $_.Exception.Message }" >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo echo Portable iFlow shortcut created on desktop >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo pause >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo.

echo ========================================

echo iFlow CLI便携版安装完成!

echo ========================================

echo.

echo 使用方法:

echo 1. 运行 %USB_DRIVE%\PortableApps\iflow\create_shortcut.bat 创建桌面快捷方式

echo 2. 双击桌面上的 "iFlow_Portable" 快捷方式启动iFlow

echo.

echo 或者直接运行: %USB_DRIVE%\PortableApps\iflow\start_iflow.bat

echo.

pause

:memo: 使用方法

  1. 运行 create_shortcut.bat 创建桌面快捷方式

  2. 双击桌面 “iFlow_Portable” 快捷方式启动

  3. 或直接运行 start_iflow.bat

温馨提示:在其他电脑上使用时,先登录您的iFlow账号,然后就可以正常使用所有功能了!


让 iFlow CLI 真正实现"一个U盘,走遍天下"! :globe_showing_europe_africa:

4 个赞

还能这样操作 :hushed_face:

这个好,楼主大爱,是否稳定呢

我目前用挺稳定的

补充:
1.如果运行portable_iflow_setup_ansi.bat闪退,可能是环境兼容不了中文。放一个纯英文的代码

2.如果要更新的话,删掉 U盘:\PortableApps\nodejs\node_modules 的@iflow-ai文件夹,再重新运行portable_iflow_setup_ansi.bat就行

@echo off
chcp 936 >nul 2>&1
echo Creating portable iFlow environment...
echo.

REM Check for USB drives
set USB_DRIVE=
for /f "tokens=2 delims==" %%i in ('wmic logicaldisk where "drivetype=2" get deviceid /value 2^>nul') do (
    set USB_DRIVE=%%i
    goto :found_usb
)

:found_usb
if "%USB_DRIVE%"=="" (
    echo Error: No USB drive found, please insert USB drive and try again
    pause
    exit /b
)

echo Found USB drive: %USB_DRIVE%
echo.

REM Create directory structure
echo Creating directory structure...
if not exist "%USB_DRIVE%\PortableApps" mkdir "%USB_DRIVE%\PortableApps"
if not exist "%USB_DRIVE%\PortableApps\nodejs" mkdir "%USB_DRIVE%\PortableApps\nodejs"
if not exist "%USB_DRIVE%\PortableApps\nodejs\global_modules" mkdir "%USB_DRIVE%\PortableApps\nodejs\global_modules"
if not exist "%USB_DRIVE%\PortableApps\iflow" mkdir "%USB_DRIVE%\PortableApps\iflow"

REM Copy Node.js portable version (need to download first)
echo Please download Node.js portable version to desktop, then press any key to continue...
echo Download URL: https://nodejs.org/download/release/v20.12.2/node-v20.12.2-win-x64.zip
pause

REM Extract Node.js to USB drive (manual operation instructions)
echo.
echo Manual operation steps:
echo 1. Download Node.js portable ZIP file
echo 2. Extract to: %USB_DRIVE%\PortableApps\nodejs\
echo 3. Press any key to continue after completion...
pause

REM Set environment variables and install iFlow
echo Configuring environment...
set PATH=%USB_DRIVE%\PortableApps\nodejs;%PATH%
set NODE_PATH=%USB_DRIVE%\PortableApps\nodejs\node_modules
set npm_config_prefix=%USB_DRIVE%\PortableApps\nodejs

echo Installing iFlow...
call npm install -g @iflow-ai/iflow-cli

REM Create startup script
echo Creating startup script...
echo @echo off > "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo chcp 936 ^>nul 2^>^&1 >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo echo Starting portable iFlow CLI... >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo REM Get current drive letter from script location >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo set SCRIPT_DRIVE=%%~d0 >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo REM Set up portable Node.js environment >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo set PATH=%%SCRIPT_DRIVE%%\PortableApps\nodejs\node-v20.12.2-win-x64;%%PATH%% >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo set NODE_PATH=%%SCRIPT_DRIVE%%\PortableApps\nodejs\node_modules >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo set npm_config_prefix=%%SCRIPT_DRIVE%%\PortableApps\nodejs >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo REM Change to user profile directory >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo cd /d %%USERPROFILE%% >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo REM Start iFlow CLI using local installation >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo "%%SCRIPT_DRIVE%%\PortableApps\nodejs\iflow.cmd" %%* >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo echo. >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"
echo pause >> "%USB_DRIVE%\PortableApps\iflow\start_iflow.bat"

REM Create desktop shortcut script
echo Creating shortcut script...
echo @echo off > "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"
echo chcp 936 ^>nul 2^>^&1 >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"
echo REM Get current drive letter from script location >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"
echo set SCRIPT_DRIVE=%%~d0 >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"
echo powershell -Command "try { $WshShell = New-Object -comObject WScript.Shell; $Shortcut = $WshShell.CreateShortcut('%%USERPROFILE%%\Desktop\iFlow_Portable.lnk'); $Shortcut.TargetPath = 'cmd.exe'; $Shortcut.Arguments = '/k %%SCRIPT_DRIVE%%\PortableApps\iflow\start_iflow.bat'; $Shortcut.WorkingDirectory = '%%USERPROFILE%%'; $Shortcut.IconLocation = '%%SystemRoot%%\System32\shell32.dll,13'; $Shortcut.Save(); Write-Host 'Portable iFlow shortcut created on desktop' } catch { Write-Host 'Error creating shortcut:' $_.Exception.Message }" >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"
echo echo Portable iFlow shortcut created on desktop >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"
echo pause >> "%USB_DRIVE%\PortableApps\iflow\create_shortcut.bat"

echo.
echo Portable iFlow environment setup completed!
echo.
echo Usage:
echo 1. Insert USB drive
echo 2. Run %USB_DRIVE%\PortableApps\iflow\create_shortcut.bat to create desktop shortcut
echo 3. Double-click "iFlow_Portable" on desktop to start
echo.
pause
1 个赞

用api连接就用不着登录账号了吧?

我双击后出现错误

用api在新电脑上也要重新登录,不过这好像是因为登录信息保存在本地电脑,把本地的登录信息拷走,然后复制到新电脑上可能不用登录。我还没尝试。路径是C:\Users\用户.iflow。可以尝试一下

没插U盘,虽然感觉不太可能。或者是要把文件放U盘运行?我没遇到过,不太清楚问题。但是我测试了U盘的盘符不会影响安装使用

我反正是在远程服务器上部署了,就是闪烁严重,别的比U盘实用多了

适用于win7吗

U盘被识别成固定驱动器了, 改一下路径试试,set USB_DRIVE= (你自己的U盘,如 set USB_DRIVE=F:)

改成直接输入路径,或者枚举usb设置进行选择吧

闪烁应该是使用终端的兼容性导致的,也有可能是shh的问题,我也没研究明白

有没有把claude code装进u盘的教程,我这两个cli都想在u盘用

感谢分享,整理如下:

bat

@echo off

chcp 936 >nul 2>&1

echo ========================================

echo iFlow CLI 便携版自动安装脚本

echo ========================================

echo.

REM 检测USB驱动器

set USB_DRIVE=H:

goto :found_usb

)

:found_usb

if “%USB_DRIVE%”==“” (

echo 错误:未找到USB驱动器,请插入USB驱动器后重试

pause

exit /b

)

echo 找到USB驱动器: %USB_DRIVE%

echo.

REM 创建目录结构

echo 创建目录结构…

if not exist “%USB_DRIVE%\mysoftware” mkdir “%USB_DRIVE%\mysoftware”

if not exist “%USB_DRIVE%\mysoftware\nodejs” mkdir “%USB_DRIVE%\mysoftware\nodejs”

if not exist “%USB_DRIVE%\mysoftware\iflow” mkdir “%USB_DRIVE%\mysoftware\iflow”

REM 检查Node.js

if not exist “%USB_DRIVE%\mysoftware\nodejs\node-v20.12.2-win-x64\node.exe” (

echo.

echo 请先下载Node.js便携版并解压到以下目录:

echo %USB_DRIVE%\mysoftware\nodejs\node-v20.12.2-win-x64\

echo.

echo 下载地址:https://nodejs.org/download/release/v20.12.2/node-v20.12.2-win-x64.zip

echo.

pause

exit /b

)

REM 设置环境变量并安装iFlow CLI

echo 设置环境变量…

set PATH=%USB_DRIVE%\mysoftware\nodejs\node-v20.12.2-win-x64;%PATH%

set NODE_PATH=%USB_DRIVE%\mysoftware\nodejs\node_modules

set npm_config_prefix=%USB_DRIVE%\mysoftware\nodejs

echo 安装iFlow CLI…

npm install -g @iflow-ai/iflow-cli

REM 创建启动脚本

echo 创建启动脚本…

echo @echo off > “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo chcp 936 ^>nul 2^>^&1 >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo echo Starting portable iFlow CLI… >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo echo. >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo REM Get current drive letter from script location >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo set SCRIPT_DRIVE=%%~d0 >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo echo. >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo REM Set up portable Node.js environment >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo set PATH=%%SCRIPT_DRIVE%%\mysoftware\nodejs\node-v20.12.2-win-x64;%%PATH%% >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo set NODE_PATH=%%SCRIPT_DRIVE%%\mysoftware\nodejs\node_modules >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo set npm_config_prefix=%%SCRIPT_DRIVE%%\mysoftware\nodejs >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo echo. >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo REM Change to user profile directory >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo cd /d %%USERPROFILE%% >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo echo. >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo REM Start iFlow CLI using local installation >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo “%%SCRIPT_DRIVE%%\mysoftware\nodejs\iflow.cmd” %%* >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo echo. >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

echo pause >> “%USB_DRIVE%\mysoftware\iflow\start_iflow.bat”

REM 创建桌面快捷方式脚本

echo 创建桌面快捷方式脚本…

echo @echo off > “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo chcp 936 ^>nul 2^>^&1 >> “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo REM Get current drive letter from script location >> “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo set SCRIPT_DRIVE=%%~d0 >> “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo powershell -Command “try { $WshShell = New-Object -comObject WScript.Shell; $Shortcut = $WshShell.CreateShortcut(‘%%USERPROFILE%%\Desktop\iFlow_Portable.lnk’); $Shortcut.TargetPath = ‘cmd.exe’; $Shortcut.Arguments = ‘/k %%SCRIPT_DRIVE%%\mysoftware\iflow\start_iflow.bat’; $Shortcut.WorkingDirectory = ‘%%USERPROFILE%%’; $Shortcut.IconLocation = ‘%%SystemRoot%%\System32\shell32.dll,13’; $Shortcut.Save(); Write-Host ‘Portable iFlow shortcut created on desktop’ } catch { Write-Host ‘Error creating shortcut:’ $_.Exception.Message }” >> “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo echo Portable iFlow shortcut created on desktop >> “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo pause >> “%USB_DRIVE%\mysoftware\iflow\create_shortcut.bat”

echo.

echo ========================================

echo iFlow CLI便携版安装完成!

echo ========================================

echo.

echo 使用方法:

echo 1. 运行 %USB_DRIVE%\mysoftware\iflow\create_shortcut.bat 创建桌面快捷方式

echo 2. 双击桌面上的 “iFlow_Portable” 快捷方式启动iFlow

echo.

echo 或者直接运行: %USB_DRIVE%\mysoftware\iflow\start_iflow.bat

echo.

pause


注意:

1. 下载Node.js便携版[|建议使用Node.js v20.12.2版本以确保兼容性](https://nodejs.org/download/release/v20.12.2/node-v20.12.2-win-x64.zip)

*解压到:[U盘]:\PortableApps\nodejs\node-v20.12.2-win-x64\

解压到:[U盘]:\mysoftware\nodejs\node-v20.12.2-win-x64\

mysoftware(你的文件目录)

2. 管理员运行portable_iflow_setup_ansi.bat

  1. 先新建.txt文件,复制代码后要"另存为",把最下面的编码格式改成ANSI,否则会出现编码错误

  2. 修改bat脚本:

- PortableApps 全部替换为 mysoftware(你的文件目录)

- set USB_DRIVE=F:

如果U盘被识别成固定驱动器或者你要安装在其他硬盘下

感谢分享!不知同样的思路能否把opencode装进U盘?

你好,远程服务器上部署了,只要能连接上这个远程机器的任一机器都能用iflow吗?

是的,但是注意要更新key的过时。