You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 159586a
Browse filesBrowse the repository at this point in the historyBrowse files
docs: add Adding an Example to CONTRIBUTING and sync the PR checklist
CONTRIBUTING sent contributors to an examples section that did not exist,
so the gates Validate and the gallery build enforce (examples/skills.json,
the 640 card) were documented only in agent-facing files. The new section
lists every step and links docs/new-example-prompt.md; the PR template's
example line now names the skills.json entry and the card. The template
layout and rule-length guidance now match what ships.
Closes#522
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LpkeXRvikhJZSVGBFM91Dv
Signed-off-by: TM Hospitality Strategies <TMHospitalityStrategies@gmail.com>
Copy file name to clipboardExpand all lines: .github/PULL_REQUEST_TEMPLATE.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@ Merge evidence is the PR-head 5.2 + 4.5 smoke jobs (state the versions from thos
28
28
-[ ] Explicit paths only (`git add` never `-A` / `.`). Leave unstaged Cursor-injected `CLAUDE.md` hunks.
29
29
-[ ] Counts in `README.md` match disk if content was added or removed (`validate-counts`).
30
30
-[ ] Manifest arrays list every new skill / rule / snippet / template / example / showcase piece (`validate-manifest`). Do not touch the `"version"` line.
31
-
-[ ] New example: `gallery.json`, `tests/smoke/catalog.json`row, README row, hero/preview webp, `python scripts/build_gallery.py`, framing / contact-sheet gates as in `CLAUDE.md`.
31
+
-[ ] New example: `tests/smoke/catalog.json` row with a falsifier, `examples/skills.json`entry + `python scripts/build_examples_index.py`, README count. Rendered examples also: `gallery.json` entry with `alt`, hero + `-hero-640.webp` card + preview webp, `python scripts/build_gallery.py`, framing / contact-sheet gates ([CONTRIBUTING.md](../CONTRIBUTING.md#adding-an-example)).
32
32
-[ ] Every new check was falsified once (break it, non-zero exit, restore) — or this PR has no new check.
33
33
-[ ] DCO `Signed-off-by:` on every commit ([CONTRIBUTING.md](../CONTRIBUTING.md)).
34
34
-[ ] No credentials, business emails, or local filesystem paths.
Copy file name to clipboardExpand all lines: CONTRIBUTING.md
+35-3Lines changed: 35 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -17,7 +17,9 @@ The fastest useful contributions are small and need no Blender run:
17
17
Then: fork, branch, `uv sync`,
18
18
`uv run python tests/run_all.py`, and open a PR with a DCO sign-off (`git commit -s`;
19
19
see the end of this file). Examples and showcase pieces have more gates
20
-
(falsifiers, exit-code tables, renders); read their sections first.
20
+
(falsifiers, exit-code tables, renders); read
21
+
[Adding an Example](#adding-an-example) or
22
+
[Adding a Showcase Piece](#adding-a-showcase-piece) first.
21
23
22
24
## Getting Started
23
25
@@ -64,10 +66,12 @@ rules/
64
66
snippets/
65
67
<snippet-name>.py
66
68
templates/
67
-
<template-name>/
69
+
extension-addon-template/ # an add-on: manifest + package
68
70
blender_manifest.toml
69
71
__init__.py
70
72
README.md
73
+
headless-batch-script-template/ # a script: script.py + README.md
74
+
ai-asset-pipeline-template/ # a script: pipeline.py + README.md
71
75
examples/
72
76
gallery.json
73
77
<example-name>/
@@ -127,7 +131,7 @@ showcase/
127
131
too narrow means the rule silently stops firing, which is worse than
128
132
over-applying. Record the scope in the `CLAUDE.md` rules table to match.
129
133
130
-
3.Write 30 to 80 lines: the anti-pattern, a code example showing it wrong, a code example showing it right, and a short "Why it matters" section.
134
+
3.Keep it focused (the shipped rules run about 70 to 170 lines): the anti-pattern, a code example showing it wrong, a code example showing it right, and a short "Why it matters" section.
131
135
132
136
## Adding a Snippet
133
137
@@ -140,6 +144,34 @@ showcase/
140
144
1. Add a directory under `templates/`, e.g. `templates/headless-batch-script-template/`.
141
145
2. Include all files needed for an immediate copy-paste starting point. For add-on templates, include `blender_manifest.toml`, `__init__.py`, and a brief `README.md`.
142
146
147
+
## Adding an Example
148
+
149
+
An example is a runnable headless script that asserts one API contract and
150
+
exits non-zero when it breaks. The full procedure, render standard and gates
151
+
are in [`docs/new-example-prompt.md`](docs/new-example-prompt.md) and
152
+
`CLAUDE.md` § Examples; copy the anatomy of `examples/bmesh-gear/`. Every
153
+
example needs:
154
+
155
+
1.`examples/<kebab-name>/` with the script and a README that has an exit-code
0 commit comments