SuperAPI AI Directory

bestblogs-read

Writing & research

View repository

Updated 10-15 21:52

About this skill

bestblogs-read — Resource Deep Reading (Local)

When to use

  • The user wants a local LLM / reading UI to consume the body of a piece of BestBlogs content.
  • The user wants to see the metadata of a resource + the full-text Markdown.
  • The user wants to send back the "read" behavior while reading, so that BestBlogs' personalization flywheel can keep up.

Primitives

Primitive CLI Description
bestblogs.resource.meta.get Internal call /resources/{id}/meta meta
bestblogs.resource.markdown.get Internal call /resources/{id}/markdown Body markdown
bestblogs.resource.read.mark Internal call POST /resources/{id}/read Send back read
bestblogs.resource.deep_read.prepare bestblogs read deep <id> Complete meta + markdown + mark read in one go

Only expose deep_read.prepare as the main primitive—it is a wrap of the CLI bestblogs read deep , pulling meta+markdown in parallel and marking read serially.

Actions

Full deep read (default, includes mark read)

bestblogs read deep RAW_xxx --json

Returns:

{
  "success": true,
  "data": {
    "meta": {
      "resourceId": "RAW_xxx",
      "title": "...",
      "url": "...",
      "resourceType": "ARTICLE",
      "language": "en_US",
      "score": 88,
      "sourceName": "..."
    },
    "markdown": "# Title\n\n...",
    "readMarked": true,
    "markError": null
  }
}

Only the body Markdown (feed to a local LLM)

bestblogs read deep RAW_xxx --markdown-only

Outputs pure Markdown (stdout), suitable for pipelines such as | anthropic / | llm .

Do not send back the read behavior (e.g., just previewing)

bestblogs read deep RAW_xxx --no-mark-read --json

Error handling

  • 404 / NOT_FOUND → resource does not exist or has been taken down; tell the user
  • The resource is a private source (sourceVisibility=PRIVATE) and the current user is not subscribed → meta may return null; prompt the user to subscribe to the corresponding source
  • When mark read fails, the CLI returns readMarked=false, markError="..." instead of failing entirely; the skill should keep the body for the user and inform them "read send-back failed, does not affect reading"

Combination suggestions

  • Common chains:bestblogs-discover today → pick one from candidates[] → bestblogs-read deep <id> --json → feed markdown to a local LLM for summarization/questioning → bestblogs-capture to take notes and save
  • Do not send back repeatedly: by default it will mark read, unless the user explicitly is only previewing before deciding whether to read