From 044c95ff3c85c5115ecc0fdcf1805100f4f5b7e7 Mon Sep 17 00:00:00 2001 From: ysyneu Date: Thu, 28 May 2026 22:13:59 +0800 Subject: [PATCH] chore: add open-source community health files Bring the repo up to standard OSS project layout (mirroring flashduty-mcp-server): contributing guide, code of conduct (Contributor Covenant 2.1 by reference), security policy, support doc, issue/PR templates, CODEOWNERS, and Dependabot config. README/README_zh gain Contributing/Security sections plus release, CI, and Go Report Card badges. --- .github/CODEOWNERS | 1 + .github/ISSUE_TEMPLATE/bug_report.md | 32 ++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 24 +++++++++++++++ .github/dependabot.yml | 15 ++++++++++ .github/pull_request_template.md | 10 +++++++ CODE_OF_CONDUCT.md | 12 ++++++++ CONTRIBUTING.md | 36 +++++++++++++++++++++++ README.md | 13 ++++++++ README_zh.md | 13 ++++++++ SECURITY.md | 33 +++++++++++++++++++++ SUPPORT.md | 13 ++++++++ 11 files changed, 202 insertions(+) create mode 100644 .github/CODEOWNERS create mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/dependabot.yml create mode 100644 .github/pull_request_template.md create mode 100644 CODE_OF_CONDUCT.md create mode 100644 CONTRIBUTING.md create mode 100644 SECURITY.md create mode 100644 SUPPORT.md diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..e6245a5 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @flashcatcloud/flashduty-cli diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md new file mode 100644 index 0000000..4a7660d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -0,0 +1,32 @@ +--- +name: "\U0001F41B Bug report" +about: Report a bug or unexpected behavior while using Flashduty CLI +title: '' +labels: bug +assignees: '' + +--- + +### Describe the bug + +A clear and concise description of what the bug is. + +### Affected version + +Please run `flashduty version` and paste the output below. + +### Steps to reproduce the behavior + +1. Run this command '...' +2. View the output '....' +3. See error + +### Expected vs actual behavior + +A clear and concise description of what you expected to happen and what actually happened. + +### Logs + +Paste any available logs or command output. Redact app keys and other secrets if needed. + +Closes: diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..8506db3 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,24 @@ +--- +name: "⭐ Submit a feature request" +about: Surface a feature or problem that you think should be solved +title: '' +labels: enhancement +assignees: '' + +--- + +### Describe the feature or problem you'd like to solve + +A clear and concise description of what the feature or problem is. + +### Proposed solution + +How will it benefit Flashduty CLI and its users? + +### Example commands or workflows + +If it's a new command or improvement, share 3–5 example invocations or workflows it would enable. Just enough detail to show the value. + +### Additional context + +Add any other context, screenshots, or mockups here, if applicable. diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..99774ea --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,15 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file + +version: 2 +updates: + - package-ecosystem: "gomod" + directory: "/" + schedule: + interval: "weekly" + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 0000000..da886cf --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,10 @@ + + +Closes: diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..d862ada --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,12 @@ +# Code of Conduct + +This project has adopted the [Contributor Covenant](https://www.contributor-covenant.org/), version 2.1, as its Code of Conduct. Contributors and participants are expected to uphold it. + +The full text is available at: + +- English: https://www.contributor-covenant.org/version/2/1/code_of_conduct/ +- 中文: https://www.contributor-covenant.org/zh-cn/version/2/1/code_of_conduct/ + +## Enforcement + +Instances of abusive or otherwise unacceptable behavior may be reported to the project maintainers at [support@flashcat.cloud](mailto:support@flashcat.cloud). All complaints will be reviewed and investigated promptly and fairly. Maintainers are obligated to respect the privacy and security of the reporter of any incident. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..e45e475 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,36 @@ +# Contributing + +Hi there! We're thrilled that you'd like to contribute to Flashduty CLI. Your help is essential for keeping it great. + +Contributions to this project are [released](https://docs.github.com/site-policy/github-terms/github-terms-of-service#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE). + +Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms. + +## Prerequisites for running and testing code + +These are one-time installations required to test your changes locally as part of the pull request (PR) submission process. + +1. Install Go — [download](https://go.dev/doc/install) or [via Homebrew](https://formulae.brew.sh/formula/go). See `go.mod` for the minimum required version. +2. [Install golangci-lint v2](https://golangci-lint.run/welcome/install/). + +## Submitting a pull request + +1. [Fork](https://github.com/flashcatcloud/flashduty-cli/fork) and clone the repository. +2. Make sure the tests pass on your machine: `go test ./...` +3. Make sure the linter passes on your machine: `golangci-lint run` +4. Create a new branch: `git checkout -b my-branch-name` +5. Make your change, add tests, and make sure the tests and linter still pass. +6. Push to your fork and [submit a pull request](https://github.com/flashcatcloud/flashduty-cli/compare) targeting the `main` branch. +7. Pat yourself on the back and wait for your pull request to be reviewed and merged. + +Here are a few things you can do that will increase the likelihood of your pull request being accepted: + +- Write tests. +- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests. +- Write a [good commit message](https://cbea.ms/git-commit/). + +## Resources + +- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/) +- [Using Pull Requests](https://docs.github.com/pull-requests) +- [GitHub Help](https://docs.github.com) diff --git a/README.md b/README.md index fb72e68..2b364be 100644 --- a/README.md +++ b/README.md @@ -3,6 +3,9 @@ English | [中文](README_zh.md) [![License](https://img.shields.io/github/license/flashcatcloud/flashduty-cli?style=flat-square&color=24bfa5&label=License)](LICENSE) +[![Release](https://img.shields.io/github/v/release/flashcatcloud/flashduty-cli?style=flat-square&color=24bfa5)](https://github.com/flashcatcloud/flashduty-cli/releases) +[![CI](https://img.shields.io/github/actions/workflow/status/flashcatcloud/flashduty-cli/ci.yml?style=flat-square&branch=main&label=CI)](https://github.com/flashcatcloud/flashduty-cli/actions) +[![Go Report Card](https://goreportcard.com/badge/github.com/flashcatcloud/flashduty-cli?style=flat-square)](https://goreportcard.com/report/github.com/flashcatcloud/flashduty-cli) A command-line interface for the [Flashduty](https://flashcat.cloud) platform. Manage incidents, on-call schedules, status pages, and more from your terminal. @@ -307,6 +310,16 @@ make help # Show all available targets --- +## Contributing + +Contributions are welcome! Please read [CONTRIBUTING.md](CONTRIBUTING.md) before opening a pull request, and note our [Code of Conduct](CODE_OF_CONDUCT.md). + +- [Report a bug or request a feature](https://github.com/flashcatcloud/flashduty-cli/issues/new/choose) +- [Get help and support](SUPPORT.md) +- [Report a security vulnerability](SECURITY.md) + +--- + ## License This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. diff --git a/README_zh.md b/README_zh.md index 374fbf8..746903e 100644 --- a/README_zh.md +++ b/README_zh.md @@ -3,6 +3,9 @@ [English](README.md) | 中文 [![License](https://img.shields.io/github/license/flashcatcloud/flashduty-cli?style=flat-square&color=24bfa5&label=License)](LICENSE) +[![Release](https://img.shields.io/github/v/release/flashcatcloud/flashduty-cli?style=flat-square&color=24bfa5)](https://github.com/flashcatcloud/flashduty-cli/releases) +[![CI](https://img.shields.io/github/actions/workflow/status/flashcatcloud/flashduty-cli/ci.yml?style=flat-square&branch=main&label=CI)](https://github.com/flashcatcloud/flashduty-cli/actions) +[![Go Report Card](https://goreportcard.com/badge/github.com/flashcatcloud/flashduty-cli?style=flat-square)](https://goreportcard.com/report/github.com/flashcatcloud/flashduty-cli) [Flashduty](https://flashcat.cloud) 平台的命令行工具。在终端中管理故障、值班、状态页等。 @@ -288,6 +291,16 @@ make help # 显示所有可用目标 --- +## 参与贡献 + +欢迎贡献代码!提交 Pull Request 前请阅读 [CONTRIBUTING.md](CONTRIBUTING.md),并遵守我们的[行为准则](CODE_OF_CONDUCT.md)。 + +- [报告缺陷或提交需求](https://github.com/flashcatcloud/flashduty-cli/issues/new/choose) +- [获取帮助与支持](SUPPORT.md) +- [报告安全漏洞](SECURITY.md) + +--- + ## 许可证 本项目基于 MIT 许可证开源 - 详见 [LICENSE](LICENSE) 文件。 diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..40f9db8 --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,33 @@ +Thanks for helping make Flashduty safe for everyone. + +# Security + +Flashduty takes the security of our software products and services seriously, including all of the open source code repositories managed through our organizations, such as [Flashcat](https://github.com/flashcatcloud). + +Even though open source repositories are outside of the scope of our bug bounty program and therefore not eligible for bounty rewards, we will ensure that your finding gets passed along to the appropriate maintainers for remediation. + +## Reporting Security Issues + +If you believe you have found a security vulnerability in any Flashduty-owned repository, please report it to us through coordinated disclosure. + +**Please do not report security vulnerabilities through public GitHub issues, discussions, or pull requests.** + +Instead, please send an email to [support@flashcat.cloud](mailto:support@flashcat.cloud). + +Please include as much of the information listed below as you can to help us better understand and resolve the issue: + + * The type of issue (e.g., buffer overflow, SQL injection, or cross-site scripting) + * Full paths of source file(s) related to the manifestation of the issue + * The location of the affected source code (tag/branch/commit or direct URL) + * Any special configuration required to reproduce the issue + * Step-by-step instructions to reproduce the issue + * Proof-of-concept or exploit code (if possible) + * Impact of the issue, including how an attacker might exploit the issue + +This information will help us triage your report more quickly. + +## Policy + +Flashduty is committed to responsible security vulnerability disclosure. We pledge to work with security researchers to resolve reported vulnerabilities in a timely manner and to publicly acknowledge their contributions when appropriate. + +We will not take legal action against researchers who report security vulnerabilities in good faith, provided they follow our disclosure guidelines. diff --git a/SUPPORT.md b/SUPPORT.md new file mode 100644 index 0000000..2bd0df5 --- /dev/null +++ b/SUPPORT.md @@ -0,0 +1,13 @@ +# Support + +## How to file issues and get help + +This project uses GitHub issues to track bugs and feature requests. Please search the existing issues before filing new issues to avoid duplicates. For new issues, file your bug or feature request as a new issue. + +For help or questions about using this project, please open an issue. + +- `flashduty-cli` is under active development and maintained by Flashcat staff **AND THE COMMUNITY**. We will do our best to respond to support, feature requests, and community questions in a timely manner. + +## Flashduty Support Policy + +Support for this project is limited to the resources listed above.