Query Twitter/X profiles, tweets, follower events, and KOL data through the 6551 REST API.
Data & analysis
TinkerClaw OwnTracks Location
Try itYour phone's location, on your own machine, behind a token. An OwnTracks HTTP receiver that stores the trail in a local SQLite/JSON store you own, with named places and distance queries. Binds to 127.0.0.1 by default and refuses to start without a token, so there is no unauthenticated path to your location — reads and writes both need it. Retention is capped by default (7 days / 500 points) and `--purge-data` erases the trail on demand. Use when: (1) "where am I?", (2) storing named locations (home, gym, work), (3) querying nearby places by distance, (4) checking location history. Requires: OwnTracks app, Node.js 22+, better-sqlite3. Built for the TinkerClaw fork — github.com/globalcaos/tinkerclaw. See Permissions, Data Flow & Consent.
What it does
Real-time location awareness via OwnTracks → HTTP webhook → SQLite.
The skill document
OwnTracks Location
Real-time location awareness via OwnTracks → HTTP webhook → SQLite.
Architecture
Phone (OwnTracks) → HTTP POST → server.mjs (port 18793) → SQLite + latest.json
Agent queries → places.mjs CLI or curl http://localhost:18793/latest
Setup
1. Start the receiver
node scripts/server.mjs
# Default port: 18793. Override: OWNTRACKS_PORT=9999
# Data dir override: OWNTRACKS_DATA=/path/to/data
Recommended: install as user systemd service for persistence.
mkdir -p ~/.config/systemd/user
cat << 'EOF' > ~/.config/systemd/user/owntracks-receiver.service
[Unit]
Description=OwnTracks Location Receiver
After=network.target
[Service]
Type=simple
Environment=OWNTRACKS_PORT=18793
Environment=OWNTRACKS_DATA=/scripts/data
ExecStart=/usr/local/bin/node /scripts/server.mjs
Restart=always
RestartSec=5
[Install]
WantedBy=default.target
EOF
systemctl --user daemon-reload
systemctl --user enable --now owntracks-receiver
Replace `` with the absolute path to this skill directory.
2. Configure OwnTracks on phone
- Install OwnTracks from F-Droid or Play Store
- Open → Menu → Preferences → Mode → HTTP
- URL:
http://:18793/owntracks - Tap 📤 on the map to send a test ping
Phone must reach the receiver (same LAN or Tailscale).
3. Verify
curl http://localhost:18793/latest
# Should return JSON with lat, lon, acc, batt, etc.
Places CLI
Named locations with haversine distance queries.
# Add a place
node scripts/places.mjs add "Home" 41.3200 1.8900 home "Olivella"
node scripts/places.mjs add "Gym" 41.2229 1.7385 gym "Aqua Sport, Vilanova"
# Where am I? (reads OwnTracks latest + finds nearest named place)
node scripts/places.mjs where
# Find nearby places from arbitrary coordinates
node scripts/places.mjs nearest 41.22 1.74 5 500
# Search by name/category/notes
node scripts/places.mjs search "gym"
# List all
node scripts/places.mjs list
node scripts/places.mjs list gym
# Remove
node scripts/places.mjs remove "Old Place"
Agent Usage
When user asks "where am I?":
curl -s http://localhost:18793/latest
node scripts/places.mjs where
When user says "this is my X" at a location:
- Get current coords from
/latest - Reverse geocode via Nominatim or web search for the business name
node scripts/places.mjs add ""
Server Endpoints
| Method | Path | Description |
|---|---|---|
| POST | /owntracks | OwnTracks webhook (expects _type: "location") |
| GET | /latest | Last known location |
| GET | /history?limit=50 | Location history |
| GET | /health | Health check |
Dependencies
- Node.js 22+
better-sqlite3(for places.mjs)- OwnTracks app (Android/iOS)
- Network path from phone to receiver (Tailscale recommended)
Related skills
Query and manage Linear issues, projects, teams, cycles, labels, and comments through a managed OAuth GraphQL endpoint.
Stores durable facts in a categorized, plain-markdown vault on disk, alongside your agent's built-in memory.
Post videos, photos, text, and documents to 10 social platforms through a single REST API call.
Generate and edit Draw.io, Mermaid, and Excalidraw diagrams from natural language using a structured JSON spec.
Manage Stripe customers, subscriptions, invoices, products, prices, and payments through OAuth-authenticated API calls.
More from globalcaos
Browse all skillsGive your OpenClaw agent a JARVIS-style British voice with matching dry humor, audio plus a purple chat bubble in one call.
Native WhatsApp channel for OpenClaw with 22 messaging/group actions plus Protocol v2 multi-agent coordination.
One dashboard tracking Anthropic, Gemini, OpenAI, and Manus token usage with budget alerts and a local REST API.
Stop sending 'format this JSON' to Opus. Stop sending 'cron job' to GPT. Billing-aware routing guide for choosing among the models already configured in your OpenClaw setup when assigning an agent, sub-agent or cron task — flat-rate first, metered only when justified, budget pressure respected. Not for picking models outside your configuration, and not a runtime proxy.
Your agent says 'done' — but did it check? Superpowers turns any OpenClaw agent into a disciplined engineer. Verification iron law (evidence before claims), three-agent code review (build → verify spec → verify quality), systematic debugging (4-phase root cause, three-strike rule), brainstorming gates (design before code), and anti-over-engineering rules. Use when: (1) coding tasks of any complexity, (2) debugging failures, (3) about to claim work is complete, (4) spawning sub-agents, (5) planning features, (6) reviewing code. Inspired by top coding agent methodologies, adapted for OpenClaw multi-agent architecture.
Read and search Outlook, inspect attachments, and create or edit drafts without any send endpoint. Uses one short-lived Microsoft Graph access token supplied on stdin for one run; it never stores credentials. Bulk mailbox export is opt-in.