{"skill":{"slug":"model-watcher","displayName":"AI Model Watcher","summary":"Discover, store, and inspect AI model catalog entries from one or more sources. Use when the user wants to sync a model catalog into SQLite, see newly discov...","description":"---\nname: model-watcher\ndescription: Discover, store, and inspect AI model catalog entries from one or more sources. Use when the user wants to sync a model catalog into SQLite, see newly discovered models, list models first seen recently or in a given month, inspect one model, or view simple catalog stats.\n---\n\n# Model Watcher\n\nMaintain a local catalog of discovered AI models and query that catalog with a small CLI.\n\nThis skill covers discovery, storage, and inspection of model entries.\nIt does not define scheduling or notification behavior.\n\n## Quick Usage\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py scan\npython3 skills/model-watcher/scripts/model_watcher.py brief-new\npython3 skills/model-watcher/scripts/model_watcher.py recent --days 7\npython3 skills/model-watcher/scripts/model_watcher.py monthly --month 2026-03\npython3 skills/model-watcher/scripts/model_watcher.py stats\npython3 skills/model-watcher/scripts/model_watcher.py show --model-id provider/model-name\n```\n\nDefault database path:\n\n```text\nskills/model-watcher/data/model-watcher.db\n```\n\nOverride with `--db /path/to/file.db` when needed.\n\n## Commands\n\n### `scan`\n\nSync source data into the local SQLite database.\n\nExpected result:\n- fetch latest catalog data from the configured source implementation\n- normalize key fields\n- upsert model records\n- record `new`, `updated`, and `missing` events\n- print one run summary\n\nExample:\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py scan\n```\n\nExample output:\n\n```text\nrun_id: a32cd157-c617-4682-8ae6-5765439e6fd9\nsource: openrouter\nmodels_total: 344\nnew: 0 | updated: 0 | missing: 0\n```\n\n### `brief-new`\n\nShow models from the latest run that recorded `new` events.\n\nUse this when a compact list of newly discovered models is needed.\n\nExample:\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py brief-new --limit 3\n```\n\nExample output:\n\n```text\nOpenRouter new models from run a32cd157-c617-4682-8ae6-5765439e6fd9: 3\n- x-ai/grok-4.20-multi-agent-beta — xAI: Grok 4.20 Multi-Agent Beta\n  first seen: 2026-03-13 05:43:20 UTC\n  provider: x-ai | context: 2000000 | modality: text+image->text\n  pricing: in 0.000002, out 0.000006, extras 2\n```\n\n### `recent`\n\nList models whose `first_seen_at` is within the last N days.\n\nExample:\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py recent --days 7\n```\n\nExample output:\n\n```text\nOpenRouter models first seen in last 7 day(s): 12\n- provider/model-a — Model A\n  first seen: 2026-03-12 08:00:00 UTC\n  provider: provider | context: 128000 | modality: text->text\n  pricing: in 0.000001, out 0.000002\n```\n\n### `monthly`\n\nList models whose `first_seen_at` falls within a given month.\n\nExample:\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py monthly --month 2026-03\n```\n\nExample output:\n\n```text\nOpenRouter models first seen in 2026-03: 18\n- provider/model-b — Model B\n  first seen: 2026-03-10 03:20:00 UTC\n  provider: provider | context: 256000 | modality: text+image->text\n  pricing: in 0.000003, out 0.000009\n```\n\n### `stats`\n\nShow simple catalog totals and top provider counts.\n\nExample:\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py stats\n```\n\nExample output:\n\n```text\nOpenRouter active models: 344\nAdded in last 7 days: 12\nAdded in 2026-03: 18\nTop providers:\n- openai: 60\n- qwen: 50\n- google: 27\n```\n\n### `show`\n\nShow one stored model entry.\n\nExample:\n\n```bash\npython3 skills/model-watcher/scripts/model_watcher.py show --model-id openai/gpt-4o-mini\n```\n\nExample output:\n\n```text\nmodel_id: openai/gpt-4o-mini\nname: OpenAI: GPT-4o Mini\nprovider: openai\ncreated_at: 2026-03-01 00:00:00 UTC\nfirst_seen_at: 2026-03-13 05:43:20 UTC\nlast_seen_at: 2026-03-13 05:43:20 UTC\ncontext_length: 128000\nmodality: text+image->text\npricing: in 0.00000015, out 0.0000006\ndescription:\nCompact multimodal model optimized for low cost and fast response.\n```\n\n## Data Model\n\nThe database schema is documented in `references/schema.md`.\n\nKeep the schema extensible for multiple future sources.\nKeep source-specific collection logic in scripts, not in this file.\n\n## Notes\n\n- Prefer compact, factual output.\n- Prefer stable ids and `first_seen_at` for reporting.\n- Treat `new` as the primary discovery signal.\n- Do not put scheduling, cron, or user-facing notification policy into this skill.\n","topics":["Sqlite","Sync"],"tags":{"ai":"1.0.0","catalog":"1.0.0","discovery":"1.0.0","latest":"1.0.0","models":"1.0.0","sqlite":"1.0.0","tracking":"1.0.0","watcher":"1.0.0"},"stats":{"comments":0,"downloads":470,"installsAllTime":18,"installsCurrent":0,"stars":0,"versions":1},"createdAt":1773739281056,"updatedAt":1778491973688},"latestVersion":{"version":"1.0.0","createdAt":1773739281056,"changelog":"Initial release: discover, store, and inspect AI model catalog entries from local and remote sources.","license":"MIT-0"},"metadata":null,"owner":{"handle":"hoopan007","userId":"s177gh2hms7mnw8khc7ff622vd83gcvt","displayName":"Hoopan","image":"https://avatars.githubusercontent.com/u/26020615?v=4"},"moderation":null}