Skip to content

Latest commit

 

History

History
64 lines (48 loc) · 4.68 KB

CLAUDE.md

File metadata and controls

64 lines (48 loc) · 4.68 KB

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

What this repo is

GitHub's special .github repository for the @perishdev organization. It holds community health files and the org profile page — there is no application code, no build system, and no test suite. Changes here affect how the org appears on GitHub and how repos in the org inherit defaults.

Layout

  • profile/README.md — content rendered on the public org profile page at github.com/perishdev.
  • Community health files (inherited org-wide — see below):
    • SECURITY.md — vulnerability reporting via GitHub private advisories; includes an anti-AI-spam clause.
    • CODE_OF_CONDUCT.md — Contributor Covenant 2.0; enforcement contact is hasansezertasan@gmail.com.
    • CONTRIBUTING.md — workflow, branch policy, and naming conventions.
    • SUPPORT.md — routes questions → Discussions, bugs → Issues, vulnerabilities → Security.
    • AI_POLICY.md — contributor expectations for AI/LLM use (adapted from Astral, MIT-credited).
    • GOVERNANCE.md — roles (maintainers/contributors), lazy-consensus decision-making, how to become a maintainer.
  • .github/workflow-templates/ — org starter workflows shown under Actions → New workflow → "By perishdev" (NOT inherited like health files). Each template is a <name>.yml + <name>.properties.json (+ optional <name>.svg icon) triple. Ships python-ci (uv + ruff + pytest).
  • .github/FUNDING.yml — reference/template only; all entries commented out. FUNDING.yml is repo-specific and NOT inherited org-wide — kept here to document the syntax, not to enable a Sponsor button.
  • .github/ISSUE_TEMPLATE/ — issue forms (bug.yml, feature.yml, docs.yml) + config.yml (blank issues disabled).
  • .github/DISCUSSION_TEMPLATE/questions.yml — structured discussion template.
  • .github/PULL_REQUEST_TEMPLATE.md — default PR template.
  • .github/PULL_REQUEST_TEMPLATE/ — additional named PR templates (feature.md, bugfix.md, docs.md), opt-in via ?template=<name>.md. NOT inherited — the default template is.
  • .github/CODEOWNERS — global owner is @perishdev/maintainers.
  • .github/release.yml — config for GitHub's auto-generated release notes (categorized, bots excluded).
  • .github/dependabot.yml — default Dependabot config (pip + github-actions, monthly, targets the default branch).
  • .github/labeler.yml / .github/labels.yml — PR path-labeling and label-sync source of truth (repo-local, not inherited).
  • .github/workflows/ — CI for THIS repo only (not inherited): ci.yml (markdownlint + link check + YAML syntax), labeler.yml, labels.yml.
  • .github/actions/markdownlint/ — reusable composite action wrapping markdownlint-cli2, used by ci.yml.
  • .github/copilot-instructions.md — repo-scoped GitHub Copilot brief (points to AGENTS.md/CLAUDE.md).
  • AGENTS.md — tool-agnostic AI-agent guidance; a concise summary of this file.
  • Dev-hygiene configs: .editorconfig, .gitattributes, .gitignore, .markdownlint.json, .pre-commit-config.yaml.
  • CHANGELOG.md, LICENSE, README.md — repo-level metadata.

Community health files are inherited org-wide

Files like SECURITY.md, CODE_OF_CONDUCT.md, CONTRIBUTING.md, SUPPORT.md, GOVERNANCE.md, and the issue/PR/discussion templates are inherited by every repo in the org that does not define its own copy. Consequences when editing them here:

  • A change here silently changes the default for every other perishdev repo. Consider the blast radius.
  • Links inside inherited files must be absolute https://github.com/perishdev/... URLs, not relative paths — relative links break when GitHub renders the file in another repo's context.
  • FUNDING.yml and .github/workflow-templates/ are not inherited — they only take effect in this repo. FUNDING.yml here is a commented reference template, not a live Sponsor config.

Ownership

  • @perishdev/maintainers is the org maintainers team and the global code owner in CODEOWNERS. It has write access to this repo (required for a team to be a valid code owner). Sole member: hasansezertasan.

Branch policy

Work happens on short-lived branches off main, and pull requests target main directly:

feature/* → main
  • Open PRs against main.
  • Branch names follow the Conventional Branch spec (e.g. feature/…, fix/…, docs/…).
  • Dependabot targets the default branch (main); no target-branch override is set.

Conventions

  • Commit messages: Conventional Commits.
  • Branch names: Conventional Branch.
  • PR titles: Conventional Pull Request action format.