Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
git clone --depth 1 https://github.com/shapediver/AppBuilderSdkWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/rules/shapediver/appbuildersdk/appbuilder-sdk)<a href="https://agentmods.dev/rules/shapediver/appbuildersdk/appbuilder-sdk"><img src="https://agentmods.dev/badge/rules/shapediver/appbuildersdk/appbuilder-sdk/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/rules/shapediver/appbuildersdk/appbuilder-sdk"><img src="https://agentmods.dev/badge/rules/shapediver/appbuildersdk/appbuilder-sdk.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.01018 | $0.01018 |
| Opus 5.5 | $0.00407 | $0.00407 |
| Sonnet 5.5 | $0.00204 | $0.00204 |
| Haiku 4.5 | $0.00102 | $0.00102 |
Grade A, and why
appbuilder-sdk scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 55 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Working in AppBuilderSdk / AppBuilderShared
Workflow only. Do not add feature behavior, ticket notes, or API semantics to this file. Put those in a requestable topic rule (see Agent rules).
Repository layout
- Two git repos. Root
AppBuilderSdk(usuallydevelopment) containssrc/shared, a separate clone ofAppBuilderShared. Shared changes:git -C src/shared .... Root only records the shared pointer ("shared update") plus app, tests, andpublic/. - New worktrees: follow
.cursor/rules/worktree-shared-repo.mdc. - Path alias:
@AppBuilderLib/...→src/shared/.... FSD:entities/(parameter, session, viewport),features/,widgets/,shared/. Tests live in__tests__next to the module (jsdomenv header for store tests). - Viewer:
@shapediver/viewer.*.viewer.local.tscan link../Viewer; viewer bugs are fixed there and need a dev server restart. Keepnode_modulesin sync (pnpm install) when versions differ.
Git and commits
- Branch names:
task/JIRA-ISSUE-ID. Every commit message starts with the ticket (SS-10004: ...). - Commits are SSH-signed via 1Password; signing fails from an agent shell. Stage and describe; let the user commit.
git checkout -- <file>restores from the index; usegit checkout HEAD --when files are staged.
Line endings and edits
- Working tree is CRLF, git stores LF (
autocrlf). eslintlinebreak-style: CRLF. - Never
sed -ior plain Python writes on source; they produce LF and hundreds of lint errors. Use the Edit tool, or Python withnewline=''and\r\n.
Checks (judge only files you changed)
npx prettier --check <files>
npx eslint <files>
npx tsc --noEmit -p . # root, covers shared
npx jest --config jest.config.mjs src/shared/<path>
Some untouched tests have pre-existing prettier violations.
- Typecheck: IDE
ReadLints/ ESLint are not a substitute for roottsc. After changingforwardReftype parameters, host elements (svgvsimg, etc.), or spreading arefonto a third-party component, runnpx tsc --noEmit -p .. Do not put a union-typedrefinto a props object that is spread onto a component that only accepts one host type — narrow the ref at each host instead. - Mocks:
jest.mockreplaces all exports. When adding a named export that other modules import, search forjest.mockof that module and keep named exports via...jest.requireActual(...)(override only what the test needs). A passing targeted test is not enough if other suites mock the changed module; run those tests, orpnpm test(what CI runs).
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2d ago Changed · -4 lines · -3,098 tokens per session 347c01069108
- 3d ago Changed · +108 tokens per session ab696839089e
- 16d ago Changed · +1 lines · +119 tokens per session 8a92f958ccbe
- 22d ago Changed · +1 lines · +155 tokens per session 85032f34c1b3
- 25d ago Changed · +3 lines · +1,137 tokens per session 1caea32aaefd
- 1mo ago Changed · +1 lines · +1,062 tokens per session 1c27cc6758df
- 1mo ago Changed · +377 tokens per session 042e83e3ed67
- 1mo ago Changed · +3 lines · +206 tokens per session 51e520c8f4d9
- 1mo ago First seen · 50 lines · 952 tokens per session scan A 4f2106483570
appbuilder-sdk is a cursor rule published in the GitHub repository shapediver/AppBuilderSdk (15 stars, last pushed yesterday), licensed MIT. It adds 1,018 tokens to every session, about $0.0041 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-10.
Other cursor rules, from other repositories
git
A set of Git workflow and branch-naming instructions for the Alibaba Hooks codebase. Git is a tool for tracking code changes, while a branch is a separate line of work that can later be proposed for merging.
release-lanes
Promote Plate beta releases, sync main back to next and verify published npm/GitHub state with release authority.
changeset
Write and verify package release changesets, registry changelog entries, and the PR’s managed auto-release choice. Use before deciding whether a package edit needs a changeset, including skipping one.
release-process
Use the documented Windows and macOS release flow.
git-flow
Branching, commits and PR hygiene. Always applies.
ci-cd-workflows
This rule provides guidance on the CI/CD pipeline, GitHub Actions workflows (defined in .github/workflows/), custom actions (in .github/actions/), versioning strategies, and release processes. Use this rule if the query involves CI/CD, build/test issues, release procedures, versioning questions, or if it references…