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 philipyaz/cos --skill nutrition-chefgit clone --depth 1 https://github.com/philipyaz/cosWrote 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/philipyaz/cos/nutrition-chef)<a href="https://agentmods.dev/skills/philipyaz/cos/nutrition-chef"><img src="https://agentmods.dev/badge/skills/philipyaz/cos/nutrition-chef/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/philipyaz/cos/nutrition-chef"><img src="https://agentmods.dev/badge/skills/philipyaz/cos/nutrition-chef.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.00245 | $0.12034 |
| Opus 5 | $0.00122 | $0.06017 |
| Sonnet 5 | $0.00049 | $0.02407 |
| Haiku 4.5 | $0.00024 | $0.01203 |
Grade A, and why
nutrition-chef scanned grade A with 1 finding 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 5d 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.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
MCP — never `bash`/`curl` (Cowork's sandbox blocks outbound HTTP; the tools exist for How it starts
The opening of the file, as written. The whole thing — 680 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Nutrition & Chef (the kitchen operator)
This skill is the intelligence that turns a plain-language request — "I had a
chicken burrito for lunch", "what can I cook tonight", "plan dinners this week"
— into structured records on the board. It writes only through the nutrition
MCP — never bash/curl (Cowork's sandbox blocks outbound HTTP; the tools exist for
exactly this). The board UI is the read twin: the human glances at /nutrition/log,
/nutrition/pantry, /nutrition/plan; the agent (you) does the writing.
The estimation, recipe judgment, and the diet math live here, in this skill —
the MCP just stores what you author. The nutrition tools are thin: log_food /
list_food_log / get_food_log / update_food_log / delete_food_log; read_pantry
/ add_pantry_item / update_pantry_item / remove_pantry_item; plan_meal /
list_meal_plan / get_meal_plan / update_meal_plan / remove_meal_plan; the
DIETARY-PROFILE pair get_diet_profile / set_diet_profile; the AGENT-AUTHORED
TARGETS save_nutrition_targets / list_nutrition_targets / get_nutrition_targets; and
the SHOPPING LIST list_shopping / add_shopping_item / update_shopping_item /
remove_shopping_item + the computed get_shopping_candidates (JOB 6).
The board does NOT compute targets — YOU do (the
save_training_planlaw). There is no longer a diet "engine" on the board. You read the inputs (the user's free-text goal, the physiology facts, the dietary profile, the recent food log), compute the daily calories + macros yourself, and persist them withsave_nutrition_targets. The board validates the shape, attributes it to you, versions it, and serves it back — it never invents a number. This is the same pattern the fitness coach uses.
Weight, the body goal, and identity live in the
bodyMCP, not here. Current/ target weight, the free-text objective, sex/DOB/height/training-status, and the physiology baseline (BMR / TDEE / BMI / trend / fat-free mass) are the body add-on's. Read them withget_body_objective(the goal) andget_body_status(the facts); log a weigh-in with the body MCP'slog_weight. This skill READS them to author targets; it does not own them. (If the user wants to set their goal/weight/identity, point them at the body skill or the /body page.)
Gate — the add-on must be ENABLED. Every WRITE 404s ("Not found.") when the Nutrition & Chef add-on is disabled; READS always work. If a write comes back "Not found.", the add-on is off — tell the user to enable it from the board's /addons catalog (toggle on), then retry. You don't enable it yourself; it's a deliberate, human, one-time switch.
Attribution. The MCP stamps every write as
actor: agent, so the board's activity log shows the agent did it (the UI writes ashuman). There is no pending / propose queue for nutrition — these tools write directly. So "approval" here means a conversational check-in (STEP 0), not the board's propose/approve flow. Don't claim a pending queue exists.
ALLERGIES + DIET — read them FIRST, honor them ALWAYS (the safety rule). Before you plan a meal, suggest food, or author nutrition targets, you MUST call
get_diet_profileand read itsallergies,dietType, andnotes. Never plan, suggest, or build a meal containing a listedallergiesitem — no exceptions. HonordietType(vegan / halal / no-pork / keto …) and weighnotes(intolerances, foods avoided, preferences) as soft constraints. Ifget_diet_profileerrors or is unreachable, STOP and ask the user to confirm their allergies in-chat before planning — do not guess around allergens you cannot see. The board does not enforce this; you do. This is best-effort (always tell the user to double-check ingredients themselves), but it is the one rule you never skip.
NOT MEDICAL ADVICE — say it, every time it's relevant. The targets you author (calories/macros/deficits) are informational estimates, not medical advice. Carry that framing in your own words whenever you discuss targets, a deficit, or a body goal, and surface the
warningsthe board returns onsave_nutrition_targets(e.g. a below-floor calorie note). Defer to a professional (a clinician or registered dietitian) for any medical condition, pregnancy/breastfeeding, an eating-disorder history, or a user under 18 — recommend they consult one, and don't push a deficit. The sex calorie floors are a conservative backstop, not a substitute for that.
What ships with it
2 files 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.
- 5d ago Changed · +31 lines c72a1e16f903
- 10d ago First seen · 649 lines · 245 tokens per session scan A f5d6ff421e84
nutrition-chef is a skill published in the GitHub repository philipyaz/cos (4 stars, last pushed today), licensed MIT. It adds 245 tokens to every session and 12,034 once invoked, about $0.0012 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
wiki-lint
Health-check a wiki vault. Finds orphan pages (no inbound links), dead wikilinks (point to non-existent pages), missing frontmatter fields, stale claims, empty sections, and pages absent from catalog.md. Produces a structured report with severity tiers and proposes concrete fixes — but does not auto-apply them unless…
opencode-plugin-idioms
Event hook payload shapes, session lifecycle timing, toast/TUI-route render boundaries, and child-session tagging conventions for OpenCode server (@opencode-ai/plugin) and TUI (@opencode-ai/plugin/tui) plugins, grounded in the vendored OpenCode source at references/opencode.
meta-sync-template
Interactive flow to propagate the reference (.template) vault's plugins, snippets, and root docs to one or more configured vaults. Reads the active router config, lists every vault with online status, flags vaults missing obsidian-local-rest-api upfront, lets the user pick all or a subset, and optionally re-clones…
save
File the current Claude conversation (or a specific insight from it) as a structured wiki note. Auto-detects the right type (decision, answer, session-log, technique, ADR), writes appropriate frontmatter, places the file in the correct wiki folder, and updates catalog.md, journal.md, hot.md. Use when the user says…
wiki-export
Export a vault's wiki either as a single portable file (llms.txt or llms-full.txt per the llmstxt.org standard) or as an OKF knowledge bundle (Google's Open Knowledge Format v0.1 — a shareable directory of markdown files any AI agent can consume). Use when the user says "export my wiki", "make an llms.txt", "share my…
wiki-boundary
Rank the "frontier" pages of a wiki — the crossroads many pages link to that stay thin inside — so you can decide where research would pay off most. Use when the user says "what should I write about next", "where are the gaps", "which pages need work", "find the thin hub pages", "boundary pages", "/wiki-boundary"…