catime — AI-Generated Hourly Cat Images 🐱
One-liner: Fetch the latest (or any) AI-generated cat image and send it to the user with a caption and story.
Every hour, catime generates a unique cat artwork using Google Gemini. This skill allows an AI agent to retrieve cat images by number, date, or recency and send them directly to the user via the message tool.
Installation
CODEBLOCK0
After installation the catime CLI is available. Verify:
CODEBLOCK1
Quick Start for AI Agents
Step 1 — Retrieve a cat image with catime
Run the CLI to get image metadata. The most common command:
CODEBLOCK2
Exact output:
CODEBLOCK3
Step 2 — Parse the output and send the image to the user
Extract the URL from the line starting with URL:. Then use the message tool (or equivalent) to send the image along with a caption.
Example message tool payload (YAML):
CODEBLOCK4
Example message tool payload (JSON):
CODEBLOCK5
Command Reference
catime latest
Fetch the most recently generated cat.
Input:
CODEBLOCK6
Output:
CODEBLOCK7
Parse guidance:
- - Line 1 — Header: INLINECODE4
- Line 2 (
URL:) — The image URL. This is the most important line. - Line 3 (
Idea:) — Short concept in Chinese. - Line 4 (
Prompt:) — Full image generation prompt in English. - Line 5 (
Story:) — Narrative story for the cat in Chinese.
catime today
Fetch all cats generated today (UTC). Returns multiple cat entries.
Input:
CODEBLOCK8
Output (excerpt):
CODEBLOCK9
Parse guidance: The first line says Found N cat(s) for 'today':. Then each cat entry follows the same format as catime latest. To send the newest, pick the last entry.
catime <number>
Fetch a specific cat by its sequential number.
Input:
CODEBLOCK10
Output:
CODEBLOCK11
Parse guidance: Same format. Short entries (like numbered lookups) may only show the header and URL lines without Idea/Prompt/Story.
catime --list
List all cats (number + URL, compact format).
Input:
CODEBLOCK12
Output (first 10 lines):
CODEBLOCK13
Parse guidance: Each cat takes 2 lines. Odd lines are headers, even lines are URLs. Use --list | tail -2 to get the latest, or --list | wc -l to count cats (divide by 2).
catime <date>
Fetch cats from a specific date (YYYY-MM-DD format).
Input:
CODEBLOCK14
catime view
Opens the web gallery in the default browser. Not useful for agents — use latest or a number instead.
Agent Workflow: Send a Cat Image to User
Follow these steps exactly:
1. Decide which cat to fetch
| User request | Command to run |
|---|
| "Show me a cat" / "Send me a cat" | INLINECODE19 |
| "Show me today's cats" |
catime today |
| "Show me cat number 42" |
catime 42 |
| "Show me cats from Jan 30" |
catime 2026-01-30 |
| "Show me a random cat" |
catime $(shuf -i 1-241 -n 1) |
2. Run the command and capture stdout
CODEBLOCK15
3. Parse the URL from stdout
Look for the line that starts with URL: . Extract everything after URL: .
Parsing rule (pseudocode):
CODEBLOCK16
Parsing rule (bash):
CODEBLOCK17
4. Parse optional metadata
CODEBLOCK18
5. Send the image to the user
Use the message tool with the extracted URL and metadata:
CODEBLOCK19
6. Fallback behavior
- - If URL is missing: Tell the user the cat data was not available and suggest trying
catime latest or a different number. - If
catime is not installed: Run pip install catime first, then retry. - If network error: The CLI fetches
catlist.json from GitHub. If offline, tell the user the cat gallery requires internet access. - If the user wants multiple cats: Use
catime today and parse all entries (each entry separated by a blank line). Send the first or let the user choose.
Output Format Reference
Every catime command outputs cat entries in this format:
CODEBLOCK20
Field-by-field guide:
| Field | Line prefix | Always present? | Description |
|---|
| Number | INLINECODE32 (header) | ✅ Yes | Sequential cat ID (1, 2, 3, …) |
| Date/Time |
header | ✅ Yes | UTC timestamp of generation |
| Model |
model: (header) | ✅ Yes | AI model used (e.g.
gemini-3-pro-image-preview) |
| URL |
URL: | ✅ Yes | Direct link to the image file (.webp or .png) |
| Idea |
Idea: | Sometimes | Short concept (usually Chinese) |
| Prompt |
Prompt: | Sometimes | Full English prompt used for image generation |
| Story |
Story: | Sometimes | Narrative story for the cat (usually Chinese) |
Key notes for parsing:
- - The
URL line is always present and is the critical field for sending images. - INLINECODE40 ,
Prompt, and Story appear in detailed views (latest, today, specific number with detail) but may be absent in --list mode. - All URLs point to GitHub Releases — they are publicly accessible, no auth needed.
- Image formats are
.webp (most common) or .png (older cats).
Tips for AI Agents
- 1. Always use
catime latest as the default when the user just wants "a cat." - The URL is on the line starting with
URL: — this is all you need to send an image. - Stories are in Chinese — you can translate them for English-speaking users or include them as-is for bilingual charm.
- Images are hosted on GitHub Releases — they load fast and don't require authentication.
- New cats appear every hour — if the user wants a fresh one,
latest always works. - For random selection, pick a random number between 1 and the latest cat number.
--list is efficient for browsing — it only shows 2 lines per cat (header + URL).- Do not use
catime view — it opens a browser, which is not useful in agent/CLI context. - Include the story in your caption when available — it adds personality and delight.
- The Prompt field is useful if the user is curious about how the image was generated.
About catime
Note: A helper script for automated cat-sending workflows can be written if needed, but the CLI commands above are sufficient for all agent operations.
catime — AI生成的每小时猫咪图片 🐱
一句话描述: 获取最新(或任意)AI生成的猫咪图片,并附带说明文字和故事发送给用户。
catime 每小时使用 Google Gemini 生成一幅独特的猫咪艺术作品。此技能允许 AI 代理通过编号、日期或最新时间检索猫咪图片,并通过消息工具直接发送给用户。
安装
bash
pip install catime
安装后即可使用 catime 命令行工具。验证安装:
bash
catime --help
AI 代理快速入门
第一步 — 使用 catime 检索猫咪图片
运行命令行获取图片元数据。最常用的命令:
bash
catime latest
精确输出:
Cat # 241 2026-02-11 04:57 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-02-110457_UTC.webp
Idea: 一隻以精緻黑絲線繡成的貓咪,正專注地在微縮的金色與黑色奢華香氛實驗室中,嗅聞試香紙上的氣味,整個場景以刺繡的微縮立體模型形式呈現。
Prompt: An embroidered illustration of an elegant black cat, crafted from exquisite black silk threads with visible needlework, satin stitch, and French knots. The cat is presented as a handcrafted textile art miniature diorama...
Story: 在一個宛如織品藝術品的微縮香室裡,環形燈的光線均勻地灑落,凸顯出所有織品與布料的精緻質感。這隻優雅的黑貓,其絲線繡成的毛髮閃爍著低調的光澤,牠全神貫注地分辨著香氣,周圍是數個鑲有金色瓶蓋的繡花香水瓶。牠正試圖從層疊的香氣中,捕捉那一縷最為珍貴的靈感。
第二步 — 解析输出并发送图片给用户
从以 URL: 开头的行中提取URL。然后使用消息工具(或等效工具)发送图片及说明文字。
示例消息工具负载(YAML):
yaml
action: send_message
media:
type: image
url: https://github.com/yazelin/catime/releases/download/cats/cat2026-02-110457_UTC.webp
caption: 🐱 猫咪 #241 — AI生成的每小时猫咪!
text: |
这是您的猫咪!猫咪 #241,创建于 2026-02-11 04:57 UTC。
故事:在一個宛如織品藝術品的微縮香室裡,環形燈的光線均勻地灑落...
metadata:
source: catime
cat_number: 241
model: gemini-3-pro-image-preview
generated_at: 2026-02-11 04:57 UTC
示例消息工具负载(JSON):
json
{
action: send_message,
media: {
type: image,
url: https://github.com/yazelin/catime/releases/download/cats/cat2026-02-110457_UTC.webp
},
caption: 🐱 猫咪 #241 — AI生成的每小时猫咪!,
text: 这是您的猫咪!猫咪 #241,创建于 2026-02-11 04:57 UTC。\n故事:在一個宛如織品藝術品的微縮香室裡…,
metadata: {
source: catime,
cat_number: 241,
model: gemini-3-pro-image-preview,
generated_at: 2026-02-11 04:57 UTC
}
}
命令参考
catime latest
获取最近生成的猫咪。
输入:
bash
catime latest
输出:
Cat # 241 2026-02-11 04:57 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-02-110457_UTC.webp
Idea: 一隻以精緻黑絲線繡成的貓咪…
Prompt: An embroidered illustration of an elegant black cat…
Story: 在一個宛如織品藝術品的微縮香室裡…
解析指南:
- - 第1行 — 头部:Cat # <编号> <日期> <时间> UTC model: <模型>
- 第2行( URL:)— 图片URL。这是最重要的一行。
- 第3行( Idea:)— 中文简短概念。
- 第4行( Prompt:)— 英文完整图片生成提示词。
- 第5行( Story:)— 猫咪的中文叙事故事。
catime today
获取今天(UTC)生成的所有猫咪。返回多个猫咪条目。
输入:
bash
catime today
输出(节选):
Found 2 cat(s) for today:
Cat # 240 2026-02-11 02:49 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-02-110249_UTC.webp
Idea: 一張以35mm底片攝影風格捕捉的畫面…
Prompt: A candid 35mm film photograph…
Story: 午後的自然漫射光,透過老舊窗戶溫柔地灑落在候車室地面…
Cat # 241 2026-02-11 04:57 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-02-110457_UTC.webp
Idea: 一隻以精緻黑絲線繡成的貓咪…
Prompt: An embroidered illustration of an elegant black cat…
Story: 在一個宛如織品藝術品的微縮香室裡…
解析指南: 第一行显示 Found N cat(s) for today:。然后每个猫咪条目遵循与 catime latest 相同的格式。要发送最新的,选择最后一个条目。
catime <编号>
通过顺序编号获取特定猫咪。
输入:
bash
catime 42
输出:
Cat # 42 2026-01-31 23:24 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-01-312324_UTC.webp
解析指南: 格式相同。简短条目(如按编号查询)可能只显示头部和URL行,不包含Idea/Prompt/Story。
catime --list
列出所有猫咪(编号 + URL,紧凑格式)。
输入:
bash
catime --list
输出(前10行):
Cat # 1 2026-01-30 05:46 UTC model: gemini-2.5-flash-image
URL: https://github.com/yazelin/ccat/releases/download/cats/cat2026-01-300546_UTC.png
Cat # 2 2026-01-30 05:56 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-01-300556_UTC.webp
Cat # 3 2026-01-30 06:23 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-01-300623_UTC.webp
Cat # 4 2026-01-30 06:33 UTC model: gemini-3-pro-image-preview
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-01-300633_UTC.webp
Cat # 5 2026-01-30 06:53 UTC model: gemini-2.5-flash-image (fallback from gemini-3-pro-image-preview, reason: timeout after 180.0s)
URL: https://github.com/yazelin/catime/releases/download/cats/cat2026-01-300653_UTC.webp
解析指南: 每只猫咪占2行。奇数行是头部,