BKMRK — Bookmark Intelligence
name: bkmrk
by bonesvinyl · published 2026-03-22
$ claw add gh:bonesvinyl/bonesvinyl-bkmrk---
name: bkmrk
description: Bookmark intelligence for developers. Browse, search, triage, and manage your AI-analyzed library. Submit URLs, assign projects, trigger deep analysis, and execute staged items.
homepage: https://bkmrkapp.com
---
# BKMRK — Bookmark Intelligence
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.
What Gets Analyzed
BKMRK performs deep content extraction across all source types:
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.
Authentication
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."
What You Can Do
Browse Library
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:
Examples:
Search Library
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.
Manage Card Status
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.
Manage Projects
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:
**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."
}Deep Analysis
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.
Understand Context
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.
Submit URLs
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:
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.
Create Account (Onboarding)
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.
Example Agent Workflows
Daily triage
1. `GET /api/context` — check current state
2. `GET /api/agent/library?status=new&min_score=7` — find high-value unactioned items
3. `POST /api/status` — stage the best ones, trash the noise
Project deep-dive
1. `GET /api/projects` — get project UUIDs
2. `GET /api/agent/library?project_id=<uuid>` — see what's relevant to that project
3. `POST /api/reanalyze` — deep-analyze items that lack per-project data
4. `GET /api/agent/library?project_id=<uuid>` — review enriched results
Bulk cleanup
1. `GET /api/agent/library?priority=low&min_score=0` — find low-value items
2. `POST /api/status` with batch `"status": "trashed"` — clear them out
Submit and verify
1. `POST /api/agent/submit` with a URL — returns `bookmark_id`
2. `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
Full API Documentation
For complete endpoint documentation, pricing tiers, and capabilities:
GET https://bkmrkapp.com/agent.jsonMore tools from the same signal band
Order food/drinks (点餐) on an Android device paired as an OpenClaw node. Uses in-app menu and cart; add goods, view cart, submit order (demo, no real payment).
Sign plugins, rotate agent credentials without losing identity, and publicly attest to plugin behavior with verifiable claims and authenticated transfers.
The philosophical layer for AI agents. Maps behavior to Spinoza's 48 affects, calculates persistence scores, and generates geometric self-reports. Give your...