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.01285 |
| Opus 5.5 | $0.00024 | $0.00514 |
| Sonnet 5.5 | $0.00012 | $0.00257 |
| Haiku 4.5 | $0.00006 | $0.00128 |
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 1mo 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 — 50 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— scaffold it withdart run bin/terradart.dart wrap-init --provider hashicorp/google-beta ...(frompackages/terradart_codegen), which fillsderiveNestedTypes,deriveOutputGetters,deriveEnumsandderiveExactlyOne; every beta override must keep all four (yaml_loader_test.dart). Same axes and rules as GA overrides (Generation Policy binds you: thin overrides, human decisions only, IAM binding/policycuratedDocauthoritative-semantics rule). Enums and sealedexactly_one_ofslots derive from the resource's Magic Modules YAML — do not hand-write them 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 through the lane runner, which first re-syncs the lane's Magic Modules YAML (network: api.github.com + raw.githubusercontent.com;
GITHUB_TOKEN/GH_TOKENraises the rate limit) because the fixture's resource set changed, then wraps with the--resource-provider google-betapin and--mm-hints:
It writesdart tool/wrap_lanes.dart --lane google-beta --gate regensource_beta/mm/<type>.yaml(when the type's generated Go source names anmmv1file) andsource_beta/mm_sources.yaml— commit both, never hand-edit them. The migration manifest regenerates with the wrappers; CI's betawrap_checklane andtool/agent_verify.shfail on a stale manifest or a stale MM sync. - 6. Gated example check: if applying the type needs an entitlement, an organization or real external inputs, bills while it exists, or leaves behind something that cannot be deleted (or a name that stays reserved), say so in the example README's
## Before you applysection (seeAGENTS.mdExample verification). - 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 (apply-time reasons — cost, entitlements, an organization — are not acceptable; seeAGENTS.mdExample verification).dart tool/example_synth_gates.dartreads both GA and beta catalogs — an uncovered new factory fails CI. - 8. 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). - 9. 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.
- 1mo ago Changed · -8 lines 3c56cc8cc999
- 1mo ago Changed · -1 lines d1d04743197e
- 1mo ago Changed · +2 lines ace6255b5475
- 1mo ago Changed · -2 lines 7b7448dd36c5
- 2mo 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 (52 stars, last pushed today), licensed Apache-2.0. It adds 59 tokens to every session and 1,285 once invoked, about $0.0002 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-08-30.
Other skills, from other repositories
terraform-infrastructure-as-code
Comprehensive Terraform Infrastructure as Code skill covering resources, modules, state management, workspaces, providers, and advanced patterns for cloud-agnostic infrastructure deployment.
Terraform Infrastructure as Code
Production-grade Terraform development with HCL best practices, module design, state management, multi-cloud patterns, and AI-enhanced infrastructure as code for scalable cloud deployments.
writing-blogs
Writes, structures, and formats SEO-optimized blog posts for the Appwrite blog following established conventions for voice, tone, frontmatter, and post structure. Use when the user asks to write, draft, create, or outline a blog post, or when working with files in src/content/blog/posts/.
create-announcement
Coordinates the three artifacts that ship a new Appwrite feature announcement: docs updates under src/content/docs/, an announcement blog post under blog/announcing- /, and a changelog entry under src/content/changelog/entries/. Use when the user asks to announce, launch, or ship a feature, product, SDK, runtime…
auditing-seo
Audits Appwrite blog posts for SEO, AEO, content structure, links, metadata, and search intent. Use when the user asks for an SEO audit, SEO review, search optimization check, or pre-publishing SEO assessment.
reviewing-blogs
Reviews and critiques blog posts in src/content/blog/posts/ against Appwrite's established standards for voice, tone, structure, SEO, formatting, and accuracy. Use when the user asks to review, audit, critique, or improve an existing blog post.