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 agentmods add skills/jared833/claude-code-hooks/x-engagenpx skills add jared833/claude-code-hooks --skill x-engagegit clone --depth 1 https://github.com/jared833/claude-code-hooksWrote 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/jared833/claude-code-hooks/x-engage)<a href="https://agentmods.dev/skills/jared833/claude-code-hooks/x-engage"><img src="https://agentmods.dev/badge/skills/jared833/claude-code-hooks/x-engage.svg" alt="Measured on agentmods" 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 | $0.00075 | $0.02076 |
| Opus 5 | $0.00037 | $0.01038 |
| Sonnet 5 | $0.00015 | $0.00415 |
| Haiku 4.5 | $0.00007 | $0.00208 |
Grade A, and why
x-engage 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 4d 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 — 66 lines — stays where its author put it; the contents beside it link to each section on GitHub.
X daily engagement session
Goal: grow @jared_hebb by replying, not broadcasting. Claude drafts; Jared posts by hand.
NO BROWSER AUTOMATION ON X (hard rule, 2026-07-19)
Never drive Jared's logged-in X account through Claude in Chrome (or any browser tool): no opening his feed, no scrolling/harvesting, no auto-posting replies, no clicking Follow. X flagged the account for scripted activity and demoted his reach when a session did this. Every outward action on X is Jared's hands only. Claude's job here is draft-and-hand-off. This holds until we pay for official X API access (the first revenue spend); do not reintroduce browser control before then, and if a session ever seems to need it, stop and ask.
Session flow
-
Start the Engage app (the permanent dashboard at
<HOME>\projects\engage). Checkhttp://localhost:3220/api/health; if it is not up, runnpm run devthere in the background and wait for the health check to pass. All review, metrics, and history live in this app now. -
Get the raw material from Jared. He pastes the post URLs (or screenshots) he wants to engage, and tells you his current follower/following counts if he wants them tracked. Claude does not open X to find posts. If he asks for search ideas, offer terms from this pool for HIM to run:
"claude code","built with claude","build in public" ship,ai agents workflow,indie hacker revenue,"cursor vs claude",astro cloudflare,solo founder ai. WebFetch on a public post URL is fine for reading context; driving his account is not. -
Vet what he brought. Draft only for posts worth a reply: real author (not a bot/engagement-farm), a post where Jared can add something concrete, ideally not already buried under 50+ replies. Skip the rest and say why in one line.
-
Draft a reply for each following the voice rules below, then present them in the Engage review page (Jared approves in a browser, never in the terminal):
- POST the session JSON to
http://localhost:3220/api/session(shape:{platform:"x", title, replies:[{id,author,age,context,draft}], follows:[{handle,reason}], profile:{bio,link}|null}; omitprofileunless a refresh is planned). There is deliberately nopostfield here, see "This session does not draft posts" below. The response returnsreviewUrl; open it in a browser tab for him. - He marks each item Drafted/Skip/Redraft, edits drafts inline, then hits the single "Approve and send to Claude" button (here "drafted" means approved-to-copy, not auto-sent). Poll
GET http://localhost:3220/api/session/<id>/decisionsuntilsaved:true. The decisions tell you which drafts he approved; nothing is posted by Claude. - Any item with decision
redraft(optional directionnoteattached): write a fresh draft honoring the note, POST{drafts:[{id,draft}]}tohttp://localhost:3220/api/session/<id>/redraft(id= your string id from the session JSON or the numeric item id; a 400 means it matched nothing, so fix it and resend rather than assuming it took), then read the drafts back to confirm the new text is live, tell him to refresh, and poll for the next save. Repeat until nothing is marked redraft.
- POST the session JSON to
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.
- 4d ago First seen · 66 lines · 75 tokens per session scan A 0a928976b7c9
x-engage is a skill published in the GitHub repository jared833/claude-code-hooks (2 stars, last pushed 2d ago), licensed MIT. It adds 75 tokens to every session and 2,076 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-08-31.
Other skills, from other repositories
systematic-debugging
Use when encountering any bug, test failure, or unexpected behavior, before proposing fixes.
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior. Explores user intent, requirements and design before implementation.
auto-perf-optimize
Run agent-driven VS Code performance or memory investigations. Use when asked to launch Code OSS, automate a VS Code scenario, run the Chat memory smoke runner, capture renderer heap snapshots, take workflow screenshots, compare run summaries, or drive a repeatable scenario before heap-snapshot analysis.
chat-perf
Run chat perf benchmarks and memory leak checks against the local dev build or any published VS Code version. Use when investigating chat rendering regressions, validating perf-sensitive changes to chat UI, or checking for memory leaks in the chat response pipeline.
chat-pet-sprite-creation
Use when creating or changing VS Code chat pet sprite art, sprite sheets, state animations, eye treatments, Stable/Insiders variants, or pet transitions under src/vs/workbench/contrib/chat/browser/widget/media/chatPet.
cpu-profile-analysis
Analyze V8/Chrome CPU profiles (.cpuprofile) and DevTools trace files (Trace-.json). Use when: profiling performance, investigating slow functions, comparing code paths, finding bottlenecks, analyzing timeToRequest, understanding call trees from sampling profiler data, analyzing layout/paint/rendering, investigating…