SOC 職業分類に基づく
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/CodySwannGT/lisa --skill nestjs-graphqlコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
SKILL.md を表示中
This skill should be used for any non-trivial request — features, bugs, stories, epics, spikes, or multi-step tasks. It accepts a ticket URL (Jira, Linear, GitHub), a file path containing a spec, or a plain-text prompt. It assembles an agent team, breaks the work into structured tasks, and manages the full lifecycle from research through implementation, code review, deploy, and empirical verification.
any non-trivial request —…
This skill should be used for any non-trivial request — features, bugs, stories, epics, spikes, or multi-step tasks. It accepts a ticket URL (Jira, Linear, GitHub), a file path containing a spec, or a plain-text prompt. It assembles an agent team, breaks the work into structured tasks, and manages the full lifecycle from research through implementation, code review, deploy, and empirical verification.
| name | nestjs-graphql |
| description | Comprehensive guide for NestJS… |
This skill provides comprehensive guidance for building GraphQL APIs with NestJS using Apollo Server and the code-first approach. It covers official NestJS GraphQL patterns plus project-specific implementations for authentication, authorization, and data loading.
| Decorator | Purpose | Import |
|---|---|---|
@Resolver() | Define resolver class | @nestjs/graphql |
@Query() | Define query operation | @nestjs/graphql |
@Mutation() | Define mutation operation | @nestjs/graphql |
@Args() | Extract arguments | @nestjs/graphql |
@Context() | Access GraphQL context | @nestjs/graphql |
@Parent() | Access parent in field resolver | @nestjs/graphql |
@ResolveField() | Define field resolver | @nestjs/graphql |
@ObjectType() | Define GraphQL object type | @nestjs/graphql |
@InputType() | Define GraphQL input type | @nestjs/graphql |
@Field() | Define field on type | @nestjs/graphql |
@Extensions() | Attach metadata to fields | @nestjs/graphql |
| Decorator | GraphQL Type | TypeScript Type |
|---|---|---|
@Field(() => String) | "String!" | string |
@Field(() => Int) | "Int!" | number |
@Field(() => Float) | "Float!" | number |
@Field(() => Boolean) | "Boolean!" | boolean |
@Field(() => ID) | "ID!" | string |
@Field(() => [String]) | "[String!]!" | string[] |
@Field({ nullable: true }) | String | string | null |
import { Args, Context, Mutation, Query, Resolver } from "@nestjs/graphql";
import { Public, Authed } from "../auth";
@Resolver(() => Entity)
export class EntityResolver {
constructor(private readonly entityService: EntityService) {}
@Query(() => Entity, { description: "Retrieve entity by ID" })
@Authed()
async entity(@Args("id", { type: () => ID }) id: string): Promise<Entity> {
return this.entityService.findById(id);
}
@Mutation(() => Entity, { description: "Create new entity" })
@Authed()
async createEntity(
() : ,
() { req }:
): <> {
..(input, req..);
}
}
import { Field, ID, ObjectType } from "@nestjs/graphql";
@ObjectType({ description: "Represents a user in the system" })
export class User {
@Field(() => ID, { description: "Unique identifier" })
id: string;
@Field(() => String, { description: "User's email address" })
email: string;
@Field(() => String, { nullable: true, description: "Display name" })
displayName?: string;
@Field(() => Date, { description: "Account creation timestamp" })
createdAt: Date;
}
import { Field, InputType } from "@nestjs/graphql";
@InputType({ description: "Input for creating a new user" })
export class CreateUserInput {
@Field(() => String, { description: "User's email address" })
email: string;
@Field(() => String, { description: "User's password" })
password: string;
@Field(() => String, { nullable: true, description: "Optional display name" })
displayName?: string;
}
This skill includes detailed reference files for specific topics:
Setup and configuration for NestJS GraphQL with Apollo driver, module configuration, and code-first vs schema-first approaches.
Comprehensive guide to writing resolvers, queries, mutations, field resolvers, and using decorators like @Args, @Context, @Parent.
Creating object types, input types, enums, interfaces, unions, and custom scalars. Includes mapped types (PartialType, PickType, etc.).
Field middleware, query complexity, plugins, subscriptions, and extensions.
Project-specific patterns including zero-trust auth decorators (@Public, @Authed, @Owner, @Groups), DataLoader integration, and GraphQL documentation standards.
@Query() decorator@Public(), @Authed(), or @Groups())@Query(() => ReturnType)@Query(() => ReturnType, { description: "..." })@Args() for parameters with descriptions@Mutation() decorator@Authed())@Context() { req }: GraphQLContext@ResolveField(() => [Comment], { description: "Entity's comments" })
async comments(
@Parent() entity: Entity,
@Context() { loaders }: GraphQLContext
): Promise<Comment[]> {
return loaders.commentsLoader.load(entity.id);
}
getByIds(ids: string[]): Promise<Entity[]>IDataLoaders interfaceDataLoaderService.getLoaders()loaders.entityLoader.load(id)See references/project-patterns.md for detailed DataLoader patterns.