solidcraft-contributing
Skill15k starsChanged 18 days agoApache-2.0View on GitHub
Use when someone wants to contribute code or documentation to SolidCraft, from setting up a fork and choosing an issue through submitting a pull request and responding to review.
- Commits and pushes
1 other project uses a version of this.
Adopted by
Steady: 0 new projects took it in the last 4 weeks, none the 4 weeks before.thin data
Most recently taken up by
- tangency-labs/solidcraftword for word, first seen Nov 8, 2026
Who's talking about bherbruck/solidcraft
- Alex Hitt“SolidCraft GitHub Overview: Headless CAD, CLI Geometry, and MCP Automation”YouTube · Oct 16, 2026 · 24k views
- テルえもんCADルーム“無料オープンソース3DCAD【SolidCraft(旧SolveCraft)】ご紹介”YouTube · Oct 12, 2026 · 12k views
- JinSato 3D-CAD Lab“【SolidCraft + FreeCAD】 Rustで書かれた 3DCADを使い AI(Claude MCP)でサイコロを自動設計!FreeCADとの違いは?”YouTube · Oct 14, 2026 · 12k views
- テルえもんCADルーム“SolveCraft(SolidCraft)が本当にAutodesk Fusionと似ているのか検証してみた!ソリッドモデリング編ーその①”YouTube · Oct 11, 2026 · 12k views
- テルえもんCADルーム“SolidCraft x Claude 生成AI MCP連携”YouTube · Oct 12, 2026 · 8.3k views
The biggest 5 of 75 mentions linking to the repository that our crawl found. Each line is their own headline.
See all 75
Talked about on GitHub, YouTube, Bluesky and Hacker News (75 times).
On GitHub · 46
- Oct 11, 2026[feature request] Add SolveCraft (now SolidCraft) to the launcher — storytold/craft-launcher8 reactions · 1 comment
- Oct 16, 2026fix(web): browser try link redirects to a missing Pages app — tangency-labs/solidcraft1 reaction · 1 comment
- Oct 16, 2026Research Request for Plugin: FEA — tangency-labs/solidcraft1 reaction · 2 comments
- Oct 24, 2026mesh: check vertex moves before committing coordinates and journal — tangency-labs/fieldcraft0 reactions
- Oct 18, 2026Integrate Melt3D into main with build validation — 07egta/melt3D0 reactions
41 more on GitHub
- Oct 17, 2026Updates: 0.11–0.14 must install 0.15 by hand once (#2136) — tangency-labs/solidcraft0 reactions
- Oct 17, 2026Updater: 0.11–0.14 can't install 0.15.0 because release URLs now name tangency-labs — tangency-labs/solidcraft0 reactions
- Oct 17, 2026Updater: recognise an MSI install outside Program Files (#1870) — tangency-labs/solidcraft0 reactions
- Oct 16, 2026Update check works under either repository owner — tangency-labs/solidcraft0 reactions
- Oct 16, 2026Research Request for Plugin: 3D Printing — tangency-labs/solidcraft0 reactions · 3 comments
- Oct 16, 2026Research Request for Plugin: DfAM (Design for Additive Manufacturing) — tangency-labs/solidcraft0 reactions · 5 comments
- Oct 16, 2026Research Request for Plugin: Electrical — tangency-labs/solidcraft0 reactions · 1 comment
- Oct 16, 2026Research Request for Plugin: Thermal Analysis — tangency-labs/solidcraft0 reactions · 3 comments
- Oct 16, 2026Research Request for Plugin: CFD — tangency-labs/solidcraft0 reactions · 4 comments
- Oct 16, 2026Research Request for Plugin: CAM (Machining & G-code) — tangency-labs/solidcraft0 reactions · 25 comments
- Oct 16, 2026Control channel: engine.execute returns 'timeout' while the operation keeps running and later applies; retries then fail — tangency-labs/solidcraft0 reactions · 2 comments
- Oct 14, 2026fix: compile the library export callback on wasm — tangency-labs/solidcraft0 reactions · 1 comment
- Oct 14, 2026每日更新 2026-10-14:HTML +2(Impeccable / XIAS)、Cases +1(SolidCraft) — mostdesign01-sudo/ai-up-lab0 reactions
- Oct 13, 2026feat: add bounded PNG/JPEG texture input admission — tangency-labs/solidcraft0 reactions · 2 comments
- Oct 13, 2026Render resources: bounded texture input admission — tangency-labs/solidcraft0 reactions · 2 comments
- Oct 13, 2026Render: phased integration of existing settings, workspace, jobs and HDR input — tangency-labs/solidcraft0 reactions · 11 comments
- Oct 13, 2026render: bounded cooperative HDR input foundation — tangency-labs/solidcraft0 reactions
- Oct 13, 2026Face-tagged 3MF: use SolidCraft's namespace and spec — tangency-labs/fieldcraft0 reactions
- Oct 13, 2026Export 3MF with B-rep face tags — tangency-labs/solidcraft0 reactions
- Oct 13, 2026Render R4a: bounded image jobs, cancellation and PNG export — tangency-labs/solidcraft0 reactions · 5 comments
- Oct 13, 2026docs: propose extensible material, appearance and component libraries — tangency-labs/solidcraft0 reactions · 5 comments
- Oct 13, 2026Material Library: Wood Grain Texture — tangency-labs/solidcraft0 reactions · 5 comments
- Oct 13, 2026📝 SolidCraft launches as an open‑source Rust CAD with scriptable server — bitroot-org/bitroot-org-website0 reactions · 1 comment
- Oct 13, 2026fix(sketch): move and copy editable text as a whole source — tangency-labs/solidcraft0 reactions · 1 comment
- Oct 13, 2026feat: add integrated Render workspace and product scene (R3) — tangency-labs/solidcraft0 reactions · 5 comments
- Oct 13, 2026Reuse Solid dialogs for Sketch Mirror, Pattern, and Offset with editable selections and live previews — tangency-labs/solidcraft0 reactions · 1 comment
- Oct 13, 2026Render R2: persist named setups and preserve geometry on render-only edits — tangency-labs/solidcraft0 reactions · 13 comments
- Oct 13, 2026Show HN: SolidCraft – Open-Source Parametric CAD in Rust (With MCP Support) — bitroot-org/bitroot-org-website0 reactions · 1 comment
- Oct 13, 2026AI Skill 日报 · 2026-10-13 — 7sevenn777/skill-digest0 reactions
- Oct 13, 2026Render workspace: improve the integrated renderer, add backend selection, HDRI and PBR — implementation roadmap — tangency-labs/solidcraft0 reactions · 4 comments
- Oct 13, 2026ci: scan dependency advisories nightly and update XML parser — tangency-labs/solidcraft0 reactions
- Oct 13, 2026fix(ui): preserve construction tools and dashed feedback — tangency-labs/solidcraft0 reactions
- Oct 13, 2026feat(mcp): support compact single execute replies — tangency-labs/solidcraft0 reactions · 3 comments
- Oct 12, 2026Rename SolveCraft to SolidCraft everywhere, with compatibility shims — tangency-labs/solidcraft0 reactions
- Oct 12, 2026Add design containers with deduplicated blobs and JSON compatibility — tangency-labs/solidcraft0 reactions · 12 comments
- Oct 12, 2026Prepare independent STEP bodies concurrently on desktop — tangency-labs/solidcraft0 reactions
- Oct 12, 2026Reconstruct supported mechanical meshes as parametric solids — tangency-labs/solidcraft0 reactions · 1 comment
- Oct 12, 2026Snap 3D bridge lines to points on other sketch planes — tangency-labs/solidcraft0 reactions · 1 comment
- Oct 12, 2026Make dialog header chevrons collapse and restore forms — tangency-labs/solidcraft0 reactions
- Oct 2, 2026geometry: build meshes and net quantities from parameters (wall, slab), with no IFC — blox-eng/goifc0 reactions · 2 comments
- Sep 29, 2026Add links — rumca-js/Internet-Places-Database0 reactions
On YouTube · 23
- Oct 16, 2026SolidCraft GitHub Overview: Headless CAD, CLI Geometry, and MCP Automation — Alex Hitt24k views · 8 comments
- Oct 12, 2026無料オープンソース3DCAD【SolidCraft(旧SolveCraft)】ご紹介 — テルえもんCADルーム12k views · 10 comments
- Oct 14, 2026【SolidCraft + FreeCAD】 Rustで書かれた 3DCADを使い AI(Claude MCP)でサイコロを自動設計!FreeCADとの違いは? — JinSato 3D-CAD Lab12k views · 14 comments
- Oct 11, 2026SolveCraft(SolidCraft)が本当にAutodesk Fusionと似ているのか検証してみた!ソリッドモデリング編ーその① — テルえもんCADルーム12k views · 4 comments
- Oct 12, 2026SolidCraft x Claude 生成AI MCP連携 — テルえもんCADルーム8.3k views · 6 comments
18 more on YouTube
- Oct 18, 2026Open Source CAD That Matches FreeCAD on 75 of 76 Parts (SolidCraft) — CodeGlade4.8k views · 1 comment
- Oct 27, 2026SolidCraft vs Fusion 360: Can a FREE Open-Source CAD Really Compete? — Nath0424.4k views · 7 comments
- Oct 12, 2026無料でアカウントなし、データは手元に。Fusion 360 そっくりの 3D CAD「SolidCraft」を比べてみた — タクのロボット実験室4.4k views · 8 comments
- Oct 16, 2026I Taught Hermes Agent 3D CAD — Own Your Tech3.8k views · 1 comment
- Oct 13, 2026Free AI tool lets an agent design real 3D CAD parts: SolidCraft — ViewOS2.3k views
- Oct 15, 2026AIが3Dプリンターの部品を設計する? 無料のCAD「SolidCraft」【テクノロジーを数字で読む】 #Shorts — tech warehouse | テクノロジーを数字で読む1.8k views · 1 comment
- Oct 16, 2026solidcraft - free open source tool — RepoDrop1.8k views
- Oct 12, 2026SolidCraft: an open-source parametric 3D CAD application · hotin.ai daily Oct 12, 2026 — HotInAI1.7k views
- Oct 16, 2026わずか4日で14回更新!無料の3D CAD「SolidCraft」v0.3.2 → v0.14.0 で何が変わった? — タクのロボット実験室1.1k views
- Oct 12, 2026Build parametric 3D CAD models using pure Rust ⚡ — LookOnThisGit858 views · 1 comment
- Oct 15, 2026bherbruck/solidcraft — CAD your agent can drive. 🟡 Watchlist #Shorts — ForkCast802 views
- Oct 13, 2026寸法1つでケースが丸ごと再生成|Rust製パラメトリック3D CAD SolidCraft・ブラウザ版とMCP内蔵でAIからも操作・ハード系エンジニア向け — さつきのOSS研究室790 views · 2 comments
- Oct 15, 2026🔥 Открытый CAD на Rust, схемы механизмов в SVG и ещё 1 - находки GitHub #shorts #github #opensource — GitHub HighLights660 views
- Oct 13, 2026Adobe Creative Cloud ve diğerlerinin Açık Kaynak Ücretsiz Kopyaları mı? ArtCraft'ı Keşfedin! — Oktay Mercan527 views · 1 comment
- Oct 12, 2026Solidcraft + 5 more hot in AI · Oct 12, 2026 — HotInAI441 views
- Nov 9, 2026Fusion'ın ücretsiz, açık kaynak benzeri: SolidCraft — Mühendis Emeklisi375 views
- Oct 31, 2026SolidCraft: CAD 3D paramétrico em Rust com MCP para agentes — Madruga Sabia90 views
- Oct 14, 2026Apple researches idle Macs as shared GPU compute, and more #Shorts — Saaket Varma29 views
On Bluesky · 5
- Oct 14, 2026Bon en fait c'est quasi plié github.com/bherbruck/so... — @monsieurbidouille.fr40 likes and reposts · 7 replies
- Oct 14, 2026github.com/bherbruck/so... — @monsieurbidouille.fr7 likes and reposts
- Oct 15, 2026github.com/bherbruck/so... using this one, works great. The author keeps maintaining it, adding projects that fail to their test etc — @port.link1 likes and repost
- Oct 13, 2026Show HN: SolidCraft – Open-Source Parametric CAD in Rust (With MCP Support) https://github.com/bherbruck/solidcraft… — @hn100.atproto.rocks1 likes and repost
- Oct 13, 2026Show HN: SolidCraft – Open-Source Parametric CAD in Rust (With MCP Support) — @hackernewsrobot.bsky.social1 likes and repost
On Hacker News · 1
- Oct 13, 2026Show HN: SolidCraft – Open-Source Parametric CAD in Rust (With MCP Support)146 points · 52 comments
Other versions1 project uses a version of this.
Word for word · 1
- tangency-labs/solidcraft★ 15k100% same
Edited · 0
None found.
Wrote their own version · 0
None found.
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository19 other files it gives its agents.
- AGENTS.mdAGENTS.md
- assets/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- solidcraft-agent-toolsSkill
- solidcraft-checkingSkill
- solidcraft-commandsSkill
- solidcraft-crash-safetySkill
- solidcraft-editingSkill
- solidcraft-file-formatsSkill
- solidcraft-ground-rulesSkill
- solidcraft-mechanismsSkill
- solidcraft-modelingSkill
- solidcraft-packagingSkill
- solidcraft-performanceSkill
- solidcraft-preferencesSkill
- solidcraft-reportingSkill
- solidcraft-testsSkill
- solidcraft-uiSkill
- solidcraft-ui-textSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
27 rules. About 0 are common, 14 are distinctive, and 13 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈14
Distinctive · estimate
This author's own choices. Worth a look.
13
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 8
Read CONTRIBUTING.md, AGENTS.md (the router to the other skills), the contributor book page, and the skills index first.
- Distinctive: line 39
Use active voice: "The view tints the face", not "The face is tinted".
- Distinctive: line 40
Use one word for one thing, and don't switch to a synonym partway through.
- Distinctive: line 42
Don't stack nouns: "the option for picking in the face menu", not "face menu picking option".
- Very specific: line 46
One topic and one issue per PR: Never commit plan/, build directories (target*/) or generated reference data.
- Distinctive: line 48
Commit after every feature arc that builds.
- Very specific: line 54
When you push anyway, or GitHub reports a conflict, rebase onto the latest main and push your own branch with --force-with-lease.
- Distinctive: line 64
Follow through: Check the PR's merge status throughout and before handoff.
- Very specific: line 67
Shared build machine: Check the load before a big build (cut -d' ' -f1 /proc/loadavg), wait while it is over 24, and build with nice.
- Very specific: line 69
Maintainers' machines: keep a local, gitignored plan/ folder: read plan/STATUS.md (current milestone, next task), then the task in …
- Very specific: line 74
Update the roadmap: when a milestone task lands: docs/roadmap-detail.md tracks status, milestones and estimates.
- Very specific: line 77
The gate reads the working tree: Do not switch branches while cargo xtask ci runs: it compiles the other branch's code and fails on a …
- Distinctive: line 89
Parallel work runs in parallel: When a task splits into independent parts (several files, several areas, several checks that do not depend …
- Distinctive: line 113
Check available memory, CPU and whether a display is available.
- Distinctive: line 119
Before every public action, show the exact proposed content and destination and ask the person to approve it.
- Very specific: line 135
Ensure origin points to the person's fork.
- Distinctive: line 141
Never push to upstream. If cloning an existing fork instead, check the same remote layout.
- Distinctive: line 150
After approval, sync the fork with git push origin main.
- Very specific: line 155
Ask about their interests and show a few issues that fit the available resources.
- Very specific: line 156
Read the current kernel-pause notice in CONTRIBUTING.md and skip kernel work while paused, including tasks outside crates/kernel/ that …
- Distinctive: line 175
If it is already claimed, choose another task with the person.
- Very specific: line 192
Write the body file first, describing the intended fix and referencing Fixes #N.
- Distinctive: line 201
Put synthetic regression tests in the existing test module for the affected area.
- Distinctive: line 204
Use the affected crate and test module in commands such as:
- Very specific: line 213
Run cargo xtask ci before each implementation commit on a capable environment.
- Very specific: line 237
Follow the control protocol: connect to 127.0.0.1:7878, read the launch token from its documented location, and send JSON lines.
- Very specific: line 246
Use engine.execute for commands and ui.start plus ui.click for interactive reproductions.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Contribute to SolidCraft
Read CONTRIBUTING.md, AGENTS.md (the router to the other skills), the contributor book page, and the skills index first. Follow their current rules; use this skill to help a first-time contributor apply them. This skill concerns the repository, not modelling a part through MCP.
Rules for every PR
- Look at what is open first. Pull the whole list, drafts included:
gh pr list -R tangency-labs/solidcraft --state open --limit 500andgh issue list -R tangency-labs/solidcraft --state open --limit 500. Look for the same issue, the same feature under another number, and PRs that change the files you will change (gh pr list ... --json number,title,files). If someone has it, comment on their PR or issue instead of opening a second one: two PRs for one change cannot both land. - Claim with a draft PR.
gh pr list -R tangency-labs/solidcraft --state open --search "#N"; if none, branch from the latestorigin/main,git commit --allow-empty -m "claim: #N", push, and open a draft PR titled<summary> (#N). The lowest-numbered open PR for an issue wins; close yours if it lost. The bot assigns you and labels the issuein progress. Do not claim by editing files; comment/claimonly to stake a claim before you have a branch. - Write the title and first sentence for a reader who has seen nothing else. Not your chat, not the
issue, not the code. Maintainers pick what to review from the title, and it becomes the commit on
main. Say which part of the app changes and what a user now sees or can do, in everyday words. Don't paste the issue's title unless it passes this too. Before opening the PR, and again before marking it ready, read both with everything else closed: if "there", "it", "this" or "that" has nothing to point at, or a term only makes sense after reading the diff, rewrite it. Keep the terms a user sees in the app and explain the others.- Unclear:
Send to Slicer: pick one print face per body there, and show print faces only while it is open - Clear:
3D printing: choose the face each body rests on in the Send to Slicer window, not the face menu
- Unclear:
- Write PR text in plain, literal English. This follows the spirit of Simplified Technical English,
not its approved-word list. Keep the names a user sees in the app, even if they aren't everyday words.
- One idea per sentence, and about 20 words at most.
- Use active voice: "The view tints the face", not "The face is tinted".
- Use one word for one thing, and don't switch to a synonym partway through.
- Repeat the noun when "it" or "this" could be unclear.
- Don't stack nouns: "the option for picking in the face menu", not "face menu picking option".
- Push daily. A draft with no pushes for 72 hours may be taken over: comment first, then open your own claim (you may start from its branch). The bot's automatic cleanup deadlines in CONTRIBUTING.md are separate.
- One topic and one issue per PR. Never commit
plan/, build directories (target*/) or generated reference data; checkgit ls-filesbefore pushing. Runcargo xtask cibefore every commit. Commit after every feature arc that builds. - Merge flow. The heavy CI jobs start when a maintainer adds
approved-for-ci; approved PRs go through the merge queue (gh pr merge N -R tangency-labs/solidcraft --squash --auto), which runs the full suite on each group before it lands onmain. Never force-pushmain. - Do not push only to catch up with
main(no merge ofmain, no Update branch, no rebase for that alone): every push restarts the whole CI run, andmain's own run catches what lands in between. When you push anyway, or GitHub reports a conflict, rebase onto the latestmainand push your own branch with--force-with-lease; never mergemaininto a PR. Resolve conflicts without discarding others' work. Do not re-run CI on an unchanged commit: re-run only a job that runner trouble cancelled, with "Re-run failed jobs". - Evidence. For observable CAD, UI or model behaviour (kernel, geometry, assembly and backend changes included), the issue or PR carries real screenshots or a short recording from a small reproduction, preferably before and after, with steps and expected/actual behaviour. Capture it yourself; do not ask a human for evidence you can produce. Diagrams do not replace it. Changes with nothing observable need none. Use a public-safe example, check for private designs, paths and account details, attach the media rather than committing it.
- Follow through. Check the PR's merge status throughout and before handoff. Report the state you checked and any conflicts resolved. While the PR is open, keep monitoring it and say clearly that it is pending; do not claim it merged without checking.
- Shared build machine. Check the load before a big build (
cut -d' ' -f1 /proc/loadavg), wait while it is over 24, and build withnice. - Maintainers' machines keep a local, gitignored
plan/folder: readplan/STATUS.md(current milestone, next task), then the task inplan/execution-plan.mdand the relevantplan/architecture.mdsection. Kernel and library decisions are inplan/adr/0001-geometry-kernel.md. Follow the autonomous operation protocol inplan/execution-plan.mdsection 6; do not stop to ask unless it lists the decision as the owner's. Contributors withoutplan/can ignore this. - Update the roadmap when a milestone task lands:
docs/roadmap-detail.mdtracks status, milestones and estimates;ROADMAP.mdis the short user-facing roadmap. - Start here. What to work on:
ROADMAP.md, "Where help is wanted most" in CONTRIBUTING.md and the open issues labelledhelp wanted,good first issue,needs-triage; check what is already open first. Architecture:docs/architecture.mdand "How the code is laid out" in CONTRIBUTING.md; kernel work is paused ("Kernel work is paused" in CONTRIBUTING.md). Licence rules:deny.tomlandcargo xtask licences --check; onlycrates/kernelmay usetruck. When the code, docs and rules settle a question, act; ask on the issue or PR only when the answer changes what users see or what the change covers. - Do not open a second PR for an issue a lower-numbered open PR already closes, and keep the
Changes a default:line filled in:pr-checks.ymlfails both. - The gate reads the working tree. Do not switch branches while
cargo xtask ciruns: it compiles the other branch's code and fails on a change not in the PR. Run it in the background and wait for its log.
Working as an agent
- The code is English. The comments are English. Always. Identifiers, doc comments,
inline comments, commit messages, branch names, test names, error messages and
documentation are all in English. This is not a preference: a comment in another
language is a defect, it is not reviewable by the people who maintain this code, and a
reviewer rejects it. If something is not obvious, write it in English and keep it
short. A user-visible string is not inline in the code: it goes to the message
catalogs in
assets/locales/(a new one toassets/locales/pending/<slug>.json), andskills/solidcraft-ui-text/SKILL.mdsays how to name and translate it. - Parallel work runs in parallel. When a task splits into independent parts (several files, several areas, several checks that do not depend on each other), dispatch one subagent per part and let them run concurrently instead of walking the list one item at a time. Give every subagent a self-contained brief: what to change, what not to touch, and what to report back. Read the answers before you continue; a subagent's report is not a result you can assume.
- Do not parallelize what depends on itself. A fix and the test that proves it, a refactor and the callers it breaks, two edits to the same file: those stay sequential. One subagent per independent unit of work, and no two units may write the same file.
1. Check the environment
Explain what you are checking and why, in everyday language. Run:
gh --version
gh auth status
git --version
rustup show
rustc --version
cargo --version
df -h .Check available memory, CPU and whether a display is available. Establish whether this is the person's computer or a cloud sandbox; do not assume desktop access, persistent files or enough space for a full build. Compare Rust with the current minimum in CONTRIBUTING.md. If tools or sign-in are missing, explain the next step and help the person set them up; never ask them to paste credentials.
Before every public action, show the exact proposed content and destination and ask the person to approve it. This includes creating a public fork, pushing, opening or updating a PR, uploading evidence, marking it ready and commenting. Explain a PR as a request for maintainers to review a change. Keep check-ins short at each step: what you found, what comes next, and what needs their decision.
2. Fork and clone
Explain that changes go to their own copy on GitHub. After approval, run:
gh repo fork tangency-labs/solidcraft --clone --remote
cd solidcraft
git remote -vEnsure origin points to the person's fork. If upstream is absent, add it:
git remote add upstream https://github.com/tangency-labs/solidcraft.gitNever push to upstream. If cloning an existing fork instead, check the same remote
layout. With a clean working tree, sync local main before starting work:
git fetch upstream
git switch main
git merge --ff-only upstream/mainAfter approval, sync the fork with git push origin main. If fast-forwarding
fails, inspect the divergence and preserve existing work; do not reset it away.
3. Choose an unclaimed task together
Ask about their interests and show a few issues that fit the available resources.
Read the current kernel-pause notice in CONTRIBUTING.md and skip kernel work
while paused, including tasks outside crates/kernel/ that change kernel behaviour.
Fetch the whole open list, including drafts, before narrowing it:
gh issue list -R tangency-labs/solidcraft --state open --limit 500
gh pr list -R tangency-labs/solidcraft --state open --limit 500 --json number,title,files
gh issue list -R tangency-labs/solidcraft --state open --label 'good first issue' --search '-label:kernel-paused -label:"in progress"' --limit 100
gh issue list -R tangency-labs/solidcraft --state open --label 'help wanted' --search '-label:kernel-paused -label:"in progress"' --limit 100Let the person choose. Set N to that issue's number, then inspect its discussion,
assignee and linked PRs; check similar work under other numbers and overlapping files:
gh issue view "$N" -R tangency-labs/solidcraft --comments
gh pr list -R tangency-labs/solidcraft --state open --search "#$N"If it is already claimed, choose another task with the person. Do not open a competing PR or post a comment without their approval.
4. Claim with a draft PR
Explain the proposed change and show the draft title and body for approval before publishing. Recheck availability immediately before claiming. Follow the claim rules in CONTRIBUTING.md; substitute the chosen summary and fork owner below:
git fetch upstream
git switch -c "fix-$N" upstream/main
git commit --allow-empty -m "claim: #$N"
git push -u origin "fix-$N"
gh pr create --repo tangency-labs/solidcraft --head "FORK_OWNER:fix-$N" --base main --draft --title "SUMMARY (#$N)" --body-file /tmp/solidcraft-pr-body.mdWrite the body file first, describing the intended fix and referencing Fixes #N.
The draft PR is the claim; check the bot's response and the lowest-numbered open
PR rule before editing. If another claim won, explain it and ask before closing
the duplicate. Do not try to claim by editing files.
5. Make and check one focused change
Explain the intended behaviour, then pick the skill for the area from AGENTS.md's table and follow it (never crash, commands, layering, clean-room rules and tests all live there). Put synthetic regression tests in the existing test module for the affected area; prove a bug test fails before the fix and passes after it.
Use the affected crate and test module in commands such as:
cargo test --profile ci -p solidcraft-engine --lib -- tests::feature_inputs_are_parameters
cargo clippy -p solidcraft-engine --all-targets -- -D warnings
cargo fmt --all -- --check
cargo xtask ciRun cargo xtask ci before each implementation commit on a capable environment.
On small environments, use targeted tests and report exactly what passed and what
could not run; leave the full suite to CI rather than claiming it passed. Follow
testing guidance for applicable checks.
Review the diff, keep one topic, and commit the finished change. Before an approved
push, follow "Rules for every PR" above; do not push solely to catch up
with main. Explain progress and ask before publishing each update.
6. Show the result
For visible changes, reproduce the result with a small public-safe example and capture actual screenshots or a short recording, preferably before and after. For model output without a display, run:
solidcraft-cli snapshot script.json --out /tmp/solidcraft-result.pngFor UI behaviour, launch the desktop app with a free control port:
cargo run --release -p solidcraft -- --sample --control 7878Follow the control protocol: connect to
127.0.0.1:7878, read the launch token from its documented location, and send JSON
lines. Put the real token in the first request's top-level token field:
{"id":1,"token":"TOKEN","method":"ui.inspect","params":{}}
{"id":2,"method":"ui.screenshot","params":{"path":"/tmp/solidcraft-result.png"}}Use engine.execute for commands and ui.start plus ui.click for interactive
reproductions. Open and inspect the image. Check for private designs, paths and
credentials before sharing; never expose the token. Show the person the media
and ask before attaching it to the PR or linking an accessible recording. Include
brief reproduction steps and expected/actual behaviour; do not commit generated
review media. Documentation-only changes need no screenshot.
7. Finish and respond to review
Prepare the final title and body: Fixes #N, the problem, resulting behaviour,
validation and any evidence or limitations. Show them to the person before
updating the PR. After their approval, mark the draft ready:
gh pr ready PR_NUMBER -R tangency-labs/solidcraftExplain that a maintainer reviews the change and adds approved-for-ci to start
heavy checks; do not add that label yourself. Monitor checks and merge status,
address review comments, rerun affected checks for fixes, and ask before public
replies or pushes. Report whether it merged or remains pending; do not promise a
merge or rerun an unchanged failing check without evidence of infrastructure trouble.
Cloud sandbox
Without a display, use solidcraft-cli snapshot for model evidence or launch the
app under Xvfb :99 with DISPLAY=:99 for UI evidence. With limited disk or CPU,
prefer a documentation or small isolated task, targeted tests and existing build
artifacts; explain any missing checks. Preserve work before temporary storage
expires and ask before publishing it. Always push only to the person's fork,
never to upstream.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

