

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1234567# 提交流程89## 提交前自检(必跑)1011```bash12npm run lint # cases + commands + links 全过13npm run docs:build # VitePress 构建无错14```1516如果改动了案例:1718```bash19node scripts/validate-example.mjs examples/<your-case>20bash examples/<your-case>/run.sh # 真跑一遍,剪映打开验证21```2223如果改动了 Worker:2425```bash26cd worker && npx tsc --noEmit # type-check27cd worker && npx wrangler dev # 本地起测一下28```2930## Conventional Commits3132格式:3334```text35<type>(<scope>): <subject>3637[可选正文]3839[可选 footer,如 BREAKING CHANGE / Closes #123]40```4142| type | 用途 |43|---|---|44| `feat` | 新功能、新案例、新模板 |45| `fix` | bug 修复 |46| `docs` | 文档变更(含 README、guide、cookbook) |47| `chore` | 构建脚本、依赖升级、CI、配置 |48| `refactor` | 重构、不影响行为 |49| `test` | 测试代码 |50| `style` | 仅格式调整 |5152scope 推荐:`examples` / `templates` / `prompts` / `docs` / `worker` / `scripts` / `ci` / `release`5354例子:5556```text57feat(examples): add 06-cinematic-title with bouncy text58fix(worker): handle trailing slash in path resolution59docs(guide): translate first-draft.md to English60chore(ci): bump cloudflare/wrangler-action to v3.561refactor(scripts): extract walk() into _lib62```6364## PR 流程65661. **Fork 或创建分支**67```bash68 git checkout -b feat/my-case69```702. **改动 + 自检**(见上文)713. **Push 到 origin**72```bash73 git push -u origin feat/my-case74```754. **开 PR**76```bash77 gh pr create --title "feat(examples): add my-case" --body-file <(cat <<'EOF'78 ## 这个 PR 做了什么?79 ...80 ## 自检81 - [x] npm run lint 通过82 - [x] bash examples/my-case/run.sh 本地跑成功83 - [x] preview.gif 已加(≤3 MB)84 EOF85 )86```875. **等 CI 绿**(约 1-2 分钟)886. **等 review**:默认要 1 个 approve8990## CI 必过线9192PR 必须满足:9394| 检查 | workflow | 任务 |95|---|---|---|96| Lint | `ci.yml` | `npm run lint:cases / lint:cmds / lint:links` |97| 文档构建 | `ci.yml` | `npm run docs:build` |98| Worker 类型检查 | `ci.yml` | `cd worker && npx tsc --noEmit` |99100合并到 `main` 后还会自动跑:101102| Workflow | 触发 | 内容 |103|---|---|---|104| `deploy-docs.yml` | push 到 main 且改了 `docs/` 或 `worker/` | build + R2 上传 + worker deploy + smoke test |105| `scheduled-cases-test.yml` | 每天 02:00 UTC+8 | 跑全部案例校验,失败自动开 issue |106107## 分支保护108109`main` 启用以下保护(首次部署后由维护者一次性设置):110111```bash112gh api repos/xuliang2024/cutcli-cookbook/branches/main/protection \113 --method PUT \114 --field required_status_checks[strict]=true \115 --field required_status_checks[contexts][]='Lint (cases + commands + links)' \116 --field required_status_checks[contexts][]='VitePress build' \117 --field enforce_admins=false \118 --field required_pull_request_reviews[required_approving_review_count]=1 \119 --field restrictions=null120```121122## 不要做的事123124- ❌ 直接编辑 `docs/reference/cli.md` / `api.md` / `concepts.md`(由同步脚本生成)125- ❌ 引用 `cut <subcommand>` 命令名(用 `cutcli`)126- ❌ 提交 `.env` 文件或任何含 token / cookie 的内容127- ❌ 把私有 CDN 链接(带 query token)写进 case128- ❌ 提交 > 3 MB 的 preview.gif(会被 CI 警告)129- ❌ 跨用例修改超过 5 个文件 — 请拆成多个 PR130131## 应急回滚132133```bash134# 上一个 commit 出 bug,但已 push 到 main135git revert HEAD136git push137138# CI deploy-docs 自动重跑,约 1 分钟内 docs.cutcli.com 回到旧版本139```140141## 闭源同步配套142143如果改动了闭源 `jy_cli/docs/cli.md` 等需要传到公开仓:144145```bash146cd /Users/m007/codes/jy_cli147node scripts/sync-to-cookbook.mjs148149cd /Users/m007/codes/cutcli-cookbook150git status -s docs/reference/ # 看是哪些文件变了151git add docs/reference && git commit -m "docs(sync): sync from jy_cli@<short-sha>"152git push153```154
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| xuliang2024/cutcli-cookbook.cursor/rules/commands.mdc · 167 | Cursor rules | lint-formatgitsecuritydeployment+1 | 78/100 | 14 days ago | |
| xuliang2024/cutcli-cookbook.cursor/rules/example-spec.mdc · 167 | Cursor rules | typessecuritydatabasedocs | 69/100 | 14 days ago | |
| xuliang2024/cutcli-cookbook.cursor/rules/open-source-boundary.mdc · 167 | Cursor rules | setup | 69/100 | 14 days ago | |
| xuliang2024/cutcli-cookbook.cursor/rules/deploy.mdc · 167 | Cursor rules | gitapideploymentdocs | 74/100 | 14 days ago | |
| xuliang2024/cutcli-cookbook.cursor/rules/docs-style.mdc · 167 | Cursor rules | builddocs | 73/100 | 14 days ago | |
| xuliang2024/cutcli-cookbook.cursor/rules/project-info.mdc · 167 | Cursor rules | no sections | 50/100 | 14 days ago | |
| xuliang2024/cutcli-cookbook.cursor/rules/directory-index.mdc · 167 | Cursor rules | do-notagent-behaviourdocs | 69/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| hiromaily/go-crypto-wallet.cursor/rules/typescript.mdc · 126 | Cursor rules | setupbuildtestlint-format+6 | 100/100 | 14 days ago | |
| TechSquidTV/Hermes.cursor/rules/10-hermes-api.mdc · 46 | Cursor rules | testlint-formatstylearch+5 | 100/100 | 14 days ago | |
| dodgecfr/combatfilms-webapp.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| deifos/clipmira-subtitles.cursor/rules/frontend.mdc · 1 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| markstev/mark-starter.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+6 | 99/100 | 14 days ago | |
| Allymahmoud/case-intake-platform.cursor/rules/frontend.mdc · 0 | Cursor rules | setuptestlint-formatstyle+7 | 99/100 | 14 days ago | |
| langflow-ai/langflow.cursor/rules/docs_development.mdc · 153k | Cursor rules | setupbuildtestlint-format+7 | 97/100 | 14 days ago | |
| bybren-llc/safe-agentic-workflow.cursor/rules/10-backend-python.mdc · 399 | Cursor rules | testlint-formatstylegit+4 | 97/100 | today |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/xuliang2024-cutcli-cookbook-cursor-rules-commit-flow)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.