Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/CodySwannGT/lisa --skill harper-component-model명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | harper-component-model |
| description | reasoning about how a Harper… |
Harper (formerly HarperDB; the product and company now at harper.fast) is an open-source Node.js platform that fuses database, cache, application logic, and messaging into a single in-memory process. Fabric is Harper's distributed deploy network: you develop locally, then deploy the same component to Fabric.
Everything you build is a component. Understanding the component hierarchy is the prerequisite for every other Harper decision — config, resources, schema, and deploy all hang off it.
Harper organizes functionality into three tiers, top to bottom:
handleApplication(scope)
method and always runs on worker threads. The deprecated Extension API used
start, handleFile, handleDirectory, and setupDirectory instead.
handleApplication() cannot coexist with Extension API methods — defining
both throws. Prefer the Plugin API for any custom building block.An application is the component you ship. Extensions/plugins are the capabilities it consumes. Built-in extensions (
graphqlSchema,jsResource,rest,static, …) are provided by core; you only enable them inconfig.yaml. See [[harper-config-yaml]].
These ship with Harper and are enabled (not installed) via config.yaml:
graphqlSchema — define database tables/types from GraphQL schema files. See [[harper-schema-graphql]].jsResource — load custom JavaScript resources (resources.js). See [[harper-resources]].rest — auto-generate REST endpoints for exported resources/tables.static — serve static files (the web/** directory) over HTTP.roles — role-based access control from roles.yaml.loadEnv — load environment variables from .env.dataLoader — seed Harper tables from JSON/YAML.fastifyRoutes — custom Fastify route handlers.This project wraps Harper's native model with a fixed layout under harper-app/:
| Path | Role | Source or generated |
|---|---|---|
harper-app/config.yaml | Component config — which extensions are active | Source |
harper-app/schema.graphql | Table/type definitions | Source |
src/** (TypeScript) | Resources, browser modules, shared libs, scripts | Source |
harper-app/resources.js | Loaded by jsResource | Generated — never edit; build from TS |
harper-app/web/** | Served by static | Generated — never edit; build from TS |
The TypeScript under src/ is the source of truth. resources.js and web/**
are deploy artifacts produced by bun run build. Never hand-edit them — change
the matching TypeScript and rebuild. See [[harper-build-and-deploy]].
config.yaml. Don't ship a
client-side workaround for missing backend behavior — make the Harper change.pluginModule), not application code.web/** (generated from src/ UI code), served
by the static extension.config.yaml,
schema.graphql, resources.js, and web/** at the component root that Fabric
packages. If your change touches that surface, build before packaging.