{"_id":"@2p1c/comsol-ai","_rev":"2-712cea58776e4eb32873c1c72a3d3108","name":"@2p1c/comsol-ai","dist-tags":{"latest":"1.4.0"},"versions":{"1.2.0":{"name":"@2p1c/comsol-ai","version":"1.2.0","keywords":["comsol","multiphysics","simulation","claude-code","skill","mph","laser-ultrasound","finite-element","automation","guided-waves"],"author":{"name":"2p1c"},"license":"MIT","_id":"@2p1c/comsol-ai@1.2.0","maintainers":[{"name":"2p1c","email":"akidforseven@gmail.com"}],"homepage":"https://github.com/2p1c/comsol_ai","bugs":{"url":"https://github.com/2p1c/comsol_ai/issues"},"os":["win32","linux","darwin"],"dist":{"shasum":"c717bbc6e8af5dc3a642e8943970199df4941ec0","tarball":"https://registry.npmjs.org/@2p1c/comsol-ai/-/comsol-ai-1.2.0.tgz","fileCount":14,"integrity":"sha512-Xg2sav94kHTWv1T2yqzaE6QNhcl3iOYd3IcJIQojA13ouwQVRDl1hvwxtUyodHT17/StCt5BvC7LFNvebiOyUg==","signatures":[{"sig":"MEUCIQC50U5EakyF7VlJvbmXLmNJDTynGAJhWckqvObZbIgtggIgeUrMugQJQYaK8ost1jmgdck/WWOfxb7n3QpYeQAoazE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":101112},"engines":{"node":">=16.0.0"},"gitHead":"7703768c8c9d75c15b9057b55965e41792affae7","scripts":{"test":"python examples/laser_ultrasound_model.py --help","postinstall":"node scripts/install-skill.js"},"_npmUser":{"name":"2p1c","email":"akidforseven@gmail.com"},"repository":{"url":"git+ssh://git@github.com/2p1c/comsol_ai.git","type":"git"},"_npmVersion":"10.9.2","description":"Claude Code skill for COMSOL Multiphysics automation via mph + Java API. Programmatic model creation, parametric/time-domain/frequency studies, and data export. All API patterns verified against COMSOL 6.2.","directories":{},"_nodeVersion":"22.16.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/comsol-ai_1.2.0_1778504684167_0.4278769100476201","host":"s3://npm-registry-packages-npm-production"}},"1.4.0":{"name":"@2p1c/comsol-ai","version":"1.4.0","description":"Agent skill for COMSOL Multiphysics automation via mph + Java API. Programmatic model creation, parametric/time-domain/frequency studies, and data export. All API patterns verified against COMSOL 6.2.","keywords":["comsol","multiphysics","simulation","claude-code","cursor","codex","skill","mph","laser-ultrasound","finite-element","automation","guided-waves"],"homepage":"https://github.com/2p1c/comsol-skills","repository":{"type":"git","url":"git+ssh://git@github.com/2p1c/comsol-skills.git"},"license":"MIT","author":{"name":"2p1c"},"scripts":{"postinstall":"node scripts/install-skill.js","install-skill":"node scripts/install-skill.js","check-update":"node skills/comsol/scripts/check-update.js","test":"node scripts/check-version-sync.js && node scripts/test-install-and-update.js"},"engines":{"node":">=16.0.0"},"os":["win32","linux","darwin"],"gitHead":"c93b71787a0b773ced35be1227f3af55cb4b99e2","_id":"@2p1c/comsol-ai@1.4.0","bugs":{"url":"https://github.com/2p1c/comsol-skills/issues"},"_nodeVersion":"26.7.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-54EmqXGTGRxZF0f74oESEhDptTcQA6e7XnFcArQl9o+ocgU57Lb46rusTpW5gv1dOh37bE0EmEhgLgx/ivWnJw==","shasum":"892b4232898588a8f990af6d54eb398ebe78d479","tarball":"https://registry.npmjs.org/@2p1c/comsol-ai/-/comsol-ai-1.4.0.tgz","fileCount":21,"unpackedSize":132950,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFQoz697x+OVZG7HGfqU9ULiNtzXbetKtfdjHILDAI1UAiEAgv+IMNmHjHeMkqbl/ihf4Sg6Tv2QOpaap80i0k8D4C0="}]},"_npmUser":{"name":"2p1c","email":"akidforseven@gmail.com"},"directories":{},"maintainers":[{"name":"2p1c","email":"akidforseven@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/comsol-ai_1.4.0_1789055632111_0.602213965540044"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-11T13:04:44.067Z","modified":"2026-09-10T15:53:52.566Z","1.2.0":"2026-05-11T13:04:44.335Z","1.4.0":"2026-09-10T15:53:52.265Z"},"bugs":{"url":"https://github.com/2p1c/comsol-skills/issues"},"author":{"name":"2p1c"},"license":"MIT","homepage":"https://github.com/2p1c/comsol-skills","keywords":["comsol","multiphysics","simulation","claude-code","cursor","codex","skill","mph","laser-ultrasound","finite-element","automation","guided-waves"],"repository":{"type":"git","url":"git+ssh://git@github.com/2p1c/comsol-skills.git"},"description":"Agent skill for COMSOL Multiphysics automation via mph + Java API. Programmatic model creation, parametric/time-domain/frequency studies, and data export. All API patterns verified against COMSOL 6.2.","maintainers":[{"name":"2p1c","email":"akidforseven@gmail.com"}],"readme":"# COMSOL AI\n\n[English](README.md) | [中文](README_zh.md)\n\nCOMSOL Multiphysics automation skills — programmatic simulation via Python.\n\nWorks with Cursor, Claude Code, Codex, Pi, DeepSeek Harness, and any client that reads Agent Skills (`SKILL.md`).\n\n> **Version**: 1.4.0\n\n## Install\n\nPick one. All of them copy `skills/comsol` into agent skill directories; none overwrite an existing copy unless you set `FORCE_INSTALL=1`.\n\n### Shared directory (Cursor, Codex, Pi, DeepSeek, …)\n\n```bash\ngit clone https://github.com/2p1c/comsol-skills.git\ncd comsol-skills\nnode scripts/install-skill.js\n```\n\nThis always installs to `~/.agents/skills/comsol`. If Claude Code / Cursor / Codex / Pi / DeepSeek Harness is already on the machine, it also copies into that agent's native global skills folder.\n\nOr copy by hand:\n\n```bash\ncp -r skills/comsol ~/.agents/skills/comsol\n```\n\n### npm\n\n```bash\nnpm install @2p1c/comsol-ai\n```\n\nThe postinstall script runs the same installer. To refresh an older copy:\n\n```bash\nFORCE_INSTALL=1 npm install @2p1c/comsol-ai@latest\n```\n\n### Claude Code (`/plugin`)\n\n```bash\n/plugin marketplace add 2p1c/comsol-skills\n/plugin install comsol@comsol-skills\n```\n\nEnable marketplace auto-update if you want Claude Code to notice new plugin versions. This skill still only **notifies** when a copy already exists under `~/.claude/skills/comsol`; it does not overwrite it.\n\n### Other agents (`npx skills`)\n\n```bash\nnpx skills add 2p1c/comsol-skills -g\n```\n\n## Updates\n\nInstalled copies are never overwritten automatically. On the first COMSOL task in a session, the skill runs `node scripts/check-update.js` from the skill directory, which compares the local `VERSION` with GitHub and prints upgrade commands when a newer version exists. `npm install` does the same check.\n\n## What's included\n\n| Skill | Description |\n|-------|-------------|\n| `comsol` | COMSOL model creation, physics setup, meshing, parametric/time-domain studies, and result extraction via mph + COMSOL Java API. Verified against COMSOL 6.2. |\n\n## Prerequisites\n\n- COMSOL Multiphysics 6.0–6.3\n- Python 3.x with `mph`, `numpy`, `pandas`\n\n## Repository structure\n\n```\nskills/comsol/                  # The Agent Skill\n├── VERSION                     # Single source of truth for the skill version\n├── SKILL.md                    # Skill instructions & API patterns\n├── scripts/                    # Bundled utility scripts (includes check-update.js)\n└── references/                 # API reference, debugging log, examples\nexamples/                       # Runnable example: laser ultrasound\nultra2thin/                     # Experimental 2D terraced-plate example\n.claude-plugin/\n├── marketplace.json            # Plugin registry manifest\n└── plugin.json                 # Plugin version for Claude Code updates\n```\n\n## Changelog\n\n### v1.4.0 (2026-09-10)\n\n- Add notify-only update check (`scripts/check-update.js`) for already-installed copies\n- Install to `~/.agents/skills` plus detected Claude Code / Cursor / Codex / Pi / DeepSeek paths\n- Unify version numbers and fix repo URLs (`2p1c/comsol-skills`)\n- Add MIT LICENSE, plugin.json, and a version-sync CI check\n- Align Chinese README, SKILL.md solve guidance, and bundled example scripts\n\n### v1.3.0 (2026-05-12)\n\n- 新增 `animate_results.py`：求解后自动生成波场动画 (MP4)\n- 新增 3 层网格结构：光斑 0.1mm / 波区 0.5mm / 外层 2.0mm\n- 修复 `exp()` 表达式 underflow 导致热源归零（需 sigma_s >= 5mm，D > 5e-5）\n- 修复热膨胀耦合静默失效 → 改用 `lemm1.feature().create(\"tef1\",\"ThermalExpansion\")`\n- 修复数据提取 NaN → 改用 `pymodel.evaluate()` + 最近邻节点查找\n- 修复 `pymodel.save()` 文件锁 → UUID 文件名\n- 修复 `max()`/`min()`/`if()`/空间比较在边界上评估为 0\n- 新增 Client API limitations 文档表（已验证 6.2）\n- debugging-log 增至 Entry 12\n\n### v1.2.0 (2026-05-11)\n\n- 新增 `comsolbatch` 求解模式：实时文本进度输出（替代无 GUI 的 mph solve）\n- 新增 `--build-only` CLI 参数：构建后停止，方便在 COMSOL GUI 中检查\n- 新增 `--config` CLI 参数：通过外部 JSON 文件覆盖默认配置\n- 新增 Ctrl+C 优雅中断：求解器完成当前时间步后停止，不丢已解数据\n- 新增 `study.set(\"plot\", \"on\")` 和 `probesel=\"all\"` 求解进度设置\n- 修复 `SolverLog` 在客户端 API 不可用问题 → 改用 comsolbatch 日志\n- 修复 `ModelUtil.showProgress(true)` 崩溃（JVM 无 Swing toolkit）\n- 修复 comsolbatch 输出目录不存在问题\n- 新增 Entry 8 调试记录（SolverLog 不可用 + progress window 不可用）\n\n### v1.1.0 (2026-05-11)\n\n- 新增双语 README（中文/English）支持语言切换\n- 新增 marketplace 插件市场结构（`.claude-plugin/marketplace.json`）\n- 新增版本号跨文件同步（SKILL.md / marketplace.json / README）\n- 新增 CLI 项目规则文件 CLAUDE.md\n- 重组目录结构：`skill/` → `skills/comsol/`，符合官方规范\n- 将 Python 脚本从 `assets/` 移至 `scripts/`\n- 更新 SKILL.md frontmatter（添加 `compatibility`、`metadata` 字段）\n\n### v1.0.1 (2026-05-11)\n\n- 修复 selection 类型标签（`Box`/`Ball` 替代 `BoxSelection`/`BallSelection`）\n- 修复 `entitydim` 必须传字符串类型（`\"2\"` 而非 `2`）\n- 修复 Box selection 的 `condition` 含义（是实体包含类型，非坐标过滤）\n- 修复 Ball selection 的半径属性名为 `\"r\"`（非 `\"radius\"`）\n- 修复命名选择调用方式（用 `.named()` 替代 `.set()`）\n- 修复 `Free` BC 的 selection 不可编辑（默认自动管理）\n- 修复 `DomainPointProbe` 不可用，改用 `CutPoint3D`\n- 修复 GBK 控制台下 Unicode 字符输出报错\n- 新增材料属性名发现（`density`、`youngsmodulus` 等，含短名 `rho`、`E`）\n\n### v1.0.0 (2026-05-11)\n\n- 首个版本：COMSOL 自动化技能（mph + Java API 混合架构）\n- 激光超声仿真完整示例（热传导 → 热膨胀 → 固体力学 → Lamb 波）\n- 已验证的 API 标签表（物理场、边界条件、材料属性、选择类型）\n- 调试知识积累机制（`debugging-log.md` 自改进）\n- 容错降级策略（stand-alone → client-server 回退）\n","readmeFilename":"README.md"}