feathers-service

feathers-service is a skill for Claude Code from hassan4702/feathers-plugin. It costs 155 tokens per session (2,115 once invoked), scanned A, original, MIT.

A guide for creating FeathersJS v5 services, which provide reusable CRUD operations over REST, real-time connections, or internal calls.

In plain words
What is it for?
Use it when adding an endpoint, resource, collection, table-backed CRUD service, or FeathersJS service configuration.
Why use it?
It gives each resource a consistent four-file structure and explains how to register the service with the application and its TypeScript declarations.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Needs its repository: it reads a path above its own folder, which exists only inside the repository. The line is import type { Application } from '../../declarations'.

Part of the feathersjs plugin — 4 skills, 1 agent shipped together

Good fit Use it when adding an endpoint, resource, collection, table-backed CRUD service, or FeathersJS service configuration.

Compare 6 skills from other repositories ↓
Install

Getting it into your agent

It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.

Clone the repo
git clone --depth 1 https://github.com/hassan4702/feathers-plugin
agentmods
npx agentmods add skills/hassan4702/feathers-plugin/feathers-service

Made for: Claude Code.

Or install feathersjs, the plugin that ships this one along with the rest of its 4 skills, 1 agent.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for feathers-service

README.md
[![agentmods](https://agentmods.dev/badge/skills/hassan4702/feathers-plugin/feathers-service/github.svg)](https://agentmods.dev/skills/hassan4702/feathers-plugin/feathers-service)
Your own site
<a href="https://agentmods.dev/skills/hassan4702/feathers-plugin/feathers-service"><img src="https://agentmods.dev/badge/skills/hassan4702/feathers-plugin/feathers-service/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for feathers-service

Your own site · 80×15
<a href="https://agentmods.dev/skills/hassan4702/feathers-plugin/feathers-service"><img src="https://agentmods.dev/badge/skills/hassan4702/feathers-plugin/feathers-service.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 155 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,115 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00155 $0.02115
Opus 5 $0.00077 $0.01058
Sonnet 5 $0.00031 $0.00423
Haiku 4.5 $0.00015 $0.00212

Measured 9d ago against content hash ea1fee857471, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-09, from the pricing page.

Security

Grade A, and why

feathers-service scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/feathers-service/SKILL.md · 214 lines

How it starts

The opening of the file, as written. The whole thing — 214 lines — stays where its author put it; the contents beside it link to each section on GitHub.

FeathersJS Service Scaffolding

A Feathers service is an object/class implementing standard CRUD methods (find, get, create, update, patch, remove, plus lifecycle setup/teardown). Services are transport-independent: the same method works over REST, websockets, or internal calls. Data-mutating methods (create/update/patch/remove) auto-emit real-time events (created/updated/patched/removed).

The official CLI (npx feathers generate service) produces four files per service. Prefer running the generator if the user has the CLI; otherwise reproduce this structure by hand. Always match the project's existing conventions (id type, database adapter, ESM vs CJS) — read a sibling service first.

Method → HTTP mapping

Method HTTP Path
find GET /messages
get GET /messages/:id
create POST /messages
update PUT /messages/:id (full replace)
patch PATCH /messages/:id (merge)
remove DELETE /messages/:id

The four files

Replace Message/message/messages with the resource. messages is the path, message is the variable base, Message is the type. Pick the right id: SQL/Knex uses id: Type.Number(); MongoDB uses _id: ObjectIdSchema(). Read src/declarations.ts and an existing service to confirm.

1. <name>.class.ts — the service class

For a database-backed service, extend the adapter service rather than hand-writing CRUD. SQL/Knex example:

import type { Params } from '@feathersjs/feathers'
import { KnexService } from '@feathersjs/knex'
import type { KnexAdapterParams, KnexAdapterOptions } from '@feathersjs/knex'

import type { Application } from '../../declarations'
import type { Message, MessageData, MessagePatch, MessageQuery } from './messages.schema'

export type { Message, MessageData, MessagePatch, MessageQuery }

export interface MessageParams extends KnexAdapterParams<MessageQuery> {}

export class MessageService<ServiceParams extends Params = MessageParams> extends KnexService<
  Message,
  MessageData,
  MessageParams,
  MessagePatch
> {}

export const getOptions = (app: Application): KnexAdapterOptions => {
  return {
    paginate: app.get('paginate'),
    Model: app.get('postgresqlClient'), // or sqliteClient — match the project's db config key
    name: 'messages'
  }
}

Read the full file on GitHub · 214 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 9d ago First seen · 214 lines · 155 tokens per session scan A ea1fee857471

Subscribe to this mod's changes

feathers-service is a skill published in the GitHub repository hassan4702/feathers-plugin (2 stars, last pushed 3mo ago), licensed MIT. It adds 155 tokens to every session and 2,115 once invoked, about $0.0008 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

better-auth

Skill for integrating Better Auth - comprehensive TypeScript authentication framework for Cloudflare D1, Next.js, Nuxt, and 15+ frameworks. Use when adding auth, encountering D1 adapter errors, or implementing OAuth/2FA/RBAC features.

secondsky/claude-skills · 53 tokens

fec-typescript-project-standard

A TypeScript project standard for applications, libraries, SDKs, command-line tools, and monorepos. TypeScript adds types to JavaScript, while a monorepo stores multiple related packages in one repository.

bovinphang/frontend-craft · 151 tokens

fec-vue3-project-standard

A Vue 3 and TypeScript project standard covering component boundaries, composables, routing, Pinia state, API layers, errors, styles, and project structure. Vue is a frontend framework, and composables are reusable functions for sharing component logic.

bovinphang/frontend-craft · 114 tokens

pretext

Help developers use @chenglou/pretext, a small TypeScript text measurement library that computes exact text metrics without DOM reflows. Use when users mention pretext, @chenglou/pretext, @chenglou/pretext/rich-inline, measuring text height without triggering DOM reflow, measuring text height or line count in JS…

yaniv-golan/pretext-skill · 182 tokens

pn-backend-scaffolding

Scaffolds new API routes, modules, or services in Node (Express, Fastify, Hono) or similar. Use when adding a new route/module/service; covers project layout, env/secrets pattern, error-handling stub, and stack-specific conventions. Reference pn-node-api and pn-backend-philosophy for design rules.

perniemann/pnCore · 75 tokens

pn-node-api

Guides Node/API design, DB access patterns, and env/secrets. Use when designing or implementing Node/API code; covers API design, error handling, config, and DB patterns.

perniemann/pnCore · 41 tokens