Pi × EvoX Loop — 智能體經驗繼承 Skill
讓 Agent 的每個坑只踩一次:失敗經驗自動入庫(守衛過濾),同類任務自動召回已驗證修法。
術語約定(0.29):正文以中文為主,技術欄位在首次出現時標註一次英文原名(如「信號匹配 signals_match」),此後一律用中文,不再反覆混排。完整中英對照見
docs/faq.mdQ17。文件地圖(0.21 分層):
- 新用戶只需讀三節:30 秒上手 → 流程 A → 流程 B(約 60 行);其餘按需查。
- 一分鐘判斷要不要用:
docs/one-pager.md(0.30 新增)- 最佳實踐集中入口:
examples/quickstart.md(5 分鐘閉環)+docs/overview.md(專案概覽)+docs/common-mistakes.md(14 條反模式)——三份涵蓋「上手/全景/避坑」。- 本文件其餘部分 = 觸發點/安全摘要/反模式速查/導航;
docs/advanced.md= 回填尋址/時間線/harvest/並發鎖/共享庫/宿主接入/維運/安全門明細;docs/common-mistakes.md= 常見錯誤用法完整清單;docs/config-errors.md= 常見配置錯誤;docs/faq.md= 完整 FAQ。docs/research.md= 流程 C 受控實驗 + 陷阱設計紀律——研究專用,絕大多數用戶無需開啟。
30 秒上手(Quick-Start)
EN: Requires Node >= 22. Optional
@evomap/evolverintegration is GPL-3.0-or-later (only if you install and use--engine evolver); the default light backend is MIT, zero-dependency, zero-exfiltration. Three things only: A recall validated fixes at task start, B deposit after fixing a non-obvious failure, C (optional, research) controlled experiments. Daily use = A/B only. ⚠️ 前置要求:Node ≥ 22(node -v檢查;舊版不支援,需先升級)。可選整合@evomap/evolver為 GPL-3.0-or-later——僅在你主動安裝並使用--engine evolver時涉及,預設 light 後端為 MIT、零依賴零外發。本 Skill 只做三件事:A 任務開始召回已驗證修法、B 修復失敗後沉澱、C(可選,研究用)受控實驗量化收益。日常只用 A/B,C 預設全關,請勿用於生產。
# A — 任務開始,對靶召回(替換成你的任務一句話)
node code/evolver-recall.mjs --query "處理 GBK 編碼檔案報錯" --top 5
# B — 修復了非顯而易見的失敗後,貼原始報錯產生草稿,再補 FIX 落庫
node code/light-cli.mjs draft --error "<原始報錯>" --tool <工具名> --context "<當時在做什麼>"
node code/light-cli.mjs draft --error "<原始報錯>" --strategy "AVOID: <什麼不該做> FIX: <具體參數/命令/編碼>" --commit
命令均在本倉庫根目錄執行;未安裝相依先見下方「安裝」。
首次運行 · 3 步就緒(先跑自檢,再沉澱)
- 裝 Node ≥22(traps 產生器與 pi/evolver 均要求;見 FAQ·Q8);
- 自檢環境:
node code/light-cli.mjs doctor—— 校驗 Node 版本、經驗庫目錄可寫、命中登記目錄可達(失敗項給修正指引); - 點亮經驗庫:空庫無修法可召回屬正常,按下方流程 B 沉澱第一條修法即點亮。
新手必讀(高頻問答速覽)
- 首次運行召回顯示「無可召回修法」? 正常——庫從零開始,先跑一次 B 沉澱即可點亮(FAQ·Q1)。
- Node 版本要求? 需 ≥22(traps 產生器還需 Python 3),過低 pi/evolver 會啟動失敗(FAQ·Q8)。
- 更多問題見
docs/faq.md(完整 14 條)與下方反模式速查。
安裝(一次性)
EN: One-time setup. A/B flows need ONLY Node >= 22 — zero npm dependencies. Get the folder by any of three paths below; any location works (a "skill" is just a folder — put it wherever your host expects, e.g.
~/.claude/skills/pi-evox-lab). Default backend = built-in light (pure Node, MIT). evolver is an optional integration (--engine evolver, needsnpm install). Flow C additionally needs Pi CLI + an OpenAI-compatible LLM key.
三種取得路徑(任選其一):
# 路徑 1:git clone(推薦)
git clone https://github.com/stwhwing/pi-evox-lab.git && cd pi-evox-lab
# 路徑 2:受限網路 → Release zip 直下(附 sha256),解壓即用
# https://github.com/stwhwing/pi-evox-lab/releases (國內可達鏡像見 FAQ Q7)
# 路徑 3:市場一鍵安裝 —— skillhub.cn / ClawHub 搜 pi-evox-loop(WorkBuddy/OpenClaw 用戶)
node -v # 前置要求:Node >= 22(唯一硬相依)
node code/light-cli.mjs doctor # 30 秒自檢——通過即可用,無需任何安裝步驟
- A/B 日常流程零 npm 相依;以下
npm install僅為可選整合/實驗模式 C 準備:
Provider 配置(僅流程 C 需要)
EN: Flow C only - any OpenAI-compatible endpoint;
$ENVinterpolation needs pi >= 0.85.1. Examples + domestic endpoints (DeepSeek/Bailian/SiliconFlow/Zhipu):docs/providers.md.
流程 A:任務開始 — 召回經驗(任何非平凡任務)
EN: Flow A - recall at task start.
--querywith the task text does targeted recall (unrelated experience is never injected - injection is gated by signals_match x query-token overlap, below threshold = no injection). On error (T3), the raw error text IS the query. Multiple matches: geneConflicts drops anti_patterns-mutual low scorers; no targeted hit = no injection. Register the hit at task end with--register-hit --gene <id>(id-addressed, concurrency-safe).
# 國內高頻場景(中文 Windows 日誌 / CSV 預設 GBK,按 utf-8 讀必炸)——空庫跑 starter 後先試這條最易見效
node code/evolver-recall.mjs --query "讀取中文日誌報 UnicodeDecodeError" --top 5
# 推薦:帶上任務文字做「對靶」召回(與任務無關的經驗不會注入)
node code/evolver-recall.mjs --query "<當前任務的一句話/關鍵信號>" --top 5
# 遇到報錯時(T3):報錯原文即查詢——錯誤本身就是提醒
node code/evolver-recall.mjs --error "UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc4"
- 只輸出「已審核 且 通過修法守衛 且 與查詢對靶」的編號修法列表(空庫有明確提示,屬正常);
- 參數預設值:
--top預設 5 條(軟提示注入有上下文成本,寧少勿多);經驗庫無硬性容量上限,但建議單庫 <500 條(超過後對靶精度下降,可用共享池分流); - 對靶規則:按基因
signals_match命中與查詢詞的交集打分,低於閾值即整條不注入(避免不對靶注入反而增加成本); - 多基因衝突時:
geneConflicts守衛已自動剔除anti_patterns互斥的低分項;仍有多條時取分高者;無對靶項時寧可不注入,不用無關基因湊數; - 與本任務相關時優先採用;結束時實際採用了某條,登記命中(
--gene <id>按 id 尋址,並發安全):
node code/evolver-recall.mjs --register-hit --gene <asset_id或gene_id> --note "<任務一句話>"
- 無關的經驗不要硬套;未採用的條目不必登記。
流程 B:失敗修復後 — 沉澱經驗
EN: Flow B - deposit after fixing a non-obvious failure. Deposit bar (any one): docs/2+ tries needed, environment-specific, counter-intuitive error, or second occurrence. Guided path:
draft --errorauto-extracts signals + pre-fills AVOID + writes anti_patterns; fill in FIX then--commit. Manual path:distillwith explicit signals. strategy MUST be an executable fix (params/commands/encodings) - success summaries are filtered by the repair-signal guard.--shareableonly for genes meant for the shared pool. 判定標準(滿足任一條即值得沉澱):
- 排查過程需要查文件 / 試錯 ≥2 次才解決;
- 依賴本機或環境特性(編碼、路徑規範、shell 差異、網路環境);
- 報錯資訊反直覺,或與文件描述不符;
- 同一坑在歷史任務中出現過第二次。 (不滿足任一條的普通失敗不必沉澱——避免經驗庫雜訊。)
推薦路徑:引導式(貼原始報錯,信號與「負經驗」自動抽取)
# 1) 產生草稿:自動抽 signals_match + 預填 AVOID 模板 + 寫入 anti_patterns(負經驗 token)
node code/light-cli.mjs draft --error "<原始報錯文字>" --tool <出錯工具名> --context "<你當時在做什麼>"
# 2) 照草稿補全 FIX 後落庫(--strategy 覆蓋預填佔位符)
node code/light-cli.mjs draft --error "<原始報錯文字>" \
--strategy "AVOID: <什麼不該做> FIX: <具體參數/命令/編碼>" --commit
# 3) 審核(四語義狀態機見下方「審核狀態機」單節;approve 自動先跑取證)
node code/light-cli.mjs approve <gene_id>
AVOID/FIX 模板適用邊界(寫清才不被守衛拒):
| 段 | 寫什麼 | 邊界 |
|---|---|---|
AVOID: | 什麼不該做(負經驗,可含危險詞——那是警告) | 一句到兩句;不要寫成功總結 |
FIX: | 具體到參數/命令/編碼的可執行修法 | 必須真填——佔位符/重試日誌/旁白會被 depositionGate 拒絕(fail-closed) |
anti_patterns: | 單 token 字面量(如 assume-default-utf8) | 衝突判定按整串匹配,勿寫 kebab 長句 |
signals_match: | 召回對靶信號詞 | 與查詢詞有交集才召得回;勿堆無關詞 |
備選路徑:手寫式(已明確 signals 時)
node code/light-cli.mjs distill --category repair --signals bash,exception \
--strategy "<一句話修法;多步用分號分隔;要具體到參數/命令/編碼>" \
--summary "<坑的一句話描述>" [--shareable]
- strategy 必須寫成可執行修法(含具體參數/命令),不要寫成功總結——召回側有修法守衛,成功總結會被過濾(寧缺勿濫);
--shareable僅當你希望該基因進入共享池時加(預設不共享 = 不外發);- 沉澱門檻的真實數據(誠實邊界):生產真實會話中可自動抽取的"乾淨修法對"密度很低(實測
distillablePairs=0)——本庫基因主要來自人工/引導式沉澱。
沉澱質檢 depositionGate(0.17.0,fail-closed)
EN: Quality gate at DEPOSITION time (fail-closed): rejects unfilled placeholder / retry-log repetition / narration openings / missing repair-signal words / AVOID-without-FIX. Non-interactive deposits default to quarantined. Full review semantics: the「審核狀態機」section below.
distill/draft --commit時逐條檢查,不合法直接拒絕(不落盤):
| 拒絕條件 | 理由 | 下一步 |
|---|---|---|
FIX 是未填佔位符 <在此填寫可執行修法> | 注入後毫無價值 | 在 draft 裡補上真實修法再提交 |
retry with corrected args(重試日誌複述) | "重試然後好了"不是修法 | 寫 AVOID(為何錯)+FIX(怎麼做) |
| 旁白開場(Now I understand…) | 推理流水不可執行 | 同上 |
| 缺修法信號詞 | 不像在描述坑與修法 | 同上 |
| 有 AVOID 無 FIX(半成品) | 只有坑沒有修法,注入後毫無價值(0.22 複審實證:3 條截斷 deposit 全是此型態) | 補上可執行修法(參數/命令/編碼) |
審核狀態機(單一事實源 · 0.36 收斂)
基因從入庫到可注入的全部審核語義只在這一節維護,其餘文件一律指到這裡(防多處表述漂移——0.35 評測點名)。 EN: The single source of truth for all review semantics; other docs only point here.
| 場景 | 預設行為 | 覆蓋方式 |
|---|---|---|
本地互動式沉澱(draft --commit / distill,有 TTY) | 自動通過 | config --auto-approve off 改人工;僅作用於本地沉澱 |
| 本地非互動沉澱(腳本/cron/管道,無 TTY) | 預設隔離(quarantined) | 顯式 --auto-approve 才通過 |
approve <gene_id> | 自動先跑取證——本地四台帳(工具錯誤/召回/注入/回填)三級輸出(強證據/弱上下文/無證據),核對一致才批 | --skip-evidence 為已知無證據場景的顯式逃生門(不鼓勵);結論被後續事件推翻的保持隔離並留痕 |
池匯入 gene import / gene pull | official tier 直通(簽名驗證);community 預設隔離 | --tier 決定 |
- 為什麼 approve 綁死取證:0.20.3 建了
evidence命令卻依賴"記得跑"——當天審 6 條全部沒跑。機制必須綁在動作節點上(T3 哲學:錯誤本身就是提醒)。 - 狀態台帳
review.jsonl為 LWW 追加式,approve/quarantine 雙向可逆;info的「待審」= 最後狀態既非 approved 也非 quarantined。 - 與兩層品質門的關係:depositionGate 在入庫前拒收(上節),四道守衛在召回側過濾(下節)——任何一層拒絕都不注入。
- 無本地證據的基因(共享池/其他機器/起步包來源)按內容與來源審核,批准時註明。
EN: Review-with-evidence (0.20.3): before
approve, runevidence <gene_id>to check the four local ledgers for events matching the gene's claimed failure/fix. Approve only when consistent; genes whose conclusions were overturned by later events stay quarantined with an audit note. Genes without local evidence (pool imports / other machines / starter pack) are reviewed on content and source, noted at approval.
基因簽名與 provenance(0.21)
EN: Every deposit is signed with this machine's Ed25519 identity (private key 0600, never leaves the machine); pool imports verify signatures - tampered content is REJECTED. Version-by-version details (v2 canonicalization, source attribution, source_kv, decay):
docs/advanced.md§Provenance.
- 沉澱自動簽、入池隨行、匯入驗簽:內容被篡改 → 拒絕匯入;無簽名的老基因原樣接受(legacy);
- 私鑰不出本機;公鑰隨基因出入池供他機驗簽——信任模型是「按 keyid 溯源」,不是中心化 CA;
- 溯源欄位隨 deposit/回填自動記錄(
source_model/source_host/source_kv壓縮方案族);基因有效性按回饋衰減(時間半衰期 90 天 + 否定壓力,地板 0.25,無回饋不衰減)——逐版明細(v2 規範化 / 精確歸因 / 相位留痕 / 衰減參數)見docs/advanced.md§Provenance。
部署與分發(0.23)
EN: Download paths, host integration, pool collaboration, concurrency semantics and scoring; version-by-version detail in
docs/advanced.md§Deployment.
- 下載:GitHub Release zip / npm(國內鏡像見 FAQ Q7,附 sha256 校驗);
- 宿主接入:
light-cli.mjs install <claude-code|cursor|codex|agents-md>(--yes落盤);OpenClaw/Hermes 用install-hooks;觸發規程可install-snippet寫進任意指令檔案; - 基因池協作:
gene pull --pool <URL|命名> --tier official [--scene <場景>](簽名驗證);gene submit --bundle <file>回傳維護者;命名池見~/.evomap/pools.json;貢獻條款見 CONTRIBUTING.md(CC-BY-4.0); - 並發語義(三層,完整行為表見
docs/boundary-and-triggers.md§5):單機多會話=withLock 檔案鎖;跨機=基因池 Git 化(LWW 台帳裁定);多宿主按 gene_id 尋址(0.18 起); - 召回評分與閾值(公開數值):signals 命中 +3/個 + 正文 token 交集 +1/個 + 負載均衡偏置 ±2;低於閾值 2 分不注入(不對靶注入比不注入更差,實測 +36pp);分詞=ASCII token(≥3 字元)+ 中文 2 字二元詞——多字中文短語寫進 signals 無效(
fix-signals可體檢); - 會話圍欄(0.27):
session open "<任務>"一步完成 T1 召回+記帳,session close "<結論>"收尾——未配對的 open/close 會被構建門禁拒絕(審計綁定); - 效果量化與回填:
report週報(L1 活性/L2 回填率/L3 復發,--json機讀);recall --record "<結論>"回填驗證結論;license verify <token>驗證 Ed25519 簽名許可; - IO 韌性與錯誤碼(0.34):瞬態錯誤自動重試(3 次/3s)→ 連續 5 次失敗熔斷 10s(IO 恢復即閉合);全部失敗附具名錯誤碼
[E_USAGE]/[E_ARGS]/[E_GUARD]/[E_NOTFOUND]/[E_INTERNAL](保留 0/1/2 退出碼)——參數與完整表見docs/advanced.md; - 理論出處:異構驗證的問題意識來自 arXiv:2512.05117(詳見 README 致謝區與
docs/research.md);逐版明細(溯源/別名觸發詞/許可/衰減參數)見docs/advanced.md§Deployment。
安全:四道門(0.16.0)
EN: Four gates: repair-signal guard, narration guard, injection guard (malice; AVOID=warning allowed vs FIX=instruction blocked), redaction gate (privacy, fail-closed off-machine). Per-gate details:
docs/security-and-license.md§Gates.
| # | 門 | 管什麼 | 在哪生效 |
|---|---|---|---|
| 1 | 修法守衛 | 有沒有真修法(無可執行內容 → 不注入;寧缺勿濫) | 召回 |
| 2 | 敘述守衛 | 是不是旁白流水(旁白對智能體是零資訊,實測等效雜訊 +36pp) | 召回 |
| 3 | 注入守衛 | 是不是惡意指令(提示詞注入 → 不注入;對抗"基因反向操縱宿主"的主防線) | 召回(CLI / Pi 擴展橋精簡版 / 編排器)+ 匯入 + 匯出 |
| 4 | 脫敏閘門 | 會不會洩私有關聯內容(IP/路徑/金鑰 → 攔截不出網) | 匯出 + 匯入 |
- 降級語義:匯出/匯入 fail-closed(守衛模組缺失即拒絕執行);召回側只跳過注入門、其餘三門照常(宿主 bootstrap 路徑不因守衛失敗而阻斷使用者——唯讀不阻斷、寫入必須 closed)。
- 每道門具體掃什麼、命中後的行為、0.31 修復的兩個漏檢與回歸用例:統一見
docs/security-and-license.md§Gates——本文不複述注入觸發特徵,避免文件自身被掃描器當成樣本(本倉有為此發版的先例)。
能力邊界速查(什麼時候別指望它)
不適用場景 6 類(多機同寫一庫 / 100% 避坑保證 / 即時同步庫 / 一次性任務 / 當權威知識庫 / 跨架構直接複用)與量化邊界(注入預設 5 條、庫規模上限未實測、跨機無分散式鎖、Node ≥22)統一見
docs/boundary-and-triggers.md§1–§2。 EN: Capability limits ("when NOT to use") and quantitative bounds:docs/boundary-and-triggers.md§1–§2.
什麼時候提醒:五個觸發點(0.16.0 的核心設計)
EN: Recall bound to concrete action nodes, never left to memory: T1 task start, T2 before first side-effecting action, T3 on error (the error text IS the query), T4 after fixing, T5 task end (register-hit/negate). Full spec:
docs/boundary-and-triggers.md. 「裝了技能但沒人調用」是本專案最根本的失效模式——連作者都會忘(實測:相關基因能召回排 #1,卻因為動手前沒跑召回而重複踩坑)。所以不能指望"用戶記得",必須把召回綁死在具體動作節點上。
| # | 觸發點 | 時機 | 命令 | 沒接會怎樣 |
|---|---|---|---|---|
| T1 | 任務開始 | 拿到非平凡任務、規劃之前 | recall --query "<任務>" | 預防失效:該避的坑照踩 |
| T2 | 行動前 | 即將執行第一次不可逆動作之前(寫檔案/提交程式碼/部署/調外部介面/刪改數據);同一任務內同類動作只觸發一次,後續沿用本次結論 | 同上(query=將要做的具體動作,如"用腳本批次改寫檔案") | 貼身預防(可選) |
| T3 | 遇到報錯 | 工具返回錯誤、準備重試之前 | recall --error "<報錯原文>" | 最可惜:明明庫裡就有修法,卻盲目重試 |
| T4 | 修好坑後 | 修復了一個不顯而易見的坑 | draft --error ...(沉澱) | 經驗流失,下台機器再踩 |
| T5 | 任務結束 | 收尾 | --register-hit --gene <id> / --negate --gene <id> | 無法度量,失效修法發現不了 |
T3 單獨拎出來(收益最高、卻最容易被忽略):唯一「不用你記得」的觸發點——報錯本身就是提醒。工具返回錯誤、準備重試之前,把報錯原文直接當查詢(不要自己概括):node code/evolver-recall.mjs --error "<報錯原文>";命中後按修法重試,仍失敗 → 走 T4 沉澱。
完整觸發規格統一見
docs/boundary-and-triggers.md——含 T2 判定口徑與 3 個例子、多宿主並發矩陣、觸發詞↔命令映射、三類宿主接入方式、國內鏡像、「裝了沒生效」自檢。本文件只保留上面這張核心表,兩處不再各自漂移。 觸發詞只是調用提示,不是召回匹配機制(命中靠signals_match × query-token對靶);任務開始只要判定為"非平凡"就走 T1,不需措辭命中任何一組。
常見錯誤用法(反模式速查)
EN: Anti-pattern quick list - each row explains the MECHANISM, not just the symptom. Full 14-item catalog with [A] evidence:
docs/common-mistakes.md. Key ones: success-summary strategies are noise (+36pp worse than nothing), model-may-fail traps have unreliable hit rates, token deltas need a no-injection control group (~-22% repeat-execution baseline), error counting must use authoritative flags (isError=true), cold start needs flow-B deposits first. 每條附「為什麼會錯」——講機制而非現象。完整清單(含更多條目)見docs/common-mistakes.md。
| 錯誤做法 | 為什麼會錯(機制) | 正確做法 |
|---|---|---|
| 任務無關也要套召回 | 不對靶基因反而增加成本(+36pp 雜訊) | 查詢與任務無關時不要跑召回 |
| 成功總結當修法 | 成功總結缺乏可執行內容,修法守衛會過濾 | 寫 AVOID+FIX,且 FIX 含具體參數/命令 |
| 召回不等於觸發詞比對 | 召回靠 signals_match × query-token 對靶,不是靠觸發詞命中 | 任務非平凡就走 T1,不需特定措辭 |
| 忽略 T3 強制召回點 | T3 的報錯原文是最佳查詢,錯過它最可惜 | 遇到報錯直接跑 recall --error "<報錯原文>" |
| 多條無關基因照單全收 | geneConflicts 已剔除低分項,仍有多條取分高者 | 依分數取用,分低的不注入 |
| 空庫就想召回修法 | 庫從零開始,需要先沉澱 | 先跑一次 B 沉澱即可點亮 |
| 沉澱時 FIX 用佔位符 | depositionGate 會直接拒絕(fail-closed) | 補上真實的參數/命令/編碼 |
| 沉澱時只有 AVOID 無 FIX | 只有坑沒有修法,注入後毫無價值 | 補上可執行修法 |
| 基因庫過大不清理 | 超過 500 條對靶精度下降 | 清理或使用共享池分流 |
| 跨機直接複用基因 | 無分布式鎖,可能導致衝突 | 透過基因池協作(LWW 台帳) |
| 不設定 --top 參數 | 預設 5 條已足夠,過多會增加上下文成本 | 按任務複雜度適量調整 |
| 忽略簽名驗證 | 內容被篡改的基因可能引入惡意指令 | 匯入時務必驗簽 |
| 生產環境開啟流程 C | 受控實驗研究專用,不適用生產 | C 預設全關,僅在研究環境使用 |
| 不跑自檢直接使用 | 無法確認環境是否滿足要求 | 先跑 node code/light-cli.mjs doctor |
完整 14 條反模式及 [A] 級證據(含實測數據)見
docs/common-mistakes.md。
文件導航索引
| 文件 | 適合誰 | 內容 |
|---|---|---|
docs/one-pager.md | 一分鐘判斷要不要用 | 專案一句話、三個對比案例、核心參數 |
examples/quickstart.md | 首次上手 | 5 分鐘閉環(建立 → 沉澱 → 召回 → 驗證) |
docs/overview.md | 專案概覽 | 架構、術語、核心流程圖 |
docs/common-mistakes.md | 想避免踩坑 | 13 條反模式 + 實測數據 + 修復指引 |
docs/advanced.md | 進階用戶 | 回填尋址、時間線、harvest、並發鎖、共享庫、宿主接入、維運、安全門明細 |
docs/faq.md | 疑問解答 | 14 條常見問題,含國內鏡像、Node 版本、空庫處理等 |
docs/config-errors.md | 配置除錯 | 常見配置錯誤及解決方案 |
docs/research.md | 研究用途 | 流程 C 受控實驗 + 陷阱設計紀律 |
docs/security-and-license.md | 安全與授權 | 四道守衛明細、簽名驗證、授權條款 |
docs/boundary-and-triggers.md | 邊界與觸發 | 不適用場景、量化邊界、五個觸發點完整規格、並發語義 |
docs/providers.md | 流程 C 配置 | API 端點設定範例(含 DeepSeek/Bailian/SiliconFlow/Zhipu) |
文件版本:本文件對應 pi-evox-loop 0.36 版本。各節內容跨版遷移記錄見
CHANGELOG.md。 授權:預設 light 後端為 MIT;@evomap/evolver整合為 GPL-3.0-or-later;基因內容貢獻為 CC-BY-4.0。詳見LICENSE與CONTRIBUTING.md。