convex-component-adoption-planner — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited convex-component-adoption-planner (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use this skill when a private Convex app needs a serious answer to any of these:
request_user_input, and include weighted scores from 0.0 to 10.0 for each option.curl -s https://www.convex.dev/components/components.mdcargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- doctor --json
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- component @convex-dev/aggregate --feature bookmarks-intent-signals --json
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --json
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --stdoutUse the Rust helper in this order:
doctorcurl, rg, opensrc, ctx7, gh, bunx, and cargo--json when you want machine-readable outputcomponent <package>curl, opensrc, ctx7, and rg commands--feature <slug> whenever the workstream is already known--docs-slug <slug> if the Convex docs page does not match the inferred slug--date YYYY-MM-DD or --plan-root <path> when you need a non-default output locationscaffold <package>componentPLAN.md plus CODEX_FULL_PROMPT.md--json to get created and skipped file paths back as structured output--stdout to preview the exact file contents without writing--force only when you intentionally want to overwrite existing stubsDo not treat the helper output as the recommendation. It only prepares deterministic inputs and starter files.
packages/backend/package.jsonpackages/backend/convex/convex.config.tspackages/backend/convex/schema.ts.agents/curl -s https://www.convex.dev/components/<slug>/<slug>.md
opensrc path <package-name>ctx7: useful for library documentation lookup and secondary cross-checksopensrc: preferred when internal implementation details matterbunx convex: optional for local CLI help or version-aligned Convex contextgh: only if a GitHub issue or PR is part of the adoption decisionDo not hard-depend on any of these tools. Degrade cleanly when absent.
doctor then component.scaffold --stdout when you want to inspect the starter package before writing it.scaffold without --stdout when you are ready to create the package files.opensrc when package behavior, tables, or APIs matter.request_user_input only when local context cannot close the branch safely.references/package-spec.md.Use this weighted scoring model for major choices:
| Criterion | Weight |
|---|---|
| Solution leverage | 35% |
| Application value | 30% |
| Maintenance and cognitive load | 25% |
| Architectural adaptability | 10% |
Rules:
9.0+ only when the tradeoff is genuinely strong.Read references/package-spec.md before writing final package files.
Default output location:
.agents/plans/YYYY-MM/MM-DD/convex-components/<component-slug>/Required files:
PLAN.mdCODEX_FULL_PROMPT.mdFor a rejection decision, still emit the same package, but make PLAN.md a definitive non-adoption memo and make CODEX_FULL_PROMPT.md an execution prompt for future re-evaluation or confirmed rejection.
When a user wants to work interactively or says grill me:
Those stay in the model.
The helper can scaffold stub PLAN.md and CODEX_FULL_PROMPT.md files, but it must not decide the recommendation or architecture.
Evaluate one candidate:
curl -s https://www.convex.dev/components/components.md
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- component @convex-dev/aggregate --feature bookmarks-intent-signals --json
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --json
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --stdoutOverwrite an existing starter package intentionally:
cargo run --manifest-path .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep/Cargo.toml -- scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --force --jsonUse optional Context7 support:
ctx7 library convex "components aggregate"
ctx7 docs /convex-dev/convex "aggregate component patterns"Install the helper locally for repeated use:
make -C .agents/skills/convex-component-adoption-planner/scripts/convex-component-adoption-prep install-local
convex-component-adoption-prep doctor --json
convex-component-adoption-prep component @convex-dev/aggregate --feature bookmarks-intent-signals --json
convex-component-adoption-prep scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --json
convex-component-adoption-prep scaffold @convex-dev/aggregate --feature bookmarks-intent-signals --stdout~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.