npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

opencode-blackbox

v0.1.1

Published

Redacts implementation details in file reads so testing agents can run true blackbox checks without seeing your implementation.

Readme

opencode-blackbox

Redacts implementation details in file reads so testing agents can run true blackbox checks without seeing your implementation.

Blackbox redaction demo

Enable in OpenCode

{
  "$schema": "https://opencode.ai/config.json",
  "plugin": ["opencode-blackbox"]
}

Configure an agent

This plugin only redacts for agents that opt in via options.blackbox. You can also allowlist paths (for example, test fixtures) with options.blackboxAllow.

{
  "$schema": "https://opencode.ai/config.json",
  "agent": {
    "test-builder": {
      "description": "Builds and runs tests with redaction",
      "model": "anthropic/claude-sonnet-4-5",
      "options": {
        "blackbox": true,
        "blackboxAllow": ["**/tests/**", "**/*.test.{ts,tsx}"],
      },
    },
  },
}

Use

  • In the TUI, select the agent with Tab or type @test-builder in a message.
  • In the CLI, run opencode run --agent test-builder "Run the test suite".

Notes:

  • Only read output is redacted; files written in the same session are never redacted.
  • Line counts are preserved and only implementation bodies/initializers are hidden.
  • You can customize reminder copy with options.blackboxReminders; reminders appear in the model-facing prompt alongside redacted output.
{
  "agent": {
    "test-builder": {
      "options": {
        "blackbox": true,
        "blackboxReminders": {
          "inline": "<system-reminder>\nImplementation redacted.\n</system-reminder>",
          "attachment": "<system-reminder>\nSome attachments were redacted.\n</system-reminder>",
        },
      },
    },
  },
}

Example redaction

// before
export function add(a: number, b: number): number {
  const value = helperSecret()
  return a + b + value + hiddenValue
}

function helperSecret(value: number) {
  return value * 2
}

const hiddenValue = 42
// after
export function add(a: number, b: number): number {
  // implementation hidden
}

// implementation hidden

// implementation hidden

Agent file alternative

You can define the same agent in a file under .opencode/agents/:

---
description: Builds and runs tests with redaction
model: anthropic/claude-sonnet-4-5
options:
  blackbox: true
  blackboxAllow:
    - '**/tests/**'
    - '**/*.test.{ts,tsx}'
---

You build tests using only public interfaces.
You observe behavior by running tests and report mismatches.
It is fine to create failing tests to flag unclear behavior.
If tests fail, suggest renames, doc updates, or fixes.

The filename becomes the agent name (e.g. test-builder.md).