
Security News
The Hidden Blast Radius of the Axios Compromise
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.
@codeboratory/bunpq
Advanced tools
SQLite-powered batch processing for AI completions.
import { AnthropicBatcher, AnthropicModel, TextPrompt } from "bunpq";
import { Database } from "bun:sqlite";
import Anthropic from "@anthropic-ai/sdk";
const database = new Database("ai.sqlite");
const client = new Anthropic({ apiKey: process.env.ANTHROPIC_API_KEY });
const model = new AnthropicModel("claude-3-haiku", { max_tokens: 1000 });
const prompt = new TextPrompt("system", { text: "Be helpful.", cache: true });
const batcher = new AnthropicBatcher({ database, client, model, prompt });
// Create a batch
const batch_id = await batcher.create([
{ id: "msg1", content: "Write a haiku" },
{ id: "msg2", content: "Write a limerick" }
]);
// Read results (anytime within 24h)
await batcher.read(
batch_id,
async (id, text) => console.log(`✅ ${id}:`, text),
async (id, error) => console.log(`❌ ${id}:`, error)
);
create and read methods// Daily batch cycle example
// Morning: Create today's batch
const todaysBatch = await batcher.create(generatePrompts());
// Evening: Process yesterday's results
await batcher.read(
yesterdaysBatchId,
async (id, text) => await saveToYourDb(id, text),
async (id, error) => await logErrorYourWay(id, error)
);
// Even single messages work great
const single_batch = await batcher.create([
{ id: crypto.randomUUID(), content: "Take your time with this one" }
]);
"Bring your own batteries" - We handle the batch plumbing, you decide what to do with the results.
Your AI completions deserve better than direct API calls - but they don't need a complicated solution either.
FAQs
Unknown package
We found that @codeboratory/bunpq demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
The Axios compromise shows how time-dependent dependency resolution makes exposure harder to detect and contain.

Research
A supply chain attack on Axios introduced a malicious dependency, plain-crypto-js@4.2.1, published minutes earlier and absent from the project’s GitHub releases.

Research
Malicious versions of the Telnyx Python SDK on PyPI delivered credential-stealing malware via a multi-stage supply chain attack.