bama
BAMA: Build Any Mac App. Agent skills to research, clone, design, build, optimize, and test native macOS apps with Swift and SwiftUI.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Claude skill: Chinese ink-wash (水墨) paintings of any subject as procedural WebGL2 browser art
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
A Claude skill that paints Chinese ink-wash (水墨) of any subject as live browser art — WebGL2 shaders for paper, water and ink, Canvas brushwork, no images and no libraries. The reference scene, 月满中秋 ( full moon, mid-autumn ) — it paints itself in from blank paper, then geese, petals and lamplight are drawn with the same brush code every frame. See it running live →查看完整 README ↗
A Claude skill that paints Chinese ink-wash (水墨) of any subject as live browser art — WebGL2 shaders for paper, water and ink, Canvas brushwork, no images and no libraries.
The reference scene, 月满中秋 (full moon, mid-autumn) — it paints itself in from blank paper, then geese, petals and lamplight are drawn with the same brush code every frame. See it running live →
It is not a scene generator. The skill teaches Claude how an ink painter sees a subject, how paper, water and brush behave, and how to criticise its own picture — then Claude writes a new renderer for every request, reusing only the generic material core.
Quality comes from four things, in this order: translating the subject into the painter's language, composition by the canon, material and brush that hide the computer, and inspection at zoom.
| Step | What happens | Reference |
|---|---|---|
| 1. See | Five questions before any code: the spirit of the subject (神), what is solid and what is empty (实 / 虚), the family of line, the depth planes, the format. | references/seeing.md |
| 2. Compose | One host and its guests (主宾), empty paper as a shape (留白), hiding and revealing (藏露), one focal point, 1–3 red accents, at most one inscription and one seal. | references/composition.md |
| 3. Material | Fibre-ridged paper; every mark writes a wetness map that diffuses along the fibres (~36 steps on half-float targets), with edge darkening, granulation and a halo. | references/materials.md |
| 4. Brush | Width noise by arc length, pressed entry and lifted exit, a dark core offset for 中锋 / 侧锋, drying into flying white (飞白). Ten stroke families. | references/brush.md |
| 5. Structure | Every motif built from the master's crop at 3×. Trees grow as one graph — continuous thickness (Leonardo), gravity by thickness, collars at joints, roots in the ground — painted as one body of ink; the species decides the rest. | references/trees.md |
| 6. Render | Everything ordered by depth 0…1; everything goes through the wash/ink layers before diffusion and the paint pass. | references/renderer.md |
| 7. Reveal | The painting appears on blank paper: washes bloom like ink in wet paper, strokes travel from entry to exit, the inscription and seal come last; then quiet motion (mist, rain, steam). | references/animation.md |
| 8. Critique | At least two rounds on six zoomed crops — composition, tone, execution, grounding, motion — and an honest note on what is still weak. | references/critique.md |
Detail at 2×. Every real failure behind it — 103 rules in ten sections, from joints and false readings (“an eye”, “a slingshot”, “bamboo nodes”) to the reveal — is in references/pitfalls.md.
git clone https://github.com/23ag1/ink-wash-painting-skill ~/.claude/skills/ink-wash-painting
Then ask Claude for a painting — “a canal city in mist, in Chinese ink style”, “a pagoda at dusk, 水墨”, “a cat on a windowsill in the rain, sumi-e”.
python3 kit/serve.py 8770 # from the repo root
# → http://localhost:8770/reference/index.html 月满中秋, the Mid-Autumn river scene
# → http://localhost:8770/examples/rain-market/index.html 雨市, a market street in rain (vertical scroll)
# → http://localhost:8770/examples/minimal-bamboo/index.html 清风, the smallest complete build (album leaf)
# → http://localhost:8770/examples/tage/index.html 踏歌, after Ma Yuan's Singing and Dancing (silk, axe-cut peaks)
kit/ holds the materials as small, composable, scene-agnostic modules: a WebGL runtime (programs with
#include, targets, ping-pong, read-back), GLSL modules (noise and glazes, watercolour wash behaviour, brush ink
over washes, the paper sheet, palette, rain / steam / drifting mist), the fibre-diffusion pass, and the brush
library — plus tree growth (brush/tree.js) and the reveal (brush/inktime.js, glsl/reveal.glsl). There is no fixed pass order, no scene and no default look: every parameter that changes the picture is
an argument the painting must give, and the runtime refuses to draw if a uniform was left unset.
The four paintings are four different assemblies of the same modules. The two larger ones were ported onto the kit and checked against their original code pixel by pixel: the rain market is identical, the Mid-Autumn scene differs by 1/255 on 0.0005% of values (float rounding).
scripts/new-painting.sh <folder> starts a new painting with the kit only — never with an example's scene.
SKILL.md workflow and principles
references/ research · seeing · judgement · composition · materials · brush · renderer (kit catalogue)
· trees · animation · critique · pitfalls · motif studies · painting how-to · technique sources
kit/ runtime.js · glsl/ · passes/diffuse.frag · brush/ · serve.py
reference/ 月满中秋 — landscape build (mountains read back from a shader, river, reflection)
examples/rain-market/ 雨市 — vertical scroll with a depth layer, rain and steam
examples/minimal-bamboo/ 清风 — smallest build
examples/tage/ 踏歌 — after Ma Yuan on aged silk: axe-cut peaks, a willow grown as one tree, the reveal
scripts/new-painting.sh scaffold a new painting with the kit
evals/evals.json test prompts: a pagoda, a canal city in mist, a cat in the rain
Rain market is an honest test result, not a showcase: composition and void work; motifs up close (tiles, figures) are still weaker than the composition.
EXT_color_buffer_float.MoXi (Chu & Tai) · Curtis et al., Computer-generated watercolor · Bousseau et al., Interactive watercolor rendering · Lingdong Huang, shan-shui-inf
Part of 23AG Research — the full write-up is at research.23ag.one/ink-wash.