| name | influencer-db |
| description | SQLite database for Israeli Tech Nano-Influencers with direct sqlite3 command-line access. Execute any SQL query or inspect schema. Simple and agent-friendly. |
Israeli Tech Nano-Influencers Database
A SQLite database with direct sqlite3 command-line access for managing Israeli tech nano-influencer data. Pure SQL with no abstractions.
Features
- Direct sqlite3 Access: Execute any SQL query using the sqlite3 CLI
- Schema Inspection: View database schema and table structures
- Flexible: Craft any query you need with full SQL power
- Version Controlled: Database file is tracked in git for easy collaboration
Database Schema
Tables
influencers - Single table for all influencers (active and excluded)
Profile & Identity:
twitter_handle(TEXT PRIMARY KEY) - Twitter/X usernamename(TEXT NOT NULL) - Full namerole(TEXT) - Professional role/titlefocus(TEXT) - Areas of expertise or interestbackground(TEXT) - Professional backgroundprofile_url(TEXT) - Link to Twitter/X profile
Engagement & Activity:
recent_activity(TEXT) - Description of recent posts/activityengagement_potential(TEXT) - Assessment of engagement value (HIGH/MEDIUM/LOW)last_tweet_date(TEXT) - Date of most recent tweetlast_reply_date(TEXT) - Date of most recent reply
Location & Language:
location(TEXT) - Geographic locationlanguage(TEXT) - Languages used in contenthebrew_writer(BOOLEAN) - Whether they write in Hebrew (0/1)
X API Metrics (matching UserInfoResponse model):
followers(INTEGER) - Number of followersfollowing(INTEGER) - Number of accounts they followstatuses_count(INTEGER) - Total number of tweets/statusesmedia_count(INTEGER) - Total media items posted
Discovery & Tracking:
discovery_path(TEXT) - How the influencer was discovered/found (e.g., web search query, xai-grok search, website URL, referral path, Twitter list, recommendation from another influencer, etc.)rationale(TEXT) - Why this influencer was added to the database (e.g., specific expertise, notable projects, unique perspective, community influence, content quality, etc.)added_date(TEXT NOT NULL) - Date added to database (ISO 8601 format)last_verified_date(TEXT) - Date profile was last verified (ISO 8601 format)
Exclusion Management:
excluded(BOOLEAN DEFAULT 0) - Whether excluded from active list (0=active, 1=excluded)excluded_date(TEXT) - Date of exclusion (ISO 8601 format, nullable)exclusion_reason(TEXT) - Reason for exclusion (nullable)
Metadata:
notes(TEXT) - Additional notes or observationscreated_at(TIMESTAMP DEFAULT CURRENT_TIMESTAMP) - Record creation timestampupdated_at(TIMESTAMP DEFAULT CURRENT_TIMESTAMP) - Last update timestamp (auto-updated)
Indexes:
idx_influencers_location- Fast queries by locationidx_influencers_hebrew_writer- Fast queries by languageidx_influencers_followers- Fast queries by follower countidx_influencers_excluded- Fast queries for active vs excluded
Using sqlite3
The database is accessed using the sqlite3 command-line tool (pre-installed on most systems).
Basic Usage
# Open database in interactive mode
sqlite3 influencers.db
# Execute a single query
sqlite3 influencers.db "SELECT * FROM influencers LIMIT 5"
# Get JSON output
sqlite3 influencers.db ".mode json" "SELECT * FROM influencers LIMIT 5"
Common sqlite3 Commands
Meta commands (start with .):
.tables # List all tables
.schema influencers # Show table schema
.mode json # Set output to JSON format
.mode column # Set output to column format
.headers on # Show column headers
.quit # Exit sqlite3
SQL Query Examples
SELECT Queries
# Get all influencers
sqlite3 influencers.db "SELECT * FROM influencers"
# Get specific influencer
sqlite3 influencers.db "SELECT * FROM influencers WHERE twitter_handle = 'oriSomething'"
# Get with JSON output
sqlite3 influencers.db -json "SELECT * FROM influencers WHERE location LIKE '%Tel Aviv%'"
# Count by location
sqlite3 influencers.db "SELECT location, COUNT(*) as count FROM influencers GROUP BY location"
INSERT Queries
# Add new influencer
sqlite3 influencers.db "INSERT INTO influencers (twitter_handle, name, location, followers, hebrew_writer, added_date, last_verified_date) VALUES ('test_user', 'Test User', 'Tel Aviv', 1500, 1, '2025-10-26', '2025-10-26')"
# Add with more fields
sqlite3 influencers.db "INSERT INTO influencers (twitter_handle, name, role, focus, location, language, followers, following, statuses_count, media_count, hebrew_writer, engagement_potential, discovery_path, added_date) VALUES ('example', 'Example User', 'Developer', 'AI/ML', 'Israel', 'Hebrew, English', 2000, 500, 1500, 300, 1, 'HIGH', 'web search: Israeli AI developers', '2025-10-26')"
UPDATE Queries
# Update follower count
sqlite3 influencers.db "UPDATE influencers SET followers = 2000 WHERE twitter_handle = 'test_user'"
# Update multiple X API metrics
sqlite3 influencers.db "UPDATE influencers SET followers = 2500, following = 600, statuses_count = 2000, media_count = 400 WHERE twitter_handle = 'test_user'"
DELETE Queries
# Delete specific influencer
sqlite3 influencers.db "DELETE FROM influencers WHERE twitter_handle = 'test_user'"
Architecture
.claude/skills/influencer-db/
├── SKILL.md # This documentation
└── src/
└── schema.sql # Database schema (for reference)
influencers.db # SQLite database (version controlled in git)
Tips for Agents
- Use JSON output: Add
-jsonflag for JSON output:sqlite3 influencers.db -json "SELECT ..." - Use transactions: For multiple operations, wrap in transaction (BEGIN/COMMIT)
- Check constraints: twitter_handle is PRIMARY KEY - handle conflicts gracefully
- Use indexes: location, followers, hebrew_writer, and excluded are indexed for fast queries
- Track discovery: Always populate
discovery_path(how found) andrationale(why added) when adding new influencers to track sourcing and decision-making