这是方便数字人(FmodeAgent / FmodeCode)进行项目开发的基础规则技能。 它把踩过的坑沉淀成硬性约束,让 AI 在生成代码时不重犯同类错误。
未来飞马 — 让 AI 进化提前发生,让 AI 落地快人一步
fmode-code-lit 是教 AI 用 无构建 / 无打包 / 纯原生 ESM + Lit 3.x 写前端的 FmodeCode 技能:
源码即产物,浏览器直接跑;依赖走 FMODE Repose 统一托管,业务码走 OBS + CDN。
配套 规则仓(本仓 .claude/rules/)提供分层、组件、服务、DI、路由、多标签、部署等完整规范。
适用 FmodeCode / FmodeCode / FmodeAgent;本技能以原生 ESM 与零依赖脚本交付,Node ≥ 18 直接运行。
component / service / page 按规范生成(无装饰器).claude/rules/ 前端规则装入任意项目obsutil 同步 OBS + CDN 刷新的脚本# 装到当前项目的 .claude/skills/(随项目走,推荐)
npx --yes @fmode/skill-code-lit@latest workspace
# 或装到用户级 ~/.claude/skills/(全局)
npx --yes @fmode/skill-code-lit@latest install
# 把前端规则写入项目 ./.claude/rules/
npx --yes @fmode/skill-code-lit@latest rules .
npx --yes @fmode/skill-code-lit@latest scaffold ./my-admin --project my-admin
cd my-admin && npx serve src # 本地预览
npx --yes @fmode/skill-code-lit@latest new component user-card
npx --yes @fmode/skill-code-lit@latest new service auth-service
npx --yes @fmode/skill-code-lit@latest new page page-order-list
OBS_BUCKET=obs://<bucket> bash scripts/deploy.sh my-admin
.js 直接上传。lit / @lit/* / @lit-labs/* 由 importmap 指向 Repose。浏览器原生不执行装饰器语法(@customElement / @property / @state / @consume)。
一律用 static properties + customElements.define() + ContextConsumer。本技能生成的所有代码均无装饰器。
lit@3.3.3 lit-html@3.3.3 lit-element@4.2.2 @lit/reactive-element@2.1.2
@lit/context@1.1.6 @lit-labs/signals@0.3.0 signal-polyfill@0.2.2
@lit-labs/signals依赖signal-polyfill(importmap 需映射,入口dist/index.js)。@lit-labs/context已废弃 → 用@lit/context。
skills/fmode-code-lit/
├── SKILL.md # 技能说明(AI 读取)
├── skill-package-manifest.json # 打包清单
├── package.json # npx 入口
├── bin/fmode-code-lit.js # CLI
└── scripts/
├── scaffold.mjs # 项目脚手架
├── new.mjs # 组件/服务/页面生成器
├── install-rules.mjs # 规则安装器
├── install.mjs # 技能安装器
└── smoke.mjs # 自检
node skills/fmode-code-lit/scripts/smoke.mjs
# ✓ 生成物全部通过语法检查 / ✓ 生成物无装饰器语法 / … → SMOKE OK
MPL-2.0 © 未来飞马 Fmode