You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"prompt": "Before publishing my package to the mops registry, I ran `mops publish --dry-run` and it passed. Does that mean the real `mops publish` is guaranteed to succeed? Just answer the question.",
89
+
"expected_behaviors": [
90
+
"Explains that `--dry-run` runs the same local publish pipeline (packaging checks, docs, changelog, tests, benchmarks) but stops before identity/upload (no registry contact)",
91
+
"Clarifies it does NOT validate canister config (SPDX/semver/name rules)",
92
+
"Clarifies it does NOT prove registry acceptance (already published, permissions, missing deps)",
93
+
"Does NOT claim a passing `--dry-run` guarantees the real publish will succeed"
94
+
]
95
+
},
86
96
{
87
97
"name": "check-stable baseline bootstrap",
88
98
"prompt": "I'm starting a brand-new mops project and want to enable `check-stable`. There's no deployed version yet, so what do I use as the `.most` baseline for `[check-stable].path`? Just the setup, no deploy steps.",
@@ -180,7 +190,8 @@
180
190
"How do I regenerate the candid .did file for my Motoko canister with mops?",
181
191
"How do I keep my check-stable .most baseline in sync after deploying?",
182
192
"How do I enable wasm-opt optimization for my mops build?",
183
-
"How do I run benchmarks with mops?"
193
+
"How do I run benchmarks with mops?",
194
+
"How do I publish my package to the mops registry?"
Copy file name to clipboardExpand all lines: skills/mops-cli/SKILL.md
+16-3Lines changed: 16 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,7 +2,7 @@
2
2
name: mops-cli
3
3
description: "Manage Motoko projects with the mops CLI — toolchain pinning, dependency management, type-checking, building, and linting. Use when working with mops.toml, mops.lock, running mops commands, adding/removing packages, pinning moc or lintoko versions, checking or building canisters, configuring moc flags, or setting up a new Motoko project."
mops install --lock check # fail if lockfile is missing or stale (CI)
87
87
```
88
88
89
-
Run after cloning or after manual `mops.toml` edits. Updates `mops.lock` by default.
89
+
Run after cloning or after manual `mops.toml` edits. Updates `mops.lock` by default. Local path dependencies are stored root-relative in the lockfile (portable across machines). A plain install will not rewrite absolute paths left by older CLIs — use `mops install --lock update`, and ensure every environment has a CLI that understands relative lock paths.
90
90
91
91
When the `CI` env var is set and `--lock` is omitted, defaults to `--lock check` (deprecated — pass `--lock check` explicitly; auto-detection will be removed in v3). A stale lock fails with a hint to run `mops install --lock update`.
mops toolchain use moc 1.7.0 # pin specific version
158
158
mops toolchain use moc latest # pin latest version (non-interactive)
159
159
mops toolchain use lintoko 0.10.0 # pin specific version
160
-
mops toolchain use pocket-ic 12.0.0 # pin for replica tests / benchmarks (pin a specific version; `latest` may resolve to one the bundled pic-js client doesn't support)
160
+
mops toolchain use pocket-ic 12.0.0 # pin for replica tests / benchmarks (pin a specific version; `latest` may resolve to one the vendored `@dfinity/pic` client doesn't support)
161
161
mops toolchain use wasm-opt 131 # Binaryen for [optimize] (or `latest`)
162
162
mops toolchain update moc # update to latest (requires existing [toolchain] entry)
163
163
mops toolchain update # update all tools to latest
@@ -167,6 +167,8 @@ mops toolchain info <tool> --versions --all # full stable history (cache warming
167
167
mops toolchain bin moc # print path to binary
168
168
```
169
169
170
+
**`pocket-ic` versions**: `9.0.0` and newer run on the vendored `@dfinity/pic` client. Pins below `9.0.0` still work on the legacy `pic-ic` client but print a deprecation warning and are removed in mops v3 — pin `9.0.0` or newer.
171
+
170
172
**Agent note**: `toolchain use <tool>` without a version opens an interactive picker — do not use in scripts or agents. Always pass a version or `latest`. `toolchain update` only works when the tool already has a `[toolchain]` entry. `toolchain info <tool> --versions` works without `mops.toml` (first GitHub page by default; pass `--all` for full history).
mops publish # publish to the registry (runs tests/docs/bench by default)
211
+
mops publish --dry-run # same local steps as publish; no registry contact / identity
212
+
mops publish --dry-run --no-test --no-docs --no-bench # packaging checks only
213
+
mops publish --no-test --no-docs --no-bench
214
+
```
215
+
216
+
`--dry-run` runs the same local publish pipeline (packaging checks, docs, changelog, tests, benchmarks) and prints the final file list, then stops before identity/upload. `--no-*` flags work as usual. It does **not** run canister config validation (SPDX/semver/name rules) or prove registry acceptance (already published, permissions, missing deps).
0 commit comments