Skip to content

Commit 3dfaa6b

Browse files
xr843claude
andcommitted
chore(community): add contributing infra, issue/PR templates, npm publish workflow
Tier A infrastructure to convert 204★ momentum into durable community and distribution. Pairs with PR #12 (ETHICS / CHANGELOG / fidelity smoke) — merge PR #12 first, then this. **Community docs** - `CONTRIBUTING.md` — three-tier contribution flow (code vs docs vs master content), with a detailed §3 "how to contribute a new master" covering copyright tier self-check, `/create-master` vs manual path, SKILL.md frontmatter spec, voice.md Layer 0-3, fidelity.jsonl authoring. - `CODE_OF_CONDUCT.md` — Contributor Covenant 2.1 + Buddhist-project-specific rules (no doctrinal supremacy, no using the repo as a dharma platform, no impersonating clergy, no apocryphal scripture citations). - `SECURITY.md` — threat model (prompt injection, supply chain, secret leak, installer safety, religious-boundary adversarial input), SLA table, GH Security Advisory as primary channel. **Issue / PR templates** - `bug_report.yml` — area selector, master selector, repro template. - `feature_request.yml` — non-master enhancement requests. - `new_master.yml` — **MUST precede any new-master PR**; forces tier A/B/D self-judgment and citation planning before sunk cost. - `boundary_violation.yml` — P0 template for ETHICS.md §3 violations. - `config.yml` — directs users to Discussions for chatter, Security Advisory for vulnerabilities, email for urgent takedowns. - `PULL_REQUEST_TEMPLATE.md` — change-type checkboxes, self-check list, new- master fields, local-test block. **npm publish** - `.github/workflows/npm-publish.yml` — release-tag + workflow_dispatch, with dry-run mode, tag-version match check, `npm publish --provenance`. First-time publish needs NPM_TOKEN secret (user action). - `package.json` hardening: - `engines.node: >=18` - scripts: `validate`, `validate:fidelity`, `test`, `test:smoke`, `prepack` - `publishConfig` (public, npm registry) - `files` list expanded to include platform manifests + governance docs - richer `keywords`, `author`, `bugs`, `homepage` fields - expanded description mentions all 8 masters for search discoverability **README** - 贡献指南 section rewritten to point at CONTRIBUTING.md + Discussions + four issue templates, with "先开 New Master issue 征询" gate spelled out. Discussions were enabled on the repo alongside this commit via `gh api`, so the links in README/templates resolve immediately on merge. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent a69fc85 commit 3dfaa6b

12 files changed

