Files
2025-11-30 09:04:55 +08:00

8.1 KiB
Raw Permalink Blame History

Agent IDE CLI 指令參考

安裝方式

方式一Plugin推薦

/plugin marketplace add vivalalova/agent-ide

方式二CLI 安裝

npm install -g agent-ide
# 或從源碼編譯
git clone https://github.com/vivalalova/agent-ide.git
cd agent-ide && pnpm install && pnpm build && npm link

核心功能模組

功能 說明
snapshot 快速生成專案概覽
index 建立程式碼索引
search 搜尋符號、文字
rename 重新命名符號
move 移動檔案並更新 import
analyze 分析程式碼品質
deps 依賴關係分析
shit 垃圾度評分(分數越高越糟)
refactor 程式碼重構操作
plugins 管理語言解析器

CLI 指令詳細說明

1. 專案快照 (snapshot)

基本快照

npx agent-ide snapshot --format json

壓縮級別

# Minimal - 最小資訊
npx agent-ide snapshot --compression minimal

# Medium - 中等資訊
npx agent-ide snapshot --compression medium

# Full - 完整資訊
npx agent-ide snapshot --compression full

輸出到檔案

npx agent-ide snapshot --output project-snapshot.json

指定路徑

npx agent-ide snapshot --path /path/to/project

完整參數列表

  • --path: 專案路徑
  • --compression: 壓縮級別minimal/medium/full
  • --output: 輸出檔案路徑
  • --format: 輸出格式json/table/summary

2. 程式碼索引 (index)

建立索引

npx agent-ide index --path /path/to/project

增量更新

npx agent-ide index --incremental

自訂檔案類型

npx agent-ide index --extensions .ts,.tsx,.js,.jsx

排除規則

npx agent-ide index --exclude "node_modules,dist,build"

完整參數列表

  • --path: 專案路徑
  • --incremental: 增量更新模式
  • --extensions: 指定檔案副檔名
  • --exclude: 排除的目錄或檔案模式
  • --force: 強制重建索引

基本搜尋

npx agent-ide search "UserService" --format json

正則表達式搜尋

npx agent-ide search "function.*User" --type regex --format json

限制結果數量

npx agent-ide search "import" --limit 10 --format json

完整參數列表

  • --type: 搜尋類型text/symbol/regex
  • --limit: 限制結果數量
  • --format: 輸出格式json/list/table
  • --case-sensitive: 大小寫敏感
  • --whole-word: 完整單字匹配

4. 重命名操作 (rename)

⚠️ 必須使用 agent-ide 進行重命名:確保所有引用都正確更新

預覽重命名

npx agent-ide rename --from oldName --to newName --preview

執行重命名

npx agent-ide rename --from oldName --to newName

啟用備份

npx agent-ide rename --from oldName --to newName --backup

批量重命名

npx agent-ide rename --config rename-config.json

完整參數列表

  • --from: 原始名稱
  • --to: 目標名稱
  • --preview: 預覽模式
  • --backup: 自動備份
  • --config: 批量重命名設定檔
  • --path: 專案路徑

5. 檔案移動 (move)

⚠️ 必須使用 agent-ide 進行檔案移動:自動更新所有 import 語句

預覽移動

npx agent-ide move src/old.ts src/new.ts --preview

執行移動

npx agent-ide move src/old.ts src/new.ts

批量移動(遞迴)

npx agent-ide move src/old-module src/new-module --recursive

完整參數列表

  • --preview: 預覽模式
  • --recursive: 遞迴移動整個目錄
  • --backup: 自動備份
  • --update-imports: 自動更新 import預設開啟

6. 品質分析 (analyze)

分析複雜度

npx agent-ide analyze complexity --format json --all

偵測死代碼

npx agent-ide analyze dead-code --format json --all

最佳實踐檢查

npx agent-ide analyze best-practices --format json

完整參數列表

  • --all: 分析所有檔案
  • --file: 分析特定檔案
  • --format: 輸出格式json/table/summary
  • --threshold: 複雜度閾值

