Borrowing it
Nothing to install: this file belongs to nozomi-koborinai/terradart. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/nozomi-koborinai/terradart/main/.agents/skills/terradart-add-beta-resource/SKILL.mdgit clone --depth 1 https://github.com/nozomi-koborinai/terradartWrote 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/skills/nozomi-koborinai/terradart/terradart-add-beta-resource)<a href="https://agentmods.dev/skills/nozomi-koborinai/terradart/terradart-add-beta-resource"><img src="https://agentmods.dev/badge/skills/nozomi-koborinai/terradart/terradart-add-beta-resource/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/skills/nozomi-koborinai/terradart/terradart-add-beta-resource"><img src="https://agentmods.dev/badge/skills/nozomi-koborinai/terradart/terradart-add-beta-resource.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00059 | $0.01187 |
| Opus 5 | $0.00030 | $0.00593 |
| Sonnet 5 | $0.00012 | $0.00237 |
| Haiku 4.5 | $0.00006 | $0.00119 |
Grade A, and why
terradart-add-beta-resource 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 6d 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 — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Add a beta-only curated resource
Read CONTEXT.md for vocabulary. The beta lane's coordinates live in tool/providers.yaml; its philosophy (filled at the current pin, filtered fixture, no backlog/wave lane) is in AGENTS.md's Current-phase section. Do not hand-edit files under packages/terradart_google_beta/lib/src/ or the source_beta/ fixture — regenerate both.
The beta-only catalog at the current provider pin is filled. Add a resource only when a later pin introduces a new beta-only type (issue / maintainer ask) — do not sweep overlapping GA names into this package. GA resources belong in terradart_google — check the GA schema fixture first; a resource present there is NOT beta-only.
Workflow
Task progress:
- 1. Confirm beta-only. The type must be absent from the GA fixture (
packages/terradart_codegen/test/fixtures/wrap/source/schema.json) and present in the google-beta provider. If it exists in GA, stop — curate it interradart_googleinstead (terradart-add-curated-resource). - 2. Re-extract the fixture with the new type added via union — the current set comes from the fixture itself (
schema.jsonkeys are the single source of truth; no name list is maintained anywhere else):
Requiresdart tool/extract_schema_subset.dart \ --provider=hashicorp/google-beta --version=<provider_version.txt> \ --resources-from=packages/terradart_codegen/test/fixtures/wrap/source_beta/schema.json \ --resources=<new_type> \ --out=packages/terradart_codegen/test/fixtures/wrap/source_betaterraformon PATH and terraform-registry network access (no cloud credentials). If either is missing in your environment, stop and report — never hand-write schema JSON. - 3. Write the override at
packages/terradart_codegen/lib/src/codegen/wrapper_overrides/google_beta/yaml/<type>.yaml. Same axes and rules as GA overrides (Generation Policy binds you: thin overrides, human decisions only, IAM binding/policycuratedDocauthoritative-semantics rule). There is no MM enrichment on this lane (mm: false) —deriveEnumshas nothing to derive; hand enums go inprelude. - 4. Barrels manifest: if the override's
outputDirintroduces a new barrel, add it tobarrels_google_beta.yamlwith adoc:(fail-closed — wrap errors without it). - 5. Regenerate (the
--resource-providerpin is mandatory — beta shares the GAgoogle_*type prefix):cd packages/terradart_codegen dart run bin/terradart.dart wrap \ --provider hashicorp/google-beta \ --source test/fixtures/wrap/source_beta \ --output ../terradart_google_beta/lib/src \ --overrides-root lib/src/codegen/wrapper_overrides/google_beta/yaml \ --barrels-manifest lib/src/codegen/barrels/barrels_google_beta.yaml \ --resource-provider google-beta - 6. Cost-classify the type (policy, apply or not): gcp-cost tools (
dart tool/gcp_cost_call.dartin cloud-agent sessions) → record evidence intool/apply_cost_denylist.yamlper its header format. When unsure, leave unclassified and say so. - 7. Example coverage: extend
examples/beta_leftover_quickstart(or a focused beta example) so the factory appears in a synth, or record a reasonedtool/example_debt.yamlline.dart tool/example_synth_gates.dartreads both GA and beta catalogs — an uncovered new factory fails CI. - 8. Ledger check: any new beta example must be listed in
tool/apply_smoke_skip.yamlunder the google-beta-lane section (beta apply policy is not designed; synth +terraform validateonly). - 9. Package test: extend
packages/terradart_google_beta/test/synth_test.dartwhen the new factory has synth-visible behavior worth pinning (provider pin, sealed slots, sensitive fields). - 10. CHANGELOG: add the factory to
packages/terradart_google_beta/CHANGELOG.mdunder the next version heading.
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.
- 6d ago Changed · -2 lines 7b7448dd36c5
- 12d ago First seen · 59 lines · 59 tokens per session scan A 4ca5a668d823
terradart-add-beta-resource is a skill published in the GitHub repository nozomi-koborinai/terradart (46 stars, last pushed 3d ago), licensed Apache-2.0. It adds 59 tokens to every session and 1,187 once invoked, about $0.0003 per session on Opus 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-08-30.
Other skills, from other repositories
gcp-cloud-run
Production-ready Cloud Run on GCP: containerized services, Cloud Run Functions, cold start optimization, Pub/Sub integration, Cloud SQL, Secret Manager, concurrency tuning. Covers sharp edges and gotchas.
at_client_skills-sdk
Use this skill when a developer is building a Dart or Flutter app that depends on atclient or atclientflutter from pub.dev, stores or shares data via the Atsign Protocol, needs onboarding (CRAM new-atsign, atKeys file, keychain, APKAM) or APKAM enrollment, or asks about AtCollection , CItem , Query , sub-collections…
firebase-auth
Use when setting up auth, managing auth state, implementing email/password or social sign-in, handling auth errors, or managing users.
firebase-cloud-functions
Use when calling callable functions (httpsCallable), passing data to server-side logic, handling function errors/timeouts, configuring regions, or testing with the Emulator Suite.
firebase-data-connect
Use when setting up Data Connect, writing GraphQL queries/mutations, configuring generated SDKs, handling offline, or applying security rules.
flutter-mcp-toolkit-custom-tools
Use this skill when the agent exposes app-specific surfaces by registering custom MCP tools and resources inside the Flutter app (mcptoolkit dynamic registry — AgentCallEntry, bootstrapFlutter additionalEntries / addEntries). Covers tool vs resource vs evaluate-expression, Map-based handlers, schema strictness…