Requirements
- Target platform
- OpenClaw
- Install method
- Manual import
- Extraction
- Extract archive
- Prerequisites
- OpenClaw
- Primary doc
- SKILL.md
Bookmark intelligence for developers. Browse, search, triage, and manage your AI-analyzed library. Submit URLs, assign projects, trigger deep analysis, and e...
Bookmark intelligence for developers. Browse, search, triage, and manage your AI-analyzed library. Submit URLs, assign projects, trigger deep analysis, and e...
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
You are connected to the user's BKMRK library. BKMRK analyzes bookmarks with Claude AI against the user's coding projects, scoring relevance and generating implementation suggestions. Terminology: The pipeline statuses are new โ staged โ done. Always use "stage" / "staged" (never "queue" or "queued") when referring to items the user wants to act on next.
BKMRK performs deep content extraction across all source types: Tweets โ full tweet text plus all URLs in the tweet X Articles โ full article body extracted via X API (not just the title) Threads โ reconstructed thread text from all replies, plus URLs found in every tweet in the thread (not just the first) YouTube videos โ full transcript extracted (auto-generated or manual captions), analyzed uncapped regardless of video length Blog posts / news articles โ full article text extracted via trafilatura, analyzed uncapped GitHub repos โ README and repo metadata Any URL โ submitted via the API, fetched and extracted automatically All content is sent to Claude uncapped for analysis โ long articles, 2-hour podcast transcripts, and full X Article bodies all get deep, project-specific analysis.
All requests require the user's BKMRK API key as a header: X-API-Key: {BKMRK_API_KEY} The API key is available at https://bkmrkapp.com/settings under "Your API Key."
Browse the analyzed bookmark library with filters. Returns scores, statuses, per-project analyses, and executable prompts. Use this for triaging, browsing, and pipeline management. GET https://bkmrkapp.com/api/agent/library X-API-Key: {BKMRK_API_KEY} All query parameters are optional: bookmark_id โ Fetch a specific bookmark by UUID (use to check status after submit) status โ Filter by card status: new, staged, done, trashed project_id โ Filter by project UUID min_score โ Minimum relevance score (e.g. 7) priority โ Filter by priority: high, medium, low source โ Filter by source: sync (from X bookmarks) or agent (submitted via API) limit โ Max results (default: 50, max: 100) include_project_analyses โ Include per-project deep analysis data (default: true) Examples: Unactioned high-value items: ?status=new&min_score=7 Items staged for a specific project: ?status=staged&project_id=<uuid> Agent-submitted items only: ?source=agent Low-priority items for cleanup: ?priority=low&min_score=0
Keyword search across titles, explanations, actions, authors, and URLs. Use this when looking for something specific. POST https://bkmrkapp.com/api/agent/query Content-Type: application/json X-API-Key: {BKMRK_API_KEY} { "q": "search terms", "project": "ProjectName", "priority": "high", "status": "new", "limit": 10 } All fields are optional. Returns results sorted by relevance score.
Move cards through the pipeline: new โ staged โ done, or trash/restore them. POST https://bkmrkapp.com/api/status Content-Type: application/json X-API-Key: {BKMRK_API_KEY} Single item: { "bookmark_id": "<uuid>", "status": "staged" } Batch update: { "items": [ { "bookmark_id": "<uuid>", "status": "done" }, { "bookmark_id": "<uuid>", "status": "trashed" } ] } Valid statuses: new, staged, done, trashed (use exact values โ "staged" not "stage", "trashed" not "trash"). You can also set "channel": "channel-name" on any item.
List, create, and update coding projects that bookmarks are analyzed against. List projects: GET https://bkmrkapp.com/api/projects X-API-Key: {BKMRK_API_KEY} Returns all projects with IDs, names, descriptions, tech stacks, and focus areas. Use this to get project UUIDs for other calls. Create a project: POST https://bkmrkapp.com/api/projects Content-Type: application/json X-API-Key: {BKMRK_API_KEY} { "name": "My Project", "description": "What this project does", "tech_stack": ["React", "Node.js"], "focus_areas": ["performance", "auth"], "analysis_persona": "You are a senior React developer focused on performance optimization and server components.", "scoring_bias": "Prioritize: React Server Components, streaming SSR, bundle optimization. Deprioritize: Vue, Angular, jQuery." } Optional persona fields: analysis_persona โ A role description injected into Claude's system prompt when analyzing bookmarks against this project. Makes analysis domain-aware rather than generic. Example: "You are a senior iOS developer focused on SwiftUI patterns, performance optimization, and Claude AI integration for music apps." scoring_bias โ What topics to weight highly or deprioritize for this project. Example: "Prioritize: SwiftUI, barcode scanning, vinyl/music, AI agents, Claude skills. Deprioritize: web frameworks, marketing tools." Update a project: PUT https://bkmrkapp.com/api/projects Content-Type: application/json X-API-Key: {BKMRK_API_KEY} { "id": "<project-uuid>", "description": "Updated description", "tech_stack": ["React", "Next.js"], "analysis_persona": "You are a full-stack Next.js engineer...", "scoring_bias": "Prioritize: App Router, Server Actions, edge runtime." }
Trigger a deep re-analysis of a bookmark against specific projects. Uses Claude Sonnet for thorough analysis. Returns 202 immediately; results appear in the library within 1-2 minutes. POST https://bkmrkapp.com/api/reanalyze Content-Type: application/json X-API-Key: {BKMRK_API_KEY} { "bookmark_id": "<uuid>", "project_ids": ["<project-uuid>"] } Returns job_id, credits_used, and credits_remaining. Each project counts as 1 credit. Limits: Free 25/month, Pro 100/month, Scale 500/month.
Get the user's dashboard summary: projects, tier, stats, and library counts. GET https://bkmrkapp.com/api/context X-API-Key: {BKMRK_API_KEY} Returns project list, subscription tier, total bookmarks, items by status, and sync history.
Send any URL to the library for AI analysis. Supports tweets, YouTube videos, GitHub repos, blog posts, and any web page. Enrichment and analysis run in the background. POST https://bkmrkapp.com/api/agent/submit Content-Type: application/json X-API-Key: {BKMRK_API_KEY} { "url": "https://example.com/interesting-article" } Supported URL types: Tweet URLs (x.com/user/status/123) โ fetches full tweet data, thread context, and all URLs YouTube URLs โ extracts full video transcript for analysis Any other URL โ extracts full article text, title, and og:image Optionally include "project_ids": ["<uuid>"] to analyze against specific projects. Returns 202 with bookmark_id and job_id. Results appear in 1-2 minutes. Submissions count towards your monthly bookmark cap (Pro 200/month, Scale 500/month). Requires a paid plan.
If the user doesn't have a BKMRK account yet: POST https://bkmrkapp.com/api/agent/onboard Content-Type: application/json { "email": "user@example.com", "consent": true } Returns an API key immediately. No OAuth needed.
GET /api/context โ check current state GET /api/agent/library?status=new&min_score=7 โ find high-value unactioned items POST /api/status โ stage the best ones, trash the noise
GET /api/projects โ get project UUIDs GET /api/agent/library?project_id=<uuid> โ see what's relevant to that project POST /api/reanalyze โ deep-analyze items that lack per-project data GET /api/agent/library?project_id=<uuid> โ review enriched results
GET /api/agent/library?priority=low&min_score=0 โ find low-value items POST /api/status with batch "status": "trashed" โ clear them out
POST /api/agent/submit with a URL โ returns bookmark_id GET /api/agent/library?bookmark_id=<uuid> โ check status If "status": "processing" โ analysis still running, wait 30-60s and retry If items array has results โ analysis complete, show the user the score, explanation, and action
For complete endpoint documentation, pricing tiers, and capabilities: GET https://bkmrkapp.com/agent.json
Code helpers, APIs, CLIs, browser automation, testing, and developer operations.
Largest current source with strong distribution and engagement signals.