Agent skill

Faasjs Plugins Runtime

by faasjs in faasjs/faasjs

A skill your agent uses when building or reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior, InvokeData mutation…

MITAuto-check: notesBackend & APIs

Install Faasjs Plugins Runtime

skills CLI
$ npx skills add faasjs/faasjs --skill faasjs-plugins-runtime -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install faasjs/faasjs faasjs-plugins-runtime --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/faasjs/faasjs.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/faasjs-plugins-runtime .claude/skills/faasjs-plugins-runtime && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
faasjs-plugins-runtime
GitHub stars
121
Token cost
~500 tokens
SKILL.md length
199 words
Files
4 (incl. references)
Skills in repo
8
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when building or reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior, InvokeData mutation…

  • Works in 5 steps: Use plugins for cross-cutting business… → Implement plugin lifecycle hooks with… → Provide injected field types through… → …
  • Reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior
  • SKILL.md covers Default Workflow, Load These References, Gotchas and Validation
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Faasjs Plugins Runtime is an agent skill from faasjs/faasjs. Use when building or reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior, InvokeData mutation, DefineApiInject module augmentation, faas.yaml plugin loading, applyConfig, logger usage, @faasjs/node-utils, loadConfig, loadDotenv, module loaders, and Node-only bootstrap code.

Its SKILL.md is about 500 tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files, including reference files (for example `references/guidelines/logger.md`, `references/guidelines/node-utils.md` and `references/guidelines/plugins.md`).

It sits in Backend & APIs, covering Serverless. The repository describes itself as: 🚀 FaasJS is an agent-friendly full-stack TypeScript framework for building predictable, type-safe applications with minimal dependencies. The licence is MIT.

When your agent uses it

  • Reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior
  • InvokeData mutation
  • DefineApiInject module augmentation
  • Faas.yaml plugin loading

Example prompts

  • “/faasjs-plugins-runtime”

Workflow steps

5 steps, taken from the first numbered list in SKILL.md.

  1. Use plugins for cross-cutting business context such as auth, tenant, request metadata, and permission scope.
  2. Implement plugin lifecycle hooks with clear ownership, retry-safe mount initialization, and exactly one next() call when required.
  3. Provide injected field types through DefineApiInject module augmentation.
  4. Prefer injected loggers when the framework provides one; create labeled loggers for standalone code.
  5. Keep @faasjs/node-utils usage in Node-only bootstrapping and tooling paths.

What it can do on your machine

