

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1# Copilot 自定義指令23此文件為 VS Code GitHub Copilot 的 Agent Mode 提供專案上下文。45---67## 開發哲學 💡89> **「想要寫文件的時候,就更新 Memory Bank 吧!」**10>11> **「想要零散測試的時候,就寫測試檔案進 tests/ 資料夾吧!」**1213---1415## 法規遵循1617你必須遵守以下法規層級:18191. **憲法**:`CONSTITUTION.md` - 最高原則,不可違反202. **子法**:`.github/bylaws/*.md` - 細則規範213. **技能**:`.claude/skills/*/SKILL.md` - 操作程序2223---2425## 架構原則2627- 採用 **DDD (Domain-Driven Design)**28- **DAL (Data Access Layer) 必須獨立**29- 依賴方向:`Presentation → Application → Domain ← Infrastructure`3031詳見:`.github/bylaws/ddd-architecture.md`3233---3435## Python 環境(uv 優先)3637- **優先使用 uv** 管理套件和虛擬環境38- 新專案必須建立 `pyproject.toml` + `uv.lock`39- 禁止全域安裝套件4041```bash42# 初始化環境43uv venv44uv sync --all-extras4546# 安裝依賴47uv add package-name48uv add --dev pytest ruff49```5051詳見:`.github/bylaws/python-environment.md`5253---5455## Memory Bank 同步5657每次重要操作必須更新 Memory Bank:5859| 操作 | 更新文件 |60|------|----------|61| 完成任務 | `progress.md` (Done) |62| 開始任務 | `progress.md` (Doing), `activeContext.md` |63| 重大決策 | `decisionLog.md` |64| 架構變更 | `architect.md` |6566詳見:`.github/bylaws/memory-bank.md`6768---6970## Git 工作流7172提交前必須執行檢查清單:73741. ✅ Memory Bank 同步(必要)752. 📖 README 更新(如需要)763. 📋 CHANGELOG 更新(如需要)774. 🗺️ ROADMAP 標記(如需要)7879詳見:`.github/bylaws/git-workflow.md`8081---8283## 可用 Skills8485位於 `.claude/skills/` 目錄:8687### 🔥 NSForge 專用 Skills(MCP 工具組合)8889| Skill | 說明 | 觸發詞 |90|-------|------|--------|91| **nsforge-derivation-workflow** | 完整推導工作流 | 推導, derive, 組合公式 |92| **nsforge-formula-management** | 公式庫管理 | 找公式, 列出, 更新公式 |93| **nsforge-formula-search** | 外部公式搜尋 | Wikidata, BioModels, 物理常數, PK模型 |94| **nsforge-verification-suite** | 驗證工具組合 | 驗證, 維度, check |95| **nsforge-code-generation** | 程式碼/報告生成 | 生成程式碼, LaTeX, 報告 |96| **nsforge-quick-calculate** | 快速計算(無需會話) | 計算, 簡化, 求解 |97| **nsforge-usolver-collab** | 🆕 USolver 協作 | 優化, 最佳化, 劑量優化 |9899> 詳細說明見 `docs/nsforge-skills-guide.md`100101### ⚠️ 數學計算黃金法則102103> **「先用 SymPy-MCP 計算驗證,再用 NSForge 存檔管理!」**104>105> **「每步計算都要用 `print_latex_expression` 或 `derivation_show()` 顯示給用戶確認!」**106>107> **「人類的推導是一步一步的,每步都可加入新元素!」**108109#### 📊 108 工具快速選擇指南(v0.2.4)110111| 我想要... | 用哪個? | 工具 |112|-----------|---------|------|113| 簡化/展開/分解 | SymPy-MCP | `simplify_expression`, `expand_expression`, `factor_expression` |114| 微分/積分 | SymPy-MCP | `differentiate_expression`, `integrate_expression` |115| 解方程 | SymPy-MCP | `solve_algebraically`, `solve_linear_system` |116| ODE/PDE | SymPy-MCP | `dsolve_ode`, `pdsolve_pde` |117| 矩陣 | SymPy-MCP | `matrix_*` 系列 |118| 單位換算 | SymPy-MCP | `convert_to_units` |119| **展開/因式分解** | **NSForge** | `expand_expression`, `factor_expression`, `collect_expression` |120| **三角/冪次化簡** | **NSForge** | `trigsimp_expression`, `powsimp_expression`, `radsimp_expression` |121| **部分分式** | **NSForge** | `apart_expression` 🔥 反 Laplace 必備 |122| **約分/合併** | **NSForge** | `cancel_expression`, `together_expression` |123| **Laplace 變換** | **NSForge** | `laplace_transform_expression`, `inverse_laplace_transform_expression` 🔥 |124| **Fourier 變換** | **NSForge** | `fourier_transform_expression`, `inverse_fourier_transform_expression` |125| **極限** | **NSForge** | `calculate_limit` |126| **級數展開** | **NSForge** | `calculate_series` |127| **求和 Σ** | **NSForge** | `calculate_summation` |128| **不等式** | **NSForge** | `solve_inequality`, `solve_inequality_system` |129| **機率分佈** | **NSForge** | `define_distribution`, `distribution_stats`, `distribution_probability` |130| **假設查詢** | **NSForge** | `query_assumptions`, `refine_expression` |131| 數值計算 | NSForge | `evaluate_numeric` |132| 等價檢查 | NSForge | `symbolic_equal` |133| 推導追蹤 | NSForge | `derivation_*` 系列 (31 工具) |134| 公式存取 | NSForge | `formula_*` 系列 |135| 驗證 | NSForge | `verify_*`, `check_dimensions` |136| 程式碼生成 | NSForge | `generate_python_function`, `generate_*` |137| **優化求解** | **USolver** | 與 `derivation_prepare_for_optimization` 協作 |138139> 💡 **76 NSForge + 32 SymPy-MCP = 108 工具!** 詳見各 Skill 文檔。140141#### 🔥 步進式推導工作流(核心)142143```144┌─────────────────────────────────────────────────────────────┐145│ Phase 1: NSForge 開始會話 │146│ derivation_start(name="...", description="...") │147├─────────────────────────────────────────────────────────────┤148│ Phase 2: 循環 - 每一步都可加入人類知識! │149│ ┌────────────────────────────────────────────────────────┐ │150│ │ 2a. SymPy-MCP: 執行計算 │ │151│ │ intro_many([...]) │ │152│ │ introduce_expression(...) │ │153│ │ substitute_expression(...) │ │154│ │ print_latex_expression(...) # ⚠️ 顯示給用戶! │ │155│ ├────────────────────────────────────────────────────────┤ │156│ │ 2b. NSForge: 記錄這一步 │ │157│ │ derivation_record_step( # 🆕 橋接工具 │ │158│ │ expression="...", # SymPy 結果 │ │159│ │ description="代入 Arrhenius", │ │160│ │ notes="酵素在高溫會變性..." # ⚡ 人類知識! │ │161│ │ ) │ │162│ ├────────────────────────────────────────────────────────┤ │163│ │ 2c. NSForge: 加入說明(可選) │ │164│ │ derivation_add_note( # 🆕 橋接工具 │ │165│ │ note="建議加入校正因子", │ │166│ │ note_type="correction" # ⚡ 修正建議 │ │167│ │ ) │ │168│ ├────────────────────────────────────────────────────────┤ │169│ │ 2d. NSForge: 顯示當前狀態(必須!) │ │170│ │ derivation_show() # 🆕 顯示給用戶! │ │171│ └────────────────────────────────────────────────────────┘ │172│ → 重複 2a-2d,每步都可加入新洞見 → 演化成新公式! │173├─────────────────────────────────────────────────────────────┤174│ Phase 3: NSForge 完成存檔 │175│ derivation_complete(...) # 存檔 + 元資料 │176│ derivation_show() # 🆕 顯示最終結果! │177└─────────────────────────────────────────────────────────────┘178```179180#### 分工原則181182| 任務 | 工具 | 原因 |183|------|------|------|184| **計算求解** | SymPy-MCP | 功能完整(ODE、矩陣、單位) |185| **公式顯示** | `print_latex_expression` 或 `derivation_show()` | 讓用戶確認結果 |186| **知識存檔** | NSForge | 有溯源、分類、搜尋 |187| **簡單驗證** | NSForge | `check_dimensions` 等 |188189#### ❌ 禁止行為190191- 不要直接用 `generate_python_function` 生成未經驗證的程式碼192- **不要跳過顯示步驟**,用 `print_latex_expression` 或 `derivation_show()` 讓用戶看到公式193- 不要把 SymPy-MCP 的計算結果存成 YAML 檔案(應存為 Markdown)194195#### 🔄 Handoff 機制:無法計算時怎麼辦?196197**當 NSForge 無法處理時(ODE、PDE、複雜矩陣運算),使用 Handoff 工具:**198199> ⚠️ **v0.2.1 後,極限/級數/求和已可用 NSForge 直接計算!**200> Handoff 主要用於 ODE、PDE、聯立方程組等。201202```203NSForge 遇到無法處理的操作204 ↓205derivation_export_for_sympy()206 ↓207→ 返回 intro_many_command, current_expression208 ↓209[SymPy-MCP] intro_many([...])210[SymPy-MCP] introduce_expression("...")211[SymPy-MCP] dsolve_ode(...) / solve_linear_system(...) / etc.212[SymPy-MCP] print_latex_expression(...)213 ↓214derivation_import_from_sympy(215 expression="...",216 operation_performed="Solved ODE",217 sympy_tool_used="dsolve_ode",218 notes="...",219 assumptions_used=[...],220 limitations=[...]221)222 ↓223繼續 NSForge 步進式推導!224```225226**Handoff 工具三件套:**227- `derivation_export_for_sympy()` - 導出當前狀態給 SymPy-MCP228- `derivation_import_from_sympy()` - 從 SymPy-MCP 導入結果回來229- `derivation_handoff_status()` - 查看能力邊界和工作流程230231**使用時機:**232- NSForge 工具返回錯誤233- 需要解 ODE/PDE234- 需要複雜矩陣運算235236### 通用開發 Skills237238| Skill | 說明 |239|-------|------|240| **git-precommit** | Git 提交前編排器 |241| **ddd-architect** | DDD 架構輔助與檢查 |242| **code-refactor** | 主動重構與模組化 |243| **memory-updater** | Memory Bank 同步 |244| **memory-checkpoint** | 記憶檢查點(Summarize 前外部化) |245| **readme-updater** | README 智能更新 |246| **changelog-updater** | CHANGELOG 自動更新 |247| **roadmap-updater** | ROADMAP 狀態追蹤 |248| **code-reviewer** | 程式碼審查 |249| **test-generator** | 測試生成(Unit/Integration/E2E) |250| **project-init** | 專案初始化 |251252---253254## 💾 Memory Checkpoint 規則255256為避免對話被 Summarize 壓縮時遺失重要上下文:257258### 主動觸發時機2591. 對話超過 **10 輪**2602. 累積修改超過 **5 個檔案**2613. 完成一個 **重要功能/修復**2624. 使用者說要 **離開/等等**263264### 執行指令265- 「記憶檢查點」「checkpoint」「存檔」266- 「保存記憶」「sync memory」267268### 必須記錄269- 當前工作焦點270- 變更的檔案列表(完整路徑)271- 待解決事項272- 下一步計畫273274---275276## 回應風格277278- 使用**繁體中文**279- 提供清晰的步驟說明280- 引用相關法規條文281- 執行操作後更新 Memory Bank282
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| u9401066/nsforge-mcp.clinerules/10-python.md · 4 | Cline rules | setuptestlint-formatstyle+1 | 83/100 | 14 days ago | |
| u9401066/nsforge-mcpAGENTS.md · 4 | AGENTS.md | stylearchsecuritydo-not+1 | 89/100 | 14 days ago | |
| u9401066/nsforge-mcp.clinerules/00-project.md · 4 | Cline rules | testlint-formatstylearch+1 | 81/100 | 14 days ago | |
| u9401066/nsforge-mcp.clinerules/40-release.md · 4 | Cline rules | lint-formatdeploymentdo-not | 51/100 | 14 days ago | |
| u9401066/nsforge-mcpCLAUDE.md · 4 | CLAUDE.md | setuptestlint-formatgit+2 | 81/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| pytorch/pytorch.github/copilot-instructions.md · 102k | Copilot instructions | setupbuildteststyle+5 | 100/100 | 14 days ago | |
| hiyouga/LlamaFactory.github/copilot-instructions.md · 74k | Copilot instructions | setupbuildtestlint-format+5 | 97/100 | 13 days ago | |
| darkmatter/nixmac.github/copilot-instructions.md · 25 | Copilot instructions | setupbuildtestlint-format+8 | 96/100 | 14 days ago | |
| doubts-suplab/eeik-bootstrap.github/instructions/cdk-terraform.instructions.md · 1 | Copilot instructions | teststylearchtypes+2 | 96/100 | today | |
| doubts-suplab/eeik-bootstrap.github/instructions/java-quality.instructions.md · 1 | Copilot instructions | testlint-formatstyletesting-strategy+3 | 93/100 | today | |
| doubts-suplab/eeik-bootstrap.github/instructions/python.instructions.md · 1 | Copilot instructions | testlint-formatstyletypes+3 | 93/100 | today | |
| iloveitaly/llm-ide-rules.github/copilot-instructions.md · 13 | Copilot instructions | teststyledo-notagent-behaviour+1 | 92/100 | 14 days ago | |
| gasbasd/mtg-utils.github/copilot-instructions.md · 0 | Copilot instructions | setupbuildtestlint-format+3 | 89/100 | 8 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/u9401066-nsforge-mcp-github-copilot-instructions)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.