@plasmickit/cli 0.1.2 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/skill/plasmic/SKILL.md +26 -4
package/package.json
CHANGED
package/skill/plasmic/SKILL.md
CHANGED
|
@@ -1,11 +1,33 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: plasmic
|
|
3
|
-
description:
|
|
3
|
+
description: Inspect self-hosted Plasmic pages and templates, create or revise editable prototypes, and implement native React code from Plasmic designs.
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Plasmic
|
|
7
7
|
|
|
8
|
-
This
|
|
8
|
+
This skill owns core constraints. Detailed workflows, component selection and usage guidance, and verification scripts live in a versioned resource bundle on the NAS, outside this installed skill.
|
|
9
|
+
|
|
10
|
+
## Client implementation boundary
|
|
11
|
+
|
|
12
|
+
Use the published CLI, documented Desktop MCP tools and resolved skill resources with the task's requirements and design files. Do not unpack, extract or decompile the Plasmic App, or read its internal Desktop/Studio implementation, packaged dependencies, extracted/copied artifacts or equivalent client repository source. This prohibition applies to the acting agent, delegated agents and their tool scripts, including troubleshooting and contract or validator discovery.
|
|
13
|
+
|
|
14
|
+
If public tool contracts or skill documents are insufficient, retain the exact call and error, stop dependent work and report the missing contract or documentation. Do not inspect client internals or reverse-engineer private interfaces to continue. Codegen may inspect and edit the target application's source within the user's task; this does not authorize reading the Plasmic client implementation.
|
|
15
|
+
|
|
16
|
+
## Component priority for prototype design
|
|
17
|
+
|
|
18
|
+
Choose components before markup for every prototype creation or edit. Discover reusable business components/templates and library registrations through Desktop MCP by the required role, then read candidate contracts. Prefer an existing business component or matching template, then registered library components, then compositions of those components. Preserve the user's library choices and the target project's actual APIs; a template must fit the requirement. Do not install another library or add a Card merely to satisfy this preference.
|
|
19
|
+
|
|
20
|
+
Use real Props, Slots, states and events for functional widgets, including actions, controls, navigation, repeated information, pagination, feedback and overlays. Do not redraw available components with HTML/CSS; visual similarity is not component reuse. Plain semantic text, necessary root/Slot/layout containers, genuine navigation anchors, read-only code and content graphics remain valid native elements; do not turn every text node or wrapper into a component or surface.
|
|
21
|
+
|
|
22
|
+
Use a custom element widget only when verified current components and their supported compositions cannot express the required behavior. Before writing it, record the exact named node, checked candidates/contracts, concrete gap and requirement source in the task plan. An unread contract, absent import, rendering error, styling convenience or missing binding is not a capability gap. Correct usage or report the blocker; ordinary design work does not create a new component library. A fallback cannot override a required native identity, Form ownership or another acceptance gate.
|
|
23
|
+
|
|
24
|
+
After resolving resources, use `references/libraries/index.md` for library/API matching and role-specific selection, and `references/requirement-alignment.md` for native-component inventories and the `elementFallbacks` format.
|
|
25
|
+
|
|
26
|
+
## Prototype execution boundary
|
|
27
|
+
|
|
28
|
+
Keep generation plans, progress, pending cases and acceptance records in the agent's working directory. Use Desktop MCP for individual design/read/Preview operations, with their target, permission and context checks. Verification scripts read explicit evidence and write local reports; they do not register workflows, persist project bindings or restrict project navigation.
|
|
29
|
+
|
|
30
|
+
## Task workflow
|
|
9
31
|
|
|
10
32
|
Choose the task mode before work: `inspect` for read-only page/template explanation or design review, `prototype` for selecting/creating the design project and design edits, or `codegen` for native React implementation and updates. Run the matching command:
|
|
11
33
|
|
|
@@ -19,9 +41,9 @@ Inspect uses accessible Desktop MCP reads and does not require edit permission o
|
|
|
19
41
|
|
|
20
42
|
The command checks the NAS release manifest every time, downloads changed resources and verifies their hashes before returning absolute paths. Read all returned `mustRead` files, starting with `referencePath`; resolve subsequent links relative to the reference file. Use the returned `resourceRoot` for verification scripts and follow the guide's conditional section-reading/evidence rules. For a task spanning multiple modes, resolve and read each mode before its work begins.
|
|
21
43
|
|
|
22
|
-
|
|
44
|
+
Follow the resolved workflow for project selection, component discovery and acceptance; load detailed rules only for the affected scope. Switching from inspection to editing requires the corresponding user request and prototype workflow.
|
|
23
45
|
|
|
24
|
-
The CLI streams
|
|
46
|
+
The CLI streams preparation progress to stderr and returns JSON on stdout. Relay meaningful version/download/verification changes; use incremental output for a long-running command. Report waiting honestly when output is buffered. Resource readiness means files are available, not that they have been read or their workflow completed.
|
|
25
47
|
|
|
26
48
|
The runner uses the latest published `@plasmickit/cli`, distinct from official `@plasmicapp/cli`. Later commands can use `npx -y @plasmickit/cli@<cliVersion>` from the result to keep the task on that CLI version, or the global `plasmickit` after checking `plasmickit version check`.
|
|
27
49
|
|