用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/javimosch/supercli --skill jsalt-quickstart命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
Use this skill when the user wants to search, create, read, or manage Notion pages and databases — search workspace, query databases, create pages, read/write page content as Markdown, manage blocks, users, and files.
Use this skill when the user wants to chat with LLMs from the terminal — OpenAI, Claude, Gemini, local models, RAG, and multi-turn conversations without leaving the shell.
Use this skill when the user wants static analysis for Kotlin code — detect code smells, complexity, style violations, and generate reports for CI pipelines.
基于 SOC 职业分类
正在显示 SKILL.md
| name | jsalt.quickstart |
| description | Agent workflow for learning JSALT and building .jsa apps with executable validation and AST checks. |
| tags | jsalt,jsa,frontend,ast,validation,agents |
Use this when you need to generate or edit JSALT (.jsa) apps with reliable syntax validation.
supercli plugins learn jsalt
npm install -g jsalt
supercli plugins install ./plugins/jsalt --json
supercli jsalt cli help
supercli plugins doctor jsalt --json
let key = value for reactive state.const x = computed(() => expr) for derived state.fn name = "handler code" for reusable handlers.watch key = "handler code" for side effects.on mount = "..." and on destroy = "..." for lifecycle.div#id.class { css: value } @click = "..." = "content".if = "${expr}" conditional render.show = "${expr}" visibility toggle.each = "${array}" loops (item, idx available).bind = "stateKey" two-way form binding.:attr = "..." dynamic attributes.html = "..." raw HTML when needed.transition = "fade" enter transition classes.supercli jsalt ast validate --path app.jsa
supercli jsalt ast json --path app.jsa
supercli jsalt ast tree --path app.jsa
supercli jsalt app.jsa --json
supercli jsalt examples --tree
Counter:
let count = 0
const doubled = computed(() => count * 2)
fn inc = "setState('count', getState('count') + 1)"
div
h1 = "Count: ${count}"
p = "Doubled: ${doubled}"
button @click = "inc()" = "+"
Todo list loop:
let items = []
let text = ""
fn add = "if(!getState('text')) return; setState('items', [...getState('items'), getState('text')]); setState('text', '')"
div
input bind = "text"
button @click = "add()" = "Add"
ul
li each = "${items}" = "${idx + 1}. ${item}"
.jsa using the syntax checklist.ast validate after each meaningful edit.ast json when tooling needs structural introspection.