Agent skill

Project Guidelines Example

by affaan-m in affaan-m/ECC

Project-specific skill template covering architecture, patterns, testing, and deployment guidance.

MITAuto-check: notesTesting & QA

Install Project Guidelines Example

skills CLI
$ npx skills add affaan-m/ECC --skill project-guidelines-example -a claude-code

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

GitHub CLI
$ gh skill install affaan-m/ECC project-guidelines-example --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/affaan-m/ECC.git skills-src && mkdir -p .claude/skills && cp -r skills-src/docs/ja-JP/skills/project-guidelines-example .claude/skills/project-guidelines-example && 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
project-guidelines-example
GitHub stars
275k
Token cost
~2k tokens
SKILL.md length
111 words
Files
1
Skills in repo
645
Repo updated
First seen
Licence
MIT

At a glance

Project-specific skill template covering architecture, patterns, testing, and deployment guidance.

  • Works in 8 steps: 絵文字なし - コード、コメント、ドキュメントに絵文字を使用しない → 不変性 - オブジェクトや配列を変更しない → TDD - 実装前にテストを書く → …
  • Tasks that involve Software architecture
  • SKILL.md covers 使用するタイミング, アーキテクチャの概要, ファイル構造 and コードパターン, plus 4 more sections
  • Calls npm, poetry and gcloud; reaches xxx.supabase.co; needs NEXT_PUBLIC_SUPABASE_ANON_KEY and ANTHROPIC_API_KEY

What it does

Project Guidelines Example is an agent skill from affaan-m/ECC. Project-specific skill template covering architecture, patterns, testing, and deployment guidance.

Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Testing & QA, covering Software architecture and Skill authoring. The repository describes itself as: The agent harness performance optimization system. Skills, instincts, memory, security, and research-first development for Claude Code, Codex, Opencode, Cursor and beyond. The licence is MIT.

When your agent uses it

  • Tasks that involve Software architecture
  • Tasks that involve Skill authoring

Example prompts

  • “/project-guidelines-example”

Requirements

  • Python 3
  • A credential in NEXT_PUBLIC_SUPABASE_ANON_KEY
  • A credential in ANTHROPIC_API_KEY

Workflow steps

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

  1. 絵文字なし - コード、コメント、ドキュメントに絵文字を使用しない
  2. 不変性 - オブジェクトや配列を変更しない
  3. TDD - 実装前にテストを書く
  4. 80%カバレッジ - 最低基準
  5. 小さなファイル多数 - 通常200-400行、最大800行
  6. console.log禁止 - 本番コードには使用しない
  7. 適切なエラー処理 - try/catchを使用
  8. 入力検証 - Pydantic/Zodを使用

What it can do on your machine

Read from SKILL.md and the folder at commit ef648e0. 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

    Shell commands in SKILL.md call:

    • npm
    • poetry
    • gcloud

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

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • xxx.supabase.co

    Also links to:

    • zenith.chat

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

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • NEXT_PUBLIC_SUPABASE_ANON_KEY
    • ANTHROPIC_API_KEY
    • SUPABASE_KEY

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

Context cost

Project Guidelines Example loads about 2k tokens when it runs. Until then it costs about 31 tokens; SKILL.md has 111 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~31
When it runs · the whole SKILL.md, loaded when a task matches
~2k

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:320
    # フロントエンド (.env.local)
  • NoteMentions a .env fileSKILL.md:325
    # バックエンド (.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.

SKILL.md

The full file from affaan-m/ECC at commit ef648e0, republished under its MIT licence (© affaan-m). 111 words, ~2,013 tokens.

Download SKILL.mdSave it as .claude/skills/project-guidelines-example/SKILL.md (or your agent's skills folder).
name
project-guidelines-example
description
Project-specific skill template covering architecture, patterns, testing, and deployment guidance.
metadata.origin
ECC

プロジェクトガイドラインスキル(例)

これはプロジェクト固有のスキルの例です。自分のプロジェクトのテンプレートとして使用してください。

実際の本番アプリケーションに基づいています:Zenith - AI駆動の顧客発見プラットフォーム。


使用するタイミング

このスキルが設計された特定のプロジェクトで作業する際に参照してください。プロジェクトスキルには以下が含まれます:

  • アーキテクチャの概要
  • ファイル構造
  • コードパターン
  • テスト要件
  • デプロイメントワークフロー

アーキテクチャの概要

技術スタック:

  • フロントエンド: Next.js 15 (App Router), TypeScript, React
  • バックエンド: FastAPI (Python), Pydanticモデル
  • データベース: Supabase (PostgreSQL)
  • AI: Claudeツール呼び出しと構造化出力付きAPI
  • デプロイメント: Google Cloud Run
  • テスト: Playwright (E2E), pytest (バックエンド), React Testing Library

サービス:

┌─────────────────────────────────────────────────────────────┐
│                         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フック
│       ├── lib/              # ユーティリティ
│       ├── types/            # TypeScript定義
│       └── config/           # 設定
│
├── backend/
│   ├── routers/              # FastAPIルートハンドラ
│   ├── models.py             # Pydanticモデル
│   ├── main.py               # FastAPIアプリエントリ
│   ├── auth_system.py        # 認証
│   ├── database.py           # データベース操作
│   ├── services/             # ビジネスロジック
│   └── tests/                # pytestテスト
│
├── deploy/                   # デプロイメント設定
├── docs/                     # ドキュメント
└── scripts/                  # ユーティリティスクリプト

コードパターン

APIレスポンス形式 (FastAPI)
python
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)
フロントエンドAPI呼び出し (TypeScript)
typescript
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) }
  }
}
Claude AI統合(構造化出力)
python
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-5",
        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)
