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

@joarhal/thred

v0.2.1

Published

Codex-only autonomous plan execution CLI

Readme

thred

CI npm version License: MIT

thred is a Codex-driven CLI that turns free-form requirements into executable plans, runs them task-by-task, and enforces review gates before completion.

Why thred

  • Turns plain-language requirements into a strict markdown plan.
  • Executes tasks incrementally with progress and artifacts.
  • Runs multi-agent review/fix loops with severity gates.
  • Persists run state and review reports in .thred/artifacts/runs.
  • Keeps lightweight project memory between runs.

Requirements

  • Node.js >=20
  • codex CLI available in PATH and already authenticated
  • git (recommended; optional with --no-git)

Quick Start

Run directly from npm:

npx @joarhal/thred --help

Start interactive planning + execution in current repo:

npx @joarhal/thred

Create and run from inline requirement:

npx @joarhal/thred "implement onboarding with email auth"

Run non-interactive:

npx @joarhal/thred "implement onboarding with email auth" --non-interactive

Core Commands

thred [input]

Create a new plan from free-form input and execute it.

input can be:

  • path to a requirement file (for example CONCEPT.md)
  • inline text

thred new [input]

Explicit alias of the default “create + execute” flow.

thred setup

Initializes .thred/settings.yaml and default review pipeline in create-if-absent mode.

Important behavior:

  • Existing settings are preserved.
  • Existing reviewPipeline is not overwritten.

Common Options

  • --model <id>: override model for this run
  • --reasoning-effort <level>: low | medium | high | xhigh
  • --sandbox <mode>: read-only | workspace-write | danger-full-access
  • --non-interactive: skip interactive planning dialog
  • --no-git: run fully local without git operations
  • --wait-on-limit <duration>: max wait on model rate limits (default 30m)
  • --verbose: detailed tool/progress output
  • --no-color: disable colored output

First Run and Settings

On first run, thred creates .thred/settings.yaml if absent.

Typical file shape:

model: inherit
reasoningEffort: high
reviewPipeline:
  version: 1
  passes:
    baseline_scan:
      kind: scan
      severities: [critical, high, medium, low]
      agents: [implementation, quality, testing, simplification, documentation]
    stabilize:
      kind: fix_loop
      severities: [critical, high, medium, low]
      agents: [implementation, quality, testing, simplification]
      maxIterations: 4
      patience: 2
    final_gate:
      kind: scan
      severities: [critical, high, medium, low]
      agents: [implementation, quality, testing, simplification, documentation]

What Gets Written

During execution, thred writes run artifacts to:

  • .thred/artifacts/runs/<run-id>.log
  • .thred/artifacts/runs/<run-id>.events.jsonl
  • .thred/artifacts/runs/<run-id>.json
  • .thred/artifacts/runs/<run-id>.review.json

Generated plans are saved in docs/plans/ and moved to docs/plans/completed/ on successful completion.

Exit Gates

A standard run is expected to pass:

  1. npm run lint
  2. npm test
  3. npm run test:coverage
  4. npm run build

Review gate blocks unresolved critical/high findings.

Troubleshooting

codex: command not found

Install Codex CLI and ensure it is available in PATH.

Rate-limit waits look like hangs

thred may wait on provider rate limits. Tune with --wait-on-limit.

Existing settings.yaml did not change after setup

setup is create-if-absent for reviewPipeline. Remove or edit reviewPipeline manually if you want a different template.

Want local-only execution without git commits/branches

Use --no-git.

Development

npm ci
npm run lint
npm test
npm run test:coverage
npm run build

Contributing

See CONTRIBUTING.md.

License

MIT, see LICENSE.