xray-bcc822 — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited xray-bcc822 (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Graph-based X intelligence. Every command operates on your social graph first, broad search second. Money stays focused on accounts and topics that matter to you.
If xray isn't configured, run setup:
bun run xray.ts setupOr in a Claude Code session, say "set up xray for me" — the agent will walk you through it conversationally.
Setup builds your config.json through an interview:
mirror)pulse)scout)track)Everything saves to config.json. Edit it anytime. Your graph grows as you discover people worth following.
When running inside Claude Code and the user asks to set up xray, DON'T just run the CLI interview. Instead, conduct the setup conversationally:
This feels more natural than a CLI form. Use the lane presets from xray.ts as options — they cover: design, ai, dev, startup, creative, crypto, marketing, studio.
export X_BEARER_TOKEN=your_token~/.env.keys: X_BEARER_TOKEN=your_token| Command | What it does | Cost | When |
|---|---|---|---|
scout | Reply opportunities from your graph | ~$0.50-1.50 | Daily, before posting |
pulse <lane> | What's hot in a topic lane | ~$1.00-2.00 | Daily, content ideas |
track | Top posts from tracked accounts | ~$1.00-2.50 | Weekly, competitive intel |
mirror | Your own accounts' performance | ~$1.50 | Weekly review |
prospect | Founders who just launched | ~$1.00-2.00 | Finding clients |
search <query> | General search (recent or archive) | ~$0.50/page | Ad-hoc research |
setup | Build your config interactively | free | First run |
Your graph lives in config.json. Three tiers:
mirror.scout.track.Manage with:
bun run xray.ts graph # Show full graph
bun run xray.ts graph add engage <user> [note] # Add to engage tier
bun run xray.ts graph add track <user> [note] # Add to track tier
bun run xray.ts graph remove <user> # Remove from any tierThe graph IS the strategy — it encodes who matters and why.
bun run xray.ts scout # From engage accounts, last 3h
bun run xray.ts scout --since 1h # More recent only
bun run xray.ts scout design # Also search a laneFetches recent posts from your engage tier. Scores by opportunity value:
Why this matters: On X, a reply that gets the author to reply back is worth 75x a like in algorithmic weight. Scout finds the tweets where your reply has the highest chance of being seen and replied to.
bun run xray.ts pulse design # Design engineering
bun run xray.ts pulse ai # AI/agents
bun run xray.ts pulse crypto # Crypto
bun run xray.ts pulse # List all available lanes
bun run xray.ts pulse design --since 6h # Shorter window
bun run xray.ts pulse ai --quality # Min 10 likes
bun run xray.ts pulse design --save # Save to fileEach lane has curated search queries. pulse runs them all, dedupes, ranks by engagement.
Use for content ideation. What's the conversation right now? What takes are getting traction? What questions are being asked?
bun run xray.ts track # All tracked accounts, last 7d
bun run xray.ts track --since 3d # Shorter window
bun run xray.ts track --save # Save reportBatch-fetches top posts from your track tier. Shows what formats and topics work for them.
Use weekly. Which formats get the most engagement? What topics are trending? Who's growing and why?
bun run xray.ts mirror # All your accounts
bun run xray.ts mirror --count 20 # More posts per accountShows your recent posts with engagement metrics. Compare to competitors (track).
bun run xray.ts prospect # Founders who just launched, last 24h
bun run xray.ts prospect --since 12h
bun run xray.ts prospect --quality # Higher engagement only
bun run xray.ts prospect --saveSearches for people who just launched products/websites. Quote-tweet their launch with a rapid redesign or insight, tag them. When people ask "can you do mine?" — that's the lead.
bun run xray.ts search "your topic" --sort likes --limit 10
bun run xray.ts search "some tool" --from someuser --quick
bun run xray.ts search "topic" --lang ja # Japanese results
bun run xray.ts search "topic" --archive --since 30d # Full history
bun run xray.ts search "topic" --quality --save --markdownOptions:
--sort likes|impressions|retweets|recent (default: likes)--since 1h|3h|12h|1d|7d|30d (or ISO timestamp)--archive — full-archive search (all time, back to 2006)--lang <code> — language filter (e.g., ja, en)--from <username> — shorthand for from:username--min-likes N / --min-impressions N--pages N (1-5)--limit N (display limit)--quick — 1 page, max 10, noise filters, 1hr cache--quality — min 10 likes--no-replies--save — save to research path--json / --markdownbun run xray.ts tweet <tweet_id_or_url> # Single tweet (FREE via syndication)
bun run xray.ts thread <tweet_id_or_url> # Root only, FREE
bun run xray.ts thread <tweet_id_or_url> --replies # Fetch replies (paid API)
bun run xray.ts profile <username> # Recent posts + bio (paid API)`tweet` and `thread` default to the free path. They hit cdn.syndication.twimg.com first — no auth, no cost, accepts a tweet URL or bare ID. Only fall back to the paid X API if syndication 404s (deleted/protected tweets), or you pass --paid to force it. thread --replies still costs API credits because reply fan-out requires conversation_id search, which syndication can't do.
profile still uses the paid API — there's no free way to list a user's recent posts.
When doing deep research (not just a quick command):
from:, has:links, -is:reply, url:github.com, etc.)thread <id>. Linked resources → web_fetch.--save flag or manual save to research path.Lanes live in config.json. Each lane has curated queries and noise filters.
bun run xray.ts lanes # Show all configured lanesLane presets available during setup: design, ai, dev, startup, creative, crypto, marketing, studio. You can also create custom lanes with your own search queries.
Edit config.json directly to add, modify, or remove lanes.
X API is pay-per-use: $0.005/tweet read, $0.010/user lookup. Every command shows its cost.
Cost-saving features:
batchProfiles() — groups user queries to minimize API callsxray/
├── SKILL.md # This file (agent instructions)
├── config.json # Your social graph + lanes (gitignored, personal)
├── config.template.json # Empty template for new users
├── xray.ts # CLI entry point
├── lib/
│ ├── api.ts # X API wrapper (recent + full-archive)
│ ├── cache.ts # File-based cache, configurable TTL
│ └── format.ts # Terminal + markdown formatters
├── data/
│ └── cache/ # Auto-managed
└── references/
└── x-api.md # X API endpoint reference~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.