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.
git clone --depth 1 https://github.com/kanaerulabs/growth-kitWrote 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/commands/kanaerulabs/growth-kit/x)<a href="https://agentmods.dev/commands/kanaerulabs/growth-kit/x"><img src="https://agentmods.dev/badge/commands/kanaerulabs/growth-kit/x/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/commands/kanaerulabs/growth-kit/x"><img src="https://agentmods.dev/badge/commands/kanaerulabs/growth-kit/x.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.00012 | $0.04491 |
| Opus 5.5 | $0.00005 | $0.01796 |
| Sonnet 5.5 | $0.00002 | $0.00898 |
| Haiku 4.5 | $0.00001 | $0.00449 |
Grade A, and why
x 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 — 554 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Generate a copy-pastable X thread from any content source - blog posts, articles, PDFs, URLs, or plain text.
Usage: $ARGUMENTS
Process:
-
Parse Input Arguments
- Extract content input and optional language parameter
- Examples:
2025-10-06-my-post(slug only, default English)2025-10-06-my-post ja(slug with Japanese)path/to/article.md(file path)https://myblog.com/post(URL)docs/whitepaper.pdf en(PDF with language)
-
Universal Input Detection
If input looks like a file path (contains
/or file extension):- Use Read tool to check if file exists
- Detect format by extension:
.md/.mdx→ Parse markdown with frontmatter (extract title, description, body, metadata).pdf→ Inform user PDF parsing is limited, suggest converting to markdown first.docx→ Inform user DOCX parsing is limited, suggest converting to markdown first.html→ Read and extract main content, strip HTML tags.txt→ Read as plain text.json→ Parse JSON and extract relevant fields
- Extract: title, description, body content, metadata
If input looks like a URL (starts with
http://orhttps://):- Use WebFetch tool to retrieve the page
- Prompt: "Extract the main article content, title, and description from this page"
- Parse and clean the text
If input is a slug (no
/and no protocol):- Search codebase using Glob:
**/*${input}*.md - Common patterns to check:
src/content/blog/posts/{en,ja}/*${input}*.mdcontent/blog/*${input}*.mdposts/*${input}*.mdblog/*${input}*.md
- If language specified, prioritize matching language folder
- Use Read tool to parse markdown file with frontmatter
-
Determine Language (default: English):
- If user explicitly specifies "ja" → Japanese
- If user explicitly specifies "en" → English
- If file path contains
/ja/→ Japanese - If content appears to be in Japanese → Japanese
- Otherwise → English
-
Generate THREE versions in the target language:
Version 1: Thread (5-8 posts)
- For English: Follow Kanaeru Labs' X voice (see guidelines below)
- For Japanese: Use professional yet accessible Japanese tone
- Break into digestible posts (max 280 chars each)
Version 2: Single Long (Premium)
- Structured format with clear sections
- For Japanese: Use 【brackets】: 【とは】【誰のため】【主な特徴】【次にすべきこと】
- For English: Use headers: What it is: Who it's for: Key features: What to do next:
Version 3: Single Short (~280 chars)
- Concise announcement
- 2-3 key benefits with emojis
- Links and hashtags
-
Generate all three versions directly using Claude's built-in capabilities:
- Read the blog content using Read tool
- Extract key insights and stats from the content
- Create all 3 versions following the guidelines below
- Validate character counts
- PURE CLAUDE - NO external scripts, NO npm, NO dependencies
- APPLY HUMANIZATION (see Humanization Guidelines below)
-
Display all versions to the user in terminal:
- Show thread posts with character counts
- Show single long version
- Show single short version
- Format for easy copy-pasting
-
Create tri-format HTML preview file using Write tool:
- IMPORTANT: Check if file exists first:
ls -la x-thread-[LANG].html 2>&1 - If file exists, use Read tool first (even just 1 line):
Read('x-thread-[LANG].html', limit=1) - Then use Write tool to create/update:
x-thread-[LANG].htmlin user's current directory - Include THREE tabs with tab switcher UI:
- Tab 1: Thread - 5-8 posts with individual "Copy Post" buttons
- Tab 2: Single Long - Structured format with sections, one "Copy" button
- Tab 3: Single Short - Concise version (~280 chars), one "Copy" button
- Use X branding (black theme)
- Tab switcher at top for easy navigation
- Use Bash tool to open:
open x-thread-[LANG].html && open https://x.com/compose/post - Works in ANY repo type (Python, Rust, Go, etc.)
- IMPORTANT: Check if file exists first:
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 First seen · 554 lines · 12 tokens per session scan A cc161c6115c7
x is a command published in the GitHub repository kanaerulabs/growth-kit (15 stars, last pushed 8mo ago), licensed MIT. It adds 12 tokens to every session and 4,491 once invoked, about $0.0000 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 commands, from other repositories
chinese
A command that changes Claude Code's interface, loading messages, and spinner text to simplified Chinese.
english
A command that switches Claude Code's interface text, spinner verbs, and tips back to English. Claude Code is a coding assistant that runs in a development environment.
en
A short command that switches Claude Code’s responses back to English. It is an alias for the `/english` command.
zh
A short command that switches Claude Code to Simplified Chinese. It is handled locally by a command hook.
learn
Force claude-smart to extract learnings from this session now.
prototype
You are building a proof-of-concept for the current Grainulator sprint. Read CLAUDE.md for sprint context and claims.json for existing research claims.