Read from SKILL.md and the folder at commit 8136384. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Faasjs Plugins Runtime loads about 500 tokens when it runs, and up to ~8.3k if it reads all its reference files. Until then it costs about 95 tokens; SKILL.md has 199 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~95
When it runs · the whole SKILL.md, loaded when a task matches
~500
With references · SKILL.md plus every file in references/, read only if the agent opens them
~8.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:20
    - `loadConfig`, `.env` loading, module hooks, schema helpers, and path containment: `references/guidelines/node-utils.md

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from faasjs/faasjs at commit 8136384, republished under its MIT licence (© faasjs). 199 words, ~500 tokens.

Download SKILL.mdSave it as .claude/skills/faasjs-plugins-runtime/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.
name
faasjs-plugins-runtime
description
Use when building or reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior, InvokeData mutation, DefineApiInject module augmentation, faas.yaml plugin loading, applyConfig, logger usage, @faasjs/node-utils, loadConfig, loadDotenv, module loaders, and Node-only bootstrap code.

FaasJS Plugins And Runtime

Default Workflow

  1. Use plugins for cross-cutting business context such as auth, tenant, request metadata, and permission scope.
  2. Implement plugin lifecycle hooks with clear ownership, retry-safe mount initialization, and exactly one next() call when required.
  3. Provide injected field types through DefineApiInject module augmentation.
  4. Prefer injected loggers when the framework provides one; create labeled loggers for standalone code.
  5. Keep @faasjs/node-utils usage in Node-only bootstrapping and tooling paths.

Load These References

  • Plugin interface, lifecycle hooks, injected fields, config-driven loading, and tests: references/guidelines/plugins.md.
  • Logger selection, levels, formatting, timing, and secret handling: references/guidelines/logger.md.
  • loadConfig, .env loading, module hooks, schema helpers, and path containment: references/guidelines/node-utils.md.

Gotchas

  • Mutate InvokeData for injected fields and document the type surface with module augmentation.
  • Keep onMount retry-safe: concurrent callers share one attempt, and a later call may retry after failure.
  • Do not log secrets or full sensitive payloads.
  • Keep module hook registration at process bootstrap.

Validation

  • Test plugins with real Func instances when behavior depends on lifecycle execution.
  • Cover shared mount success, shared mount failure, and later retry when onMount owns resources.
  • Run focused tests with vp test <pattern>.
  • Run vp check --fix before handoff when plugin or runtime files changed.

© faasjs, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 3 other files (references) in skills/faasjs-plugins-runtime of faasjs/faasjs.

  • SKILL.md
  • references/guidelines/logger.md
  • references/guidelines/node-utils.md
  • references/guidelines/plugins.md

Open the folder on GitHubat commit 8136384

Compare with similar skills

Faasjs Plugins Runtime next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Faasjs Plugins Runtime compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Faasjs Plugins Runtime this skillfaasjs/faasjs121—~500Automated safety check: NotesMIT
Arcgis To Portaljsdatopian/portaljs2.4k1 repos~2kAutomated safety check: PassMIT
AWS Serverless Edazxkane/aws-skills3674 repos~3.2kAutomated safety check: PassMIT
AI Model NodejsTencentCloudBase/CloudBase-AI-Toolkit1.1k3 repos~5kAutomated safety check: PassMIT
Qstash JSupstash/qstash-js2691 repos~746Automated safety check: PassMIT
NubaseOtterMind/Nubase623—~2.2kAutomated safety check: NotesApache-2.0

Similar skills

  • Arcgis To Portaljs

    datopian/portaljs

    Migrate a whole ArcGIS Hub site into a PortalJS Arc portal end-to-end.

    2.4k GitHub starsUsed in 1 repo~2k tokens
    Backend & APIsAuto-check passed
  • AWS Serverless Eda

    zxkane/aws-skills

    AWS serverless and event-driven architecture expert based on Well-Architected Framework.

    367 GitHub starsUsed in 4 repos~3.2k tokens
    Backend & APIsAuto-check passed
  • AI Model Nodejs

    TencentCloudBase/CloudBase-AI-Toolkit

    A skill your agent uses for Node.js backend AI via @cloudbase/node-sdk (=3.16.0) — cloud functions, CloudRun, Express/Koa/NestJS, serverless APIs, scheduled jobs, LLM proxies, agent orchestration.

    1.1k GitHub starsUsed in 3 repos~5k tokens
    Backend & APIsAuto-check passed
  • Qstash JS

    upstash/qstash-js

    Official

    Work with the QStash JavaScript/TypeScript SDK for serverless messaging, scheduling.

    269 GitHub starsUsed in 1 repo~746 tokens
    Backend & APIsAuto-check passed
  • Nubase

    OtterMind/Nubase

    A skill your agent uses when the user mentions Nubase broadly, wants a backend for an AI-generated app, or needs to deploy/publish generated code online — across Database, Auth, Storage, Assets…

    623 GitHub stars~2.2k tokensUpdated 10 days ago
    Backend & APIsAuto-check: notes
  • Operates Tianji Workers: create, test, deploy, invoke, schedule, pause and roll back them, plus manage their environment variables and shared modules.

    3.1k GitHub stars~1.1k tokensUpdated today
    Backend & APIsAuto-check passed

More from faasjs/faasjs

All 8 skills in this repo
  • Faasjs API Jobs

    faasjs/faasjs

    A skill your agent uses when building or reviewing FaasJS backend APIs and jobs: .api.ts files, defineApi, zod params schemas, HttpError, HTTP helpers, middleware/staticHandler, .job.ts files…

    121 GitHub stars~653 tokensUpdated 1 mo ago
    Auto-check passed
  • Faasjs Pg

    faasjs/faasjs

    A skill your agent uses when working with @faasjs/pg or PostgreSQL in FaasJS: Tables declaration merging, QueryBuilder, select aliases, parameterized sql expressions, raw SQL, numeric/decimal/bigint…

    121 GitHub stars~718 tokensUpdated 1 mo ago
    Auto-check passed
  • A skill your agent uses when creating, configuring, reviewing, or onboarding a FaasJS project; working with create-faas-app, vp CLI, TypeScript or Vite config, feature folders, file and naming…

    121 GitHub stars~577 tokensUpdated 1 mo ago
    Auto-check passed
  • A skill your agent uses when building or reviewing FaasJS React UI, especially @faasjs/ant-design pages, useFaas, useFaasStream, faas requests, CRUD screens, Table faasData, Description faasData…

    121 GitHub stars~693 tokensUpdated 1 mo ago
    Auto-check passed
  • A skill your agent uses when working in any FaasJS repo and no narrower FaasJS skill is already selected, or when a task spans project conventions, validation gates, security boundaries, and…

    121 GitHub stars~741 tokensUpdated 1 mo ago
    Auto-check passed
  • Faasjs Specs

    faasjs/faasjs

    A skill your agent uses when implementing, reviewing, or verifying normative FaasJS runtime behavior and compatibility for faas.yaml, staged config discovery and merge order, zero-mapping route…

    121 GitHub stars~444 tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Faasjs Plugins Runtime

What does Faasjs Plugins Runtime do?

A skill your agent uses when building or reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior, InvokeData mutation…. Faasjs Plugins Runtime is an agent skill from faasjs/faasjs.yaml plugin loading, applyConfig, logger usage, @faasjs/node-utils, loadConfig, loadDotenv, module loaders, and Node-only bootstrap code.

When should I use Faasjs Plugins Runtime?

Faasjs Plugins Runtime fits situations like: reviewing FaasJS plugins and runtime infrastructure: Plugin lifecycle hooks including concurrent mount and failed-mount retry behavior; invokeData mutation; defineApiInject module augmentation; faas.yaml plugin loading.

How do I install Faasjs Plugins Runtime in Claude Code?

Run `npx skills add faasjs/faasjs --skill faasjs-plugins-runtime -a claude-code`. Or copy the skill folder (skills/faasjs-plugins-runtime in faasjs/faasjs) into .claude/skills/faasjs-plugins-runtime in your project. Claude Code loads it when a task matches its description.

How do I install Faasjs Plugins Runtime in Codex?

Run `npx skills add faasjs/faasjs --skill faasjs-plugins-runtime -a codex`. Or copy the skill folder (skills/faasjs-plugins-runtime in faasjs/faasjs) into .agents/skills/faasjs-plugins-runtime in your project. Codex loads it when a task matches its description.

Can I use Faasjs Plugins Runtime in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add faasjs/faasjs --skill faasjs-plugins-runtime -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/faasjs-plugins-runtime, .gemini/skills/faasjs-plugins-runtime, .github/skills/faasjs-plugins-runtime and .opencode/skills/faasjs-plugins-runtime in your project.

What does Faasjs Plugins Runtime need to run?

SKILL.md names no scripts, command-line tools or credentials: Faasjs Plugins Runtime is instructions for the agent only.

Does Faasjs Plugins Runtime access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Faasjs Plugins Runtime safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Faasjs Plugins Runtime use?

Faasjs Plugins Runtime is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Faasjs Plugins Runtime use?

About 500 tokens (SKILL.md is roughly 2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.8k tokens, read only when the agent opens those files.

What are the alternatives to Faasjs Plugins Runtime?

Skills that share tags, products or a category with Faasjs Plugins Runtime: Arcgis To Portaljs (datopian/portaljs, 2.4k stars), AWS Serverless Eda (zxkane/aws-skills, 367 stars), AI Model Nodejs (TencentCloudBase/CloudBase-AI-Toolkit, 1.1k stars) and Qstash JS (upstash/qstash-js, 269 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Faasjs Plugins Runtime?

faasjs (a GitHub organization) maintains it in faasjs/faasjs, which has 121 GitHub stars. The repository holds 8 skills in this directory. The repository was last updated on September 3, 2026.

Source: faasjs/faasjs on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.