カスタムフック (React)
typescript
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 }
}

テスト要件

バックエンド (pytest)
bash
# すべてのテストを実行
poetry run pytest tests/

# カバレッジ付きで実行
poetry run pytest tests/ --cov=. --cov-report=html

# 特定のテストファイルを実行
poetry run pytest tests/test_auth.py -v

テスト構造:

python
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"
フロントエンド (React Testing Library)
bash
# テストを実行
npm run test

# カバレッジ付きで実行
npm run test -- --coverage

# E2Eテストを実行
npm run test:e2e

テスト構造:

typescript
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 が成功(フロントエンド)
  • poetry run pytest が成功(バックエンド)
  • ハードコードされたシークレットなし
  • 環境変数がドキュメント化されている
  • データベースマイグレーションが準備されている
デプロイメントコマンド
bash
# フロントエンドのビルドとデプロイ
cd frontend && npm run build
gcloud run deploy frontend --source .

# バックエンドのビルドとデプロイ
cd backend
gcloud run deploy backend --source .
環境変数
bash
# フロントエンド (.env.local)
NEXT_PUBLIC_API_URL=https://api.example.com
NEXT_PUBLIC_SUPABASE_URL=https://xxx.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=eyJ...

# バックエンド (.env)
DATABASE_URL=postgresql://...
ANTHROPIC_API_KEY=sk-ant-...
SUPABASE_URL=https://xxx.supabase.co
SUPABASE_KEY=eyJ...

重要なルール

  1. 絵文字なし - コード、コメント、ドキュメントに絵文字を使用しない
  2. 不変性 - オブジェクトや配列を変更しない
  3. TDD - 実装前にテストを書く
  4. 80%カバレッジ - 最低基準
  5. 小さなファイル多数 - 通常200-400行、最大800行
  6. console.log禁止 - 本番コードには使用しない
  7. 適切なエラー処理 - try/catchを使用
  8. 入力検証 - Pydantic/Zodを使用

関連スキル

  • coding-standards.md - 一般的なコーディングベストプラクティス
  • backend-patterns.md - APIとデータベースパターン
  • frontend-patterns.md - ReactとNext.jsパターン
  • tdd-workflow/ - テスト駆動開発の方法論

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

Files

Just SKILL.md in docs/ja-JP/skills/project-guidelines-example of affaan-m/ECC.

Open the folder on GitHubat commit ef648e0

Compare with similar skills

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.

Project Guidelines Example compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Project Guidelines Example this skillaffaan-m/ECC275k—~2kAutomated safety check: NotesMIT
Skill Architecture PatternsBingHanOfUESTC/open_agent_team106—~317Automated safety check: PassMIT
Nw Roadmap Review ChecksnWave-ai/nWave617—~748Automated safety check: PassMIT
Nestjs Best Practicesrolling-scopes/rsschool-app10k6 repos~1.2kAutomated safety check: PassMIT
Backend Code Reviewlanggenius/dify158k—~676Automated safety check: PassCustom licence
Evolutionary Modular Architecturetech-leads-club/agent-skills7k—~3.7kAutomated safety check: PassCC-BY-4.0