7. 依賴分析 (deps)

專案整體依賴

npx agent-ide deps --format json
npx agent-ide deps --format json --all

特定檔案依賴

npx agent-ide deps --file src/service.ts --format json

偵測循環依賴

npx agent-ide deps --detect-circular

完整參數列表

  • --file: 分析特定檔案
  • --all: 分析所有檔案
  • --format: 輸出格式json/graph/table
  • --detect-circular: 偵測循環依賴
  • --max-depth: 最大依賴深度

8. 垃圾度評分 (shit)

基本評分

npx agent-ide shit --format json

詳細報告

npx agent-ide shit --detailed --format json

前 N 個問題檔案

npx agent-ide shit --detailed --top=20 --format json

設定最大允許值CI/CD 質量閘門)

npx agent-ide shit --max-allowed=70

完整參數列表

  • --detailed: 詳細報告
  • --top: 顯示前 N 個問題檔案
  • --max-allowed: CI/CD 質量閘門閾值
  • --format: 輸出格式json/table/summary
  • --file: 分析特定檔案

9. 程式碼重構 (refactor)

提取函式

npx agent-ide refactor extract-function \
  --file src/app.ts \
  --start-line 10 \
  --end-line 20 \
  --function-name handleUser

內聯函式

npx agent-ide refactor inline-function \
  --file src/utils.ts \
  --function-name helperFunction

完整參數列表

  • --file: 目標檔案
  • --start-line: 起始行號extract-function
  • --end-line: 結束行號extract-function
  • --function-name: 函式名稱
  • --preview: 預覽模式

10. 語言解析器管理 (plugins)

列出所有解析器

npx agent-ide plugins list

查看特定解析器資訊

npx agent-ide plugins info typescript

完整參數列表

  • list: 列出所有已安裝的解析器
  • info <name>: 顯示特定解析器的詳細資訊

ShitScore 評分系統

評分維度

  • 複雜度 (30%):高圈複雜度、長函式、深層巢狀
  • 維護性 (30%):死代碼、超大檔案
  • 架構 (30%):循環依賴、高耦合
  • QA (20%):測試覆蓋率、程式碼註解品質

評級標準

  • A (0-29):優秀
  • B (30-49):良好
  • C (50-69):需重構
  • D (70-84):強烈建議重構
  • F (85-100):建議重寫

效能指標

  • 增量索引速度:約 1000 檔案/秒
  • 查詢延遲<50ms快取命中
  • 記憶體佔用~100MB per 10k 檔案

使用建議

優先使用 agent-ide 的場景

  • 跨檔案重命名符號
  • 自動更新 import 路徑
  • 依賴關係分析
  • 程式碼品質掃描
  • 批量重構操作
  • 循環依賴檢測

保持原生工具的場景

  • 簡單檔案讀寫
  • 快速查看檔案內容
  • 單一檔案內的小改動

批量操作範例

批量重命名設定檔

建立 rename-config.json

{
  "renames": [
    { "from": "oldName1", "to": "newName1" },
    { "from": "oldName2", "to": "newName2" },
    { "from": "oldName3", "to": "newName3" }
  ]
}

執行批量重命名:

npx agent-ide rename --config rename-config.json

批量移動目錄

# 移動整個模組
npx agent-ide move src/legacy-module src/modules/legacy --recursive

# 重組專案結構
npx agent-ide move src/utils src/shared/utils --recursive
npx agent-ide move src/helpers src/shared/helpers --recursive

CI/CD 整合範例

#!/bin/bash
# quality-check.sh

echo "Running code quality checks..."

# 生成快照
npx agent-ide snapshot --output reports/snapshot.json

# 檢查 ShitScore
npx agent-ide shit --max-allowed=70 || exit 1

# 分析複雜度
npx agent-ide analyze complexity --all --format json > reports/complexity.json

# 偵測循環依賴
npx agent-ide deps --detect-circular || exit 1

echo "All quality checks passed!"