packages/skill/skills/fict-best-practices/SKILL.md
Fict compiler and runtime engineering guide for correctness and reliability. Use when implementing or reviewing Fict compiler transforms, runtime reactivity behavior, SSR/resume flow, devtools/playground integration, or release CI gates in Fict repositories.
npx skillsauth add fictjs/fict fict-best-practicesInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Production-focused guidance for engineering tasks across Fict compiler, runtime, SSR, devtools, and release workflows. Rules are optimized for AI agents doing code changes and reviews under correctness and regression-risk constraints.
| Priority | Category | Impact | Prefix |
| -------- | ----------------------------------- | -------- | ------------- |
| 1 | Compiler Guarantees | CRITICAL | compiler- |
| 2 | Reactivity Semantics | CRITICAL | reactivity- |
| 3 | Runtime Safety and Performance | HIGH | runtime- |
| 4 | SSR and Resume Stability | HIGH | ssr- |
| 5 | Tooling and DX Boundaries | MEDIUM | tooling- |
| 6 | Verification and Release Discipline | CRITICAL | quality- |
compiler-strict-guarantee-ci - Enforce fail-closed guarantee mode in CIcompiler-macro-placement-top-level - Keep macros at top-level component or hook scopecompiler-fail-closed-diagnostics - Treat fallback diagnostics as blockersreactivity-derived-values - Rely on compiler-derived memoization and avoid stale snapshotsreactivity-no-state-escape - Prevent state lifetime escape outside owning scopereactivity-props-shaping - Keep props/reactive object shaping analyzableruntime-shared-state-primitives - Use $store/createSignal for shared state boundariesruntime-effect-cleanup - Always return cleanup for subscriptions and async side effectsruntime-no-side-effects-in-memo - Keep memo bodies pure and move effects to $effectssr-resource-keying - Key resources and align Suspense boundaries with async ownershipssr-resume-snapshot-contract - Preserve snapshot schema and loader failure semanticstooling-devtools-dev-only - Keep devtools instrumentation development-onlytooling-playground-runtime-isolation - Isolate playground features from production runtime code pathsquality-regression-tests-for-bugs - Add minimal regression tests for every fixed defectquality-release-gates - Run compiler/runtime gates before merge or releaseRead rule files in rules/ for detailed explanations and bad/good examples.
Use AGENTS.md when you want a single compiled document with all rules.
AGENTS.md
tools
Fict DevTools and Playground engineering guide. Use when implementing, debugging, or reviewing Fict devtools panel/extension behavior, signal/computed/effect inspection UX, graph/timeline interactions, or playground preview refresh and isolation from production runtime.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------
tools
# Lobster Lobster executes multi-step workflows with approval checkpoints. Use it when: - User wants a repeatable automation (triage, monitor, sync) - Actions need human approval before executing (send, post, delete) - Multiple tool calls should run as one deterministic operation ## When to use Lobster | User intent | Use Lobster? | | ------------------------------------------------------ | --------------------------