Integration Tests for pREST
prest/prest
Guides writing and reviewing pREST Docker-based integration tests so every HTTP request is explained by step comments or table-driven descriptions.
“실제 프로덕션 애플리케이션을 기반으로 한 프로젝트별 스킬 템플릿 예시.”
$ npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install loulanyue/awesome-claude-notes project-guidelines-example --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/loulanyue/awesome-claude-notes.git skills-src && mkdir -p .claude/skills && cp -r skills-src/docs/ko-KR/skills/project-guidelines-example .claude/skills/project-guidelines-example && rm -rf skills-srcUse ~/.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/
Install the "project-guidelines-example" agent skill from https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-example into .claude/skills/project-guidelines-example/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-guidelines-example", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-exampleType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install loulanyue/awesome-claude-notes project-guidelines-example --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/loulanyue/awesome-claude-notes.git skills-src && mkdir -p .agents/skills && cp -r skills-src/docs/ko-KR/skills/project-guidelines-example .agents/skills/project-guidelines-example && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "project-guidelines-example" agent skill from https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-example into .agents/skills/project-guidelines-example/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-guidelines-example", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install loulanyue/awesome-claude-notes project-guidelines-example --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/loulanyue/awesome-claude-notes.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/docs/ko-KR/skills/project-guidelines-example .cursor/skills/project-guidelines-example && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "project-guidelines-example" agent skill from https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-example into .cursor/skills/project-guidelines-example/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-guidelines-example", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/loulanyue/awesome-claude-notes.git --path docs/ko-KR/skills/project-guidelines-example--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install loulanyue/awesome-claude-notes project-guidelines-example --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/loulanyue/awesome-claude-notes.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/docs/ko-KR/skills/project-guidelines-example .gemini/skills/project-guidelines-example && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "project-guidelines-example" agent skill from https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-example into .gemini/skills/project-guidelines-example/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-guidelines-example", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install loulanyue/awesome-claude-notes project-guidelines-exampleInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/loulanyue/awesome-claude-notes.git skills-src && mkdir -p .github/skills && cp -r skills-src/docs/ko-KR/skills/project-guidelines-example .github/skills/project-guidelines-example && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "project-guidelines-example" agent skill from https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-example into .github/skills/project-guidelines-example/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-guidelines-example", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install loulanyue/awesome-claude-notes project-guidelines-example --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/loulanyue/awesome-claude-notes.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/docs/ko-KR/skills/project-guidelines-example .opencode/skills/project-guidelines-example && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "project-guidelines-example" agent skill from https://github.com/loulanyue/awesome-claude-notes/tree/main/docs/ko-KR/skills/project-guidelines-example into .opencode/skills/project-guidelines-example/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "project-guidelines-example", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
project-guidelines-exampleProject Guidelines Example is a skill in loulanyue/awesome-claude-notes (272 stars). Its SKILL.md is about 2k tokens, and copies of it appear in 1 other owners' repositories. Licence: MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 866b55b. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
npmpoetrygcloudFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
xxx.supabase.coAlso links to:
zenith.chatFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
NEXT_PUBLIC_SUPABASE_ANON_KEYANTHROPIC_API_KEYSUPABASE_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Project Guidelines Example loads about 2k tokens when it runs. Until then it costs about 17 tokens; SKILL.md has 234 words of instructions outside code blocks.
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.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
# Frontend (.env.local)# Backend (.env)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.
The full file from loulanyue/awesome-claude-notes at commit 866b55b, republished under its MIT licence (© loulanyue). 234 words, ~2,047 tokens.
.claude/skills/project-guidelines-example/SKILL.md (or your agent's skills folder).이것은 프로젝트별 스킬의 예시입니다. 자신의 프로젝트에 맞는 템플릿으로 사용하세요.
실제 프로덕션 애플리케이션을 기반으로 합니다: Zenith - AI 기반 고객 발견 플랫폼.
이 스킬이 설계된 특정 프로젝트에서 작업할 때 참조하세요. 프로젝트 스킬에는 다음이 포함됩니다:
기술 스택:
서비스:
┌─────────────────────────────────────────────────────────────┐
│ Frontend │
│ Next.js 15 + TypeScript + TailwindCSS │
│ Deployed: Vercel / Cloud Run │
└─────────────────────────────────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────────┐
│ Backend │
│ FastAPI + Python 3.11 + Pydantic │
│ Deployed: Cloud Run │
└─────────────────────────────────────────────────────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌──────────┐ ┌──────────┐ ┌──────────┐
│ Supabase │ │ Claude │ │ Redis │
│ Database │ │ API │ │ Cache │
└──────────┘ └──────────┘ └──────────┘project/
├── frontend/
│ └── src/
│ ├── app/ # Next.js app router 페이지
│ │ ├── api/ # API 라우트
│ │ ├── (auth)/ # 인증 보호 라우트
│ │ └── workspace/ # 메인 앱 워크스페이스
│ ├── components/ # React 컴포넌트
│ │ ├── ui/ # 기본 UI 컴포넌트
│ │ ├── forms/ # 폼 컴포넌트
│ │ └── layouts/ # 레이아웃 컴포넌트
│ ├── hooks/ # 커스텀 React hooks
│ ├── lib/ # 유틸리티
│ ├── types/ # TypeScript 정의
│ └── config/ # 설정
│
├── backend/
│ ├── routers/ # FastAPI 라우트 핸들러
│ ├── models.py # Pydantic 모델
│ ├── main.py # FastAPI 앱 엔트리
│ ├── auth_system.py # 인증
│ ├── database.py # 데이터베이스 작업
│ ├── services/ # 비즈니스 로직
│ └── tests/ # pytest 테스트
│
├── deploy/ # 배포 설정
├── docs/ # 문서
└── scripts/ # 유틸리티 스크립트from pydantic import BaseModel
from typing import Generic, TypeVar, Optional
T = TypeVar('T')
class ApiResponse(BaseModel, Generic[T]):
success: bool
data: Optional[T] = None
error: Optional[str] = None
@classmethod
def ok(cls, data: T) -> "ApiResponse[T]":
return cls(success=True, data=data)
@classmethod
def fail(cls, error: str) -> "ApiResponse[T]":
return cls(success=False, error=error)interface ApiResponse<T> {
success: boolean
data?: T
error?: string
}
async function fetchApi<T>(
endpoint: string,
options?: RequestInit
): Promise<ApiResponse<T>> {
try {
const response = await fetch(`/api${endpoint}`, {
...options,
headers: {
'Content-Type': 'application/json',
...options?.headers,
},
})
if (!response.ok) {
return { success: false, error: `HTTP ${response.status}` }
}
return await response.json()
} catch (error) {
return { success: false, error: String(error) }
}
}from anthropic import Anthropic
from pydantic import BaseModel
class AnalysisResult(BaseModel):
summary: str
key_points: list[str]
confidence: float
async def analyze_with_claude(content: str) -> AnalysisResult:
client = Anthropic()
response = client.messages.create(
model="claude-sonnet-4-5-20250514",
max_tokens=1024,
messages=[{"role": "user", "content": content}],
tools=[{
"name": "provide_analysis",
"description": "Provide structured analysis",
"input_schema": AnalysisResult.model_json_schema()
}],
tool_choice={"type": "tool", "name": "provide_analysis"}
)
# Extract tool use result
tool_use = next(
block for block in response.content
if block.type == "tool_use"
)
return AnalysisResult(**tool_use.input)import { useState, useCallback } from 'react'
interface UseApiState<T> {
data: T | null
loading: boolean
error: string | null
}
export function useApi<T>(
fetchFn: () => Promise<ApiResponse<T>>
) {
const [state, setState] = useState<UseApiState<T>>({
data: null,
loading: false,
error: null,
})
const execute = useCallback(async () => {
setState(prev => ({ ...prev, loading: true, error: null }))
const result = await fetchFn()
if (result.success) {
setState({ data: result.data!, loading: false, error: null })
} else {
setState({ data: null, loading: false, error: result.error! })
}
}, [fetchFn])
return { ...state, execute }
}# Run all tests
poetry run pytest tests/
# Run with coverage
poetry run pytest tests/ --cov=. --cov-report=html
# Run specific test file
poetry run pytest tests/test_auth.py -v테스트 구조:
import pytest
from httpx import AsyncClient
from main import app
@pytest.fixture
async def client():
async with AsyncClient(app=app, base_url="http://test") as ac:
yield ac
@pytest.mark.asyncio
async def test_health_check(client: AsyncClient):
response = await client.get("/health")
assert response.status_code == 200
assert response.json()["status"] == "healthy"# Run tests
npm run test
# Run with coverage
npm run test -- --coverage
# Run E2E tests
npm run test:e2e테스트 구조:
import { render, screen, fireEvent } from '@testing-library/react'
import { WorkspacePanel } from './WorkspacePanel'
describe('WorkspacePanel', () => {
it('renders workspace correctly', () => {
render(<WorkspacePanel />)
expect(screen.getByRole('main')).toBeInTheDocument()
})
it('handles session creation', async () => {
render(<WorkspacePanel />)
fireEvent.click(screen.getByText('New Session'))
expect(await screen.findByText('Session created')).toBeInTheDocument()
})
})npm run build 성공 (frontend)poetry run pytest 통과 (backend)# Build and deploy frontend
cd frontend && npm run build
gcloud run deploy frontend --source .
# Build and deploy backend
cd backend
gcloud run deploy backend --source .# Frontend (.env.local)
NEXT_PUBLIC_API_URL=https://api.example.com
NEXT_PUBLIC_SUPABASE_URL=https://xxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJ...
# Backend (.env)
DATABASE_URL=postgresql://...
ANTHROPIC_API_KEY=sk-ant-...
SUPABASE_URL=https://xxx.supabase.co
SUPABASE_KEY=eyJ...coding-standards.md - 일반 코딩 모범 사례backend-patterns.md - API 및 데이터베이스 패턴frontend-patterns.md - React 및 Next.js 패턴tdd-workflow/ - 테스트 주도 개발 방법론© loulanyue, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in docs/ko-KR/skills/project-guidelines-example of loulanyue/awesome-claude-notes.
Open the folder on GitHubat commit 866b55b
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in loulanyue/awesome-claude-notes, which our catalogue first saw on October 7, 2026.
Project Guidelines Example 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Project Guidelines Example this skillloulanyue/awesome-claude-notes | 272 | 1 repos | ~2k | Automated safety check: Notes | MIT | |
| Integration Tests for pRESTprest/prest | 4.6k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Testing Best Practicesanonaddy/anonaddy | 4.9k | 5 repos | ~1k | Automated safety check: Pass | MIT | |
| Cloud Agents Starterscalar/scalar | 16k | — | ~1.4k | Automated safety check: Pass | MIT | |
| Test Weave Router with Codexweave-os/router | 5.6k | — | ~4.7k | Automated safety check: Notes | Apache-2.0 | |
| New Event Sourceaws/aws-lambda-dotnet | 1.7k | — | ~3k | Automated safety check: Pass | Apache-2.0 |
prest/prest
Guides writing and reviewing pREST Docker-based integration tests so every HTTP request is explained by step comments or table-driven descriptions.
anonaddy/anonaddy
Laravel test design and review. An agent skill from anonaddy/anonaddy.
scalar/scalar
Minimal starter runbook for cloud agents to install dependencies, run packages, execute tests, and troubleshoot the Scalar monorepo quickly.
weave-os/router
Local test harness for the Weave router: a docker compose stack plus codex exec runs that confirm how Codex requests are routed, translated and marked.
aws/aws-lambda-dotnet
Add a new AWS event source attribute (e.g., Kinesis, Kafka, MQ) to the Lambda .NET Annotations framework, including the attribute class, source generator integration, CloudFormation writer, unit…
supabase/supabase
Component tests for Supabase Studio that mock API requests at the network layer with MSW.
loulanyue/awesome-claude-notes
Interactive agent picker for composing and dispatching parallel teams
loulanyue/awesome-claude-notes
Orchestrate multi-agent coding tasks via Claude DevFleet — plan projects, dispatch parallel agents in isolated worktrees, monitor progress, and read structured reports.
loulanyue/awesome-claude-notes
Interactive installer for awesome claude notes — guides users through selecting and installing skills and rules to user-level or project-level directories, verifies paths, and optionally optimizes…
loulanyue/awesome-claude-notes
Anthropic Claude API 的 Python 和 TypeScript 使用模式。涵盖 Messages API、流式处理、工具使用、视觉功能、扩展思维、批量处理、提示缓存和 Claude Agent SDK。适用于使用 Claude API 或 Anthropic SDK 构建应用程序的场景。
loulanyue/awesome-claude-notes
awesome claude notes のインタラクティブなインストーラー — スキルとルールの選択とインストールをユーザーレベルまたはプロジェクトレベルのディレクトリへガイドし、パスを検証し、必要に応じてインストールされたファイルを最適化します。
loulanyue/awesome-claude-notes
awesome claude notes 的交互式安装程序 — 引导用户选择并安装技能和规则到用户级或项目级目录,验证路径,并可选择优化已安装文件。
Categories
Run `npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a claude-code`. Or copy the skill folder (docs/ko-KR/skills/project-guidelines-example in loulanyue/awesome-claude-notes) into .claude/skills/project-guidelines-example in your project. Claude Code loads it when a task matches its description.
Run `npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a codex`. Or copy the skill folder (docs/ko-KR/skills/project-guidelines-example in loulanyue/awesome-claude-notes) into .agents/skills/project-guidelines-example in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add loulanyue/awesome-claude-notes --skill project-guidelines-example -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/project-guidelines-example, .gemini/skills/project-guidelines-example, .github/skills/project-guidelines-example and .opencode/skills/project-guidelines-example in your project.
Going by SKILL.md and its folder, Project Guidelines Example needs the command-line tools its instructions call (npm, poetry and gcloud) and credentials named NEXT_PUBLIC_SUPABASE_ANON_KEY, ANTHROPIC_API_KEY and SUPABASE_KEY.
SKILL.md names 2 domains. In commands or code: xxx.supabase.co; the agent is likely to contact it when it follows the instructions. As links in the text: zenith.chat. This is read from the text; nothing was executed.
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.
Project Guidelines Example is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 8.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Project Guidelines Example: Integration Tests for pREST (prest/prest, 4.6k stars), Testing Best Practices (anonaddy/anonaddy, 4.9k stars), Cloud Agents Starter (scalar/scalar, 16k stars) and Test Weave Router with Codex (weave-os/router, 5.6k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
loulanyue (a GitHub user) maintains it in loulanyue/awesome-claude-notes, which has 272 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 5, 2026.
Source: loulanyue/awesome-claude-notes on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.