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.
npx skills add shennawardana23/skillme --skill hotel-rate-and-inventory-modelinggit clone --depth 1 https://github.com/shennawardana23/skillmeWrote 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/shennawardana23/skillme/hotel-rate-and-inventory-modeling)<a href="https://agentmods.dev/skills/shennawardana23/skillme/hotel-rate-and-inventory-modeling"><img src="https://agentmods.dev/badge/skills/shennawardana23/skillme/hotel-rate-and-inventory-modeling/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/shennawardana23/skillme/hotel-rate-and-inventory-modeling"><img src="https://agentmods.dev/badge/skills/shennawardana23/skillme/hotel-rate-and-inventory-modeling.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.00072 | $0.01356 |
| Opus 5 | $0.00036 | $0.00678 |
| Sonnet 5 | $0.00014 | $0.00271 |
| Haiku 4.5 | $0.00007 | $0.00136 |
Grade A, and why
hotel-rate-and-inventory-modeling 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 9d 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 — 120 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Hotel Rate and Inventory Modeling
Rate and inventory are two independent axes that a schema or service layer
must keep genuinely separate — a room type (what physically exists to
sell) and a rate plan (a price/terms combination for selling it) are
not the same entity and don't share a lifecycle. This is the schema
distinction most new hotel-domain code gets wrong, and everything else in
this skill follows from keeping it straight. For the database
partitioning/query mechanics once a schema is decided, see
postgres-hotel-partitioning and erd-expert — this skill covers the
domain modeling above that layer.
Room type vs. rate plan: two independent axes
A room type (deluxe, suite, standard twin) is a physical/product concept: how many exist, their capacity, their amenities. A rate plan (best available rate, non-refundable, member rate, corporate rate) is a commercial concept layered on top: a price, cancellation terms, and inclusions, for a given room type and date range. The same room type carries multiple simultaneous rate plans; modeling a "rate" as if it were a property of the room type itself (rather than a many-to-many relationship keyed by room type × rate plan × date) causes combinatorial schema explosion the moment a new promotional rate is added, since it looks like it needs a new room-type row instead of a new rate-plan row.
Allotment vs. raw inventory
Allotment is the count of rooms released to a specific sales channel (a specific OTA, a specific rate plan, a group block) — it is a subset assignment against physical inventory, not the inventory count itself. Tracking only raw room-type inventory and treating every channel as competing for the same undifferentiated pool makes controlled overbooking (a deliberate yield-management decision) indistinguishable from an accidental double-booking. A design needs both: total physical inventory, and a separate allotment ledger per channel/rate plan that sums to no more than that total (with an explicit, bounded overbooking margin where the business intends one).
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
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.
- 9d ago First seen · 120 lines · 72 tokens per session scan A de01b7fe6277
hotel-rate-and-inventory-modeling is a skill published in the GitHub repository shennawardana23/skillme (2 stars, last pushed 15d ago), licensed Apache-2.0. It adds 72 tokens to every session and 1,356 once invoked, about $0.0004 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-09-03.
Other skills, from other repositories
wc-hpos-compatibility
Make WooCommerce order integrations compatible with High-Performance Order Storage. Covers compatibility declaration, order CRUD and queries, authoritative storage, sync-setting versus fully-synced checks, HPOS-aware admin list/meta-box hooks, cache-safe metadata access, large-store query optimization boundaries…
wc-product-crud-cache
Read and write WooCommerce products safely through WCProduct CRUD while accounting for the WooCommerce 11.0 productinstancecaching request cache. Covers view versus edit context, save and invalidation boundaries, direct WordPress meta writes, raw SQL hazards, variation-parent synchronization, taxonomy recount…
postgresql-development-cloudbase
Use when building, debugging, or evaluating CloudBase PostgreSQL / CloudBase PG / PG mode apps, including Postgres schema setup, queryPgDatabase/managePgDatabase, JS SDK v3 app.rdb() CRUD/RPC, PG HTTP API fallback, RLS-style permissions, username-password auth, and Web CMS/admin CRUD flows backed by CloudBase PG.
cloudbase-document-database-web-sdk
Use CloudBase document database Web SDK only for confirmed NoSQL collection work. Query, create, update, and delete document data; if the task mentions PostgreSQL / CloudBase PG / app.rdb(), route to postgresql-development instead.
minimal-web-baas-demo
A quick setup path for a small CloudBase web application with a database. CloudBase is a backend service that provides hosting and data storage, while CRUD means creating, reading, updating, and deleting records.
data-model-creation
Sibling CloudBase skills ship beside this skill. Use local relative paths such as ../auth-tool-cloudbase/SKILL.md.