weapp-ide-cli-best-practices
SKILL.md
weapp-ide-cli-best-practices
Purpose
Design and evolve weapp-ide-cli with deterministic command behavior, automation-friendly UX, and stable integration contracts for other CLIs (especially weapp-vite).
Trigger Signals
- User asks to add/refactor
weapp-ide-clicommands or argument validation. - User asks to expose command metadata for external CLI dispatch.
- User asks to improve DevTools automation, screenshot, or automator subcommands.
- User asks to add language switching or config persistence behavior.
- User asks how
weapp-viteshould delegate toweapp-ide-cli.
Scope Boundary
Use this skill when the center of gravity is command routing, CLI UX, config persistence, and cross-package CLI contracts.
Do not use this as the primary skill when:
- The issue is mainly
weapp-viteproject build/subpackage architecture. Useweapp-vite-best-practices. - The issue is mainly Vue SFC syntax/macro compatibility. Use
weapp-vite-vue-sfc-best-practices. - The issue is runtime lifecycle/state architecture in components/pages. Use
wevu-best-practices.
Quick Start
- Classify change type: command addition, validation, i18n/config, or dispatch contract.
- Update command source-of-truth first, then update parser/dispatcher.
- Add/adjust tests around routing and error behavior.
- Sync docs in package README and website package page.
Execution Protocol
- Keep command taxonomy explicit
- Maintain command groups as separate layers:
- WeChat official passthrough commands
- automator enhanced commands
- config commands
- minidev namespace passthrough
- Export top-level command catalog from
weapp-ide-clifor external reuse. - Provide a direct predicate function to check command support.
- Enforce dispatch invariants
- Parse global language option before command routing.
- Route minidev namespace and automator commands before generic WeChat CLI passthrough.
- Keep
help <automator-command>behavior explicit and deterministic. - Validate critical arguments before invoking external CLI.
- Keep i18n + config predictable
- Default language is Chinese.
- Support command-level temporary language override and persistent config language.
- Persist config to user directory config file and expose
configsubcommands for read/write/export/import. - Prefer Chinese user-facing messages, with switchable English fallback.
- Establish integration contract for upstream CLI
- Upstream CLI (e.g.
weapp-vite) should:- execute its native command table first
- delegate only when
isWeappIdeTopLevelCommand(command)is true - avoid blind passthrough for unknown commands
- Keep this rule documented and tested on both sides.
- Verify narrowly
- Prefer targeted tests in:
packages/weapp-ide-cli/test/*.test.ts- related
packages/weapp-vite/src/cli/*.test.tswhen dispatch contract changes
- Run lint on touched docs and source files only.
Guardrails
- Do not duplicate command lists in multiple packages as independent sources of truth.
- Do not add user-facing text without i18n wrapping.
- Do not couple command parsing with business side effects before validation.
- Do not let unknown commands silently passthrough when integrating with another CLI.
Output Contract
When applying this skill, return:
- Command-level design summary (what changed and why).
- Concrete file edits for catalog/routing/validation/docs/tests.
- Verification commands and expected outcomes.
- Cross-package contract notes when
weapp-viteintegration is touched.
Completion Checklist
- Top-level command catalog and predicate are exported from
weapp-ide-cli. - Dispatch priority is deterministic and covered by tests.
- New/changed user-facing messages support Chinese default and English switch.
- Config persistence and command behavior are documented.
- If integration changed,
weapp-viteuses exported catalog instead of duplicated lists.
References
references/command-catalog-and-dispatch.mdreferences/i18n-config-playbook.md
Weekly Installs
9
Repository
sonofmagic/skillsFirst Seen
13 days ago
Security Audits
Installed on
gemini-cli9
github-copilot9
codex9
kimi-cli9
amp9
cline9