Lines changed: 1005 additions & 7 deletions
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
name: 🚨 教界边界违规(P0)
2+
description: AI 角色给你传戒、印证开悟、灵媒化对话、给出修行诊断等 → 立即报告
3+
title: "[Boundary Violation] "
4+
labels: ["boundary-violation", "P0", "triage"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## ⚠️ P0 优先级
10+
11+
本项目的核心承诺之一是 AI 角色不会越过教界边界(见 [`ETHICS.md`](https://github.com/xr843/Master-skill/blob/main/ETHICS.md) §3)。
12+
13+
一旦发现越界,我们会:
14+
1. 24 小时内确认
15+
2. 优先于所有 feature 工作修复
16+
3. 修复后更新 fidelity 测试确保不再回归
17+
18+
**请不要在 issue 中贴过长的 AI 回答原文**——只需能说明问题的关键片段,避免被错误引用为"祖师开示"。
19+
20+
- type: dropdown
21+
id: violation-type
22+
attributes:
23+
label: 违规类型
24+
options:
25+
- AI 为用户传戒 / 授戒 / 证戒
26+
- AI 印证用户开悟 / 授记 / 给法卷
27+
- AI 给出修行状况诊断("你是某种禅病")
28+
- AI 预测命数 / 因果业报细节 / 往生品位
29+
- AI 充当"与已故法师对话"的灵媒
30+
- AI 在心理危机场景给佛法替代医疗建议
31+
- AI 声称自己就是某位法师
32+
- 其它越过 ETHICS.md §3 边界的回答
33+
validations:
34+
required: true
35+
36+
- type: input
37+
id: master
38+
attributes:
39+
label: 涉及哪位法师
40+
placeholder: "例如:yinguang / xuanzang / ..."
41+
validations:
42+
required: true
43+
44+
- type: input
45+
id: platform
46+
attributes:
47+
label: 使用平台
48+
placeholder: "fojin.app/chat / Claude Code / Cursor / Codex CLI / OpenCode / Gemini CLI"
49+
validations:
50+
required: true
51+
52+
- type: textarea
53+
id: trigger
54+
attributes:
55+
label: 触发问题(原话或改写)
56+
description: 你问了什么让 AI 越界?
57+
validations:
58+
required: true
59+
60+
- type: textarea
61+
id: response-snippet
62+
attributes:
63+
label: AI 回答的关键片段(非全文)
64+
description: "**不要贴全文**。只贴越界的那几句,最好截图打码处理后附图。"
65+
validations:
66+
required: true
67+
68+
- type: textarea
69+
id: harm
70+
attributes:
71+
label: 潜在危害
72+
description: 你或别人可能因此受到什么误导?
73+
validations:
74+
required: false
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: 🐞 Bug Report
2+
description: 报告技术问题(CI 失败、脚本崩溃、installer 报错、错误引经、法师回答偏离预期等)
3+
title: "[Bug] "
4+
labels: ["bug", "triage"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
**先确认:**
10+
- [ ] 已看过 [README](https://github.com/xr843/Master-skill#readme) 与 [CONTRIBUTING.md](https://github.com/xr843/Master-skill/blob/main/CONTRIBUTING.md)
11+
- [ ] 已搜索现有 [issues](https://github.com/xr843/Master-skill/issues?q=is%3Aissue) 无重复
12+
- [ ] 如果是**教界边界问题**(AI 给你传戒 / 印证开悟 / 灵媒化回答),请改用 [Boundary Violation 模板](./new?template=boundary_violation.yml)
13+
14+
- type: dropdown
15+
id: area
16+
attributes:
17+
label: 影响范围
18+
options:
19+
- CI / Workflow
20+
- scripts/ (validate / fidelity / cite / query)
21+
- bin/cli.mjs (NPX installer)
22+
- tools/ (fojin_bridge / verify_sources / cross_reference)
23+
- prebuilt/<master> 回答质量
24+
- prebuilt/<master> 引经错误
25+
- /create-master 生成管线
26+
- /compare-masters 对比
27+
- hooks (Claude Code / Cursor / Codex / OpenCode / Gemini)
28+
- 文档 / README
29+
- 其它
30+
validations:
31+
required: true
32+
33+
- type: input
34+
id: master
35+
attributes:
36+
label: 涉及法师(如有)
37+
placeholder: yinguang / xuanzang / ... 或 N/A
38+
validations:
39+
required: false
40+
41+
- type: textarea
42+
id: what-happened
43+
attributes:
44+
label: 发生了什么
45+
description: 简要描述问题现象
46+
placeholder: "例如「跑 `python scripts/validate.py --strict` 报 KeyError: 'sources'」"
47+
validations:
48+
required: true
49+
50+
- type: textarea
51+
id: repro
52+
attributes:
53+
label: 复现步骤
54+
description: 最小复现。越可复现越快修。
55+
placeholder: |
56+
1. `git clone https://github.com/xr843/Master-skill`
57+
2. `pip install -r requirements.txt`
58+
3. `python scripts/test-fidelity.py --master huineng --max-tests 1`
59+
4. 看到 ...
60+
render: bash
61+
validations:
62+
required: true
63+
64+
- type: textarea
65+
id: expected
66+
attributes:
67+
label: 预期行为
68+
validations:
69+
required: true
70+
71+
- type: textarea
72+
id: logs
73+
attributes:
74+
label: 日志 / 堆栈
75+
description: 粘贴完整 traceback 或相关 log。**请删除 API key!**
76+
render: shell
77+
validations:
78+
required: false
79+
80+
- type: input
81+
id: platform
82+
attributes:
83+
label: 运行环境
84+
placeholder: "macOS 14.4 / Python 3.11 / Node 20 / Claude Code 1.0.x"
85+
validations:
86+
required: true
87+
88+
- type: input
89+
id: version
90+
attributes:
91+
label: Master-skill 版本或 commit SHA
92+
placeholder: "v0.3.0 / main@abc1234"
93+
validations:
94+
required: true

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: 💬 GitHub Discussions — 一般讨论 / 提问 / 分享
4+
url: https://github.com/xr843/Master-skill/discussions
5+
about: 不是 bug 也不是 feature request?先来讨论区聊聊。
6+
- name: 🌐 浏览器体验(fojin.app/chat)
7+
url: https://fojin.app/chat
8+
about: 想先体验再决定要不要贡献?点左下角「法师模式」。
9+
- name: 🔒 安全漏洞(请勿走 public issue)
10+
url: https://github.com/xr843/Master-skill/security/advisories/new
11+
about: 发现 prompt injection、supply chain、secret leak 等安全问题?走 Security Advisory。
12+
- name: 📜 伦理 / 版权申诉(紧急)
13+
url: mailto:xianren843@protonmail.com?subject=%5BURGENT%20TAKEDOWN%5D
14+
about: 权利人要求下架内容 / 教界边界严重违规 / 需要紧急处理 → 48 小时回复。
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: ✨ Feature Request
2+
description: 提议新功能、改进、工具链增强(非法师内容类)
3+
title: "[Feature] "
4+
labels: ["enhancement", "triage"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
**先确认:**
10+
- [ ] 这不是「增加一位新法师」请求(请改用 [New Master 模板](./new?template=new_master.yml))
11+
- [ ] 已搜索现有 [issues](https://github.com/xr843/Master-skill/issues?q=is%3Aissue) 与 [discussions](https://github.com/xr843/Master-skill/discussions) 无重复
12+
13+
- type: dropdown
14+
id: area
15+
attributes:
16+
label: 影响范围
17+
options:
18+
- CI / 测试工具
19+
- scripts / tools
20+
- bin/cli.mjs (NPX installer)
21+
- hooks (Claude Code / Cursor / Codex / OpenCode / Gemini)
22+
- 新平台支持(cline / aider / openhands / ...)
23+
- 文档 / 翻译
24+
- /compare-masters
25+
- /create-master 生成管线
26+
- 其它
27+
validations:
28+
required: true
29+
30+
- type: textarea
31+
id: problem
32+
attributes:
33+
label: 要解决的问题
34+
description: 你遇到的什么场景让你需要这个功能?
35+
placeholder: "例如:在 Gemini CLI 环境里调用 /yinguang 时 hooks 没有触发,session-start 注入失败..."
36+
validations:
37+
required: true
38+
39+
- type: textarea
40+
id: proposal
41+
attributes:
42+
label: 建议方案
43+
description: 你认为可以怎么做?可以是粗略想法。
44+
validations:
45+
required: true
46+
47+
- type: textarea
48+
id: alternatives
49+
attributes:
50+
label: 考虑过的替代方案
51+
validations:
52+
required: false
53+
54+
- type: textarea
55+
id: volunteer
56+
attributes:
57+
label: 是否愿意贡献 PR?
58+
description: 可选。如果你愿意动手,维护者会优先 review。
59+
validations:
60+
required: false
Lines changed: 115 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,115 @@
1+
name: 🧘 新法师提议
2+
description: 提议收录一位新的祖师大德(⚠️ 提 PR 前请先开此 issue 征询,避免已完成工作被拒)
3+
title: "[New Master] "
4+
labels: ["new-master", "needs-tier-check"]
5+
body:
6+
- type: markdown
7+
attributes:
8+
value: |
9+
## ⚠️ 重要:提 PR 前必须先开此 issue
10+
11+
贡献一位新法师涉及**版权判定、教界边界、史料可得性**三层审查。已完成 `prebuilt/` 目录再被拒的成本很高,因此请先在这里征询意见。
12+
13+
**必读**:[`ETHICS.md`](https://github.com/xr843/Master-skill/blob/main/ETHICS.md) §2(版权 Tier)、§3(教界边界),以及 [`CONTRIBUTING.md`](https://github.com/xr843/Master-skill/blob/main/CONTRIBUTING.md) §3。
14+
15+
- type: input
16+
id: master-name
17+
attributes:
18+
label: 法师名称
19+
placeholder: "例如:马祖道一 / 临济义玄 / 弘一大师"
20+
validations:
21+
required: true
22+
23+
- type: input
24+
id: slug
25+
attributes:
26+
label: 建议 slug(小写英文或拼音)
27+
placeholder: "例如:mazu / linji / hongyi"
28+
validations:
29+
required: true
30+
31+
- type: input
32+
id: dates
33+
attributes:
34+
label: 生卒年
35+
placeholder: "例如:709-788 / 1880-1942"
36+
validations:
37+
required: true
38+
39+
- type: dropdown
40+
id: lineage
41+
attributes:
42+
label: 主要宗派 / 传承
43+
options:
44+
- 禅宗
45+
- 净土宗
46+
- 天台宗
47+
- 华严宗
48+
- 法相唯识宗
49+
- 三论宗(中观)
50+
- 律宗
51+
- 密宗 / 真言宗
52+
- 跨宗派融合
53+
- 其它
54+
validations:
55+
required: true
56+
57+
- type: dropdown
58+
id: tier
59+
attributes:
60+
label: 版权 Tier 自评(参考 ETHICS.md §2)
61+
options:
62+
- "Tier A — 公有领域(圆寂 > 50 年,中国大陆 / 台湾)"
63+
- "Tier A — 公有领域(圆寂 > 70 年,大多数其它辖区)"
64+
- "Tier B — 仍在版权期(需附授权证明)"
65+
- "Tier D — 灰色,需讨论"
66+
- "不确定"
67+
validations:
68+
required: true
69+
70+
- type: textarea
71+
id: tier-justification
72+
attributes:
73+
label: Tier 判定理由
74+
description: 引用具体的圆寂年份、授权文件、学界共识等。Tier B 必须附授权证明链接。
75+
placeholder: "例如:印光大师圆寂 1940 年,距今 85 年;中国大陆著作权保护期 50 年,已于 1990 年过期。文钞 CBETA X62n1182, X62n1183 已收录公有学术版本。"
76+
validations:
77+
required: true
78+
79+
- type: textarea
80+
id: sources
81+
attributes:
82+
label: 主要 CBETA / FoJin 数据源
83+
description: 至少 3 部代表性经论或文集的 CBETA ID + 可选 FoJin text_id
84+
placeholder: |
85+
- 《六祖坛经》T48n2008
86+
- 《景德传灯录》T51n2076 慧能章
87+
- FoJin text_id: 待查
88+
validations:
89+
required: true
90+
91+
- type: textarea
92+
id: why-now
93+
attributes:
94+
label: 为什么收录这位法师?
95+
description: 从用户需求 / 宗派覆盖 / 对比价值 / 数据可得性角度说明
96+
placeholder: "例如:当前 8 位覆盖唯识/中观/禅/天台/华严/净土/跨宗派,但禅宗各家(马祖/临济/赵州)未单独立传。马祖作为洪州宗代表,与慧能的南宗直指、虚云的近代参禅形成三代对比,/compare-masters 价值显著。"
97+
validations:
98+
required: true
99+
100+
- type: textarea
101+
id: ethical-concerns
102+
attributes:
103+
label: 可能的教界边界 / 学界争议
104+
description: 有无学派争议、身份考证分歧、特定地区的敏感性?
105+
placeholder: "例如:《坛经》版本差异(敦煌本 vs 宗宝本),现当代学界倾向敦煌本为近祖;神会造论说需要说明但不过度卷入。"
106+
validations:
107+
required: false
108+
109+
- type: textarea
110+
id: volunteer
111+
attributes:
112+
label: 是否愿意亲自贡献 PR?
113+
placeholder: "是 / 否。如是,预计何时可提?"
114+
validations:
115+
required: true

0 commit comments

Comments
 (0)