Similar skills

  • Skill Architecture Patterns

    BingHanOfUESTC/open_agent_team

    A skill your agent uses when designing the structure of a new agent skill, choosing skill name, folder layout, freedom level, references/scripts/assets split, dependencies, validation plan, and…

    106 GitHub stars~317 tokensUpdated 3 mo ago
    Agent WorkflowsAuto-check passed
  • Roadmap-specific validation checks for architecture reviews.

    617 GitHub stars~748 tokensUpdated 22 days ago
    Testing & QAAuto-check passed
  • Nestjs Best Practices

    rolling-scopes/rsschool-app

    NestJS best practices and architecture patterns for building production-ready applications.

    10k GitHub starsUsed in 6 repos~1.2k tokens
    Backend & APIsAuto-check passed
  • Backend Code Review

    langgenius/dify

    Reviews backend code under api/ for concrete, reproducible defects, routes to rule packs for architecture, schema, repositories and SQLAlchemy, and ranks findings from P0 to P3.

    158k GitHub stars~676 tokensUpdated today
    DevelopmentAuto-check passed
  • Evolutionary Modular Architecture

    tech-leads-club/agent-skills

    Guides design of modular-monolith platforms with DDD, flat-by-aggregate modules, anti-corruption layers, outbox events and resilience, plus an architecture document with SVG diagrams.

    7k GitHub stars~3.7k tokensUpdated 18 days ago
    DevelopmentAuto-check passed
  • Api2cli

    alexknowshtml/api2cli

    Generate a working CLI from any API, then wrap it in a Claude Code skill.

    455 GitHub stars~2.9k tokensUpdated 7 mo ago
    Backend & APIsAuto-check passed

More from affaan-m/ECC

All 645 skills in this repo
  • Videodb

    affaan-m/ECC

    Ingest, index, search, edit, and monitor video and audio with the VideoDB Python SDK — upload from files, URLs, or RTSP feeds, build spoken and scene indexes with timestamped search and playable…

    275k GitHub starsUsed in 3 repos~3.5k tokens
    Auto-check: notes
  • Rules Distillation

    affaan-m/ECC

    Scans installed skills for principles that recur across them and proposes rule-file changes: append, revise, add a section, create a file or leave as covered.

    275k GitHub starsUsed in 2 repos~2.3k tokens
    Auto-check passed
  • Builds DRAFT counterparty agreements from one markdown template and a small JSON spec per party, with clauses picked by the party's role.

    275k GitHub stars~2.9k tokensUpdated 3 days ago
    Auto-check passed
  • Measures whether agents actually follow a skill, rule or agent definition by generating scenarios at three strictness levels and scoring tool-call traces.

    275k GitHub starsUsed in 1 repo~623 tokens
    Auto-check passed
  • Instinct-based learning system that observes sessions via hooks, creates atomic instincts with confidence scoring, and evolves them into skills/commands/agents.

    275k GitHub stars~3.5k tokensUpdated 3 days ago
    Auto-check passed
  • Adds one optional external Codex critique that tries to break a council's decision draft, sent to OpenAI only after you consent.

    275k GitHub stars~1.5k tokensUpdated 3 days ago
    Auto-check passed

Questions about Project Guidelines Example

What does Project Guidelines Example do?

Project-specific skill template covering architecture, patterns, testing, and deployment guidance. Project Guidelines Example is an agent skill from affaan-m/ECC. Project-specific skill template covering architecture, patterns, testing, and deployment guidance.

When should I use Project Guidelines Example?

Project Guidelines Example fits situations like: tasks that involve Software architecture; tasks that involve Skill authoring.

How do I install Project Guidelines Example in Claude Code?

Run `npx skills add affaan-m/ECC --skill project-guidelines-example -a claude-code`. Or copy the skill folder (docs/ja-JP/skills/project-guidelines-example in affaan-m/ECC) into .claude/skills/project-guidelines-example in your project. Claude Code loads it when a task matches its description.

How do I install Project Guidelines Example in Codex?

Run `npx skills add affaan-m/ECC --skill project-guidelines-example -a codex`. Or copy the skill folder (docs/ja-JP/skills/project-guidelines-example in affaan-m/ECC) into .agents/skills/project-guidelines-example in your project. Codex loads it when a task matches its description.

Can I use Project Guidelines Example 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 affaan-m/ECC --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.

What does Project Guidelines Example need to run?

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. Our summary lists: Python 3; A credential in NEXT_PUBLIC_SUPABASE_ANON_KEY; A credential in ANTHROPIC_API_KEY.

Does Project Guidelines Example access the network?

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.

Is Project Guidelines Example 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 Project Guidelines Example use?

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.

How many tokens does Project Guidelines Example use?

About 2k tokens (SKILL.md is roughly 8.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Project Guidelines Example?

Skills that share tags, products or a category with Project Guidelines Example: Skill Architecture Patterns (BingHanOfUESTC/open_agent_team, 106 stars), Nw Roadmap Review Checks (nWave-ai/nWave, 617 stars), Nestjs Best Practices (rolling-scopes/rsschool-app, 10k stars) and Backend Code Review (langgenius/dify, 158k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Project Guidelines Example?

affaan-m (a GitHub user) maintains it in affaan-m/ECC, which has 275,023 GitHub stars. The repository holds 645 skills in this directory. The repository was last updated on October 5, 2026.

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