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

@yanolja-next/noya-sdk

v0.1.8

Published

Production issue reports into pre-triaged tickets and local draft PR artifacts.

Downloads

61

Readme

Noya

Production issue reports into pre-triaged Jira tickets and ready-to-review PRs.

This repository contains a local Node.js + TypeScript MVP:

  • Browser SDK wrapper entry point: src/sdk.ts
  • Backend orchestrator and dashboard: src/server.ts, public/
  • Customer runner: src/runner.ts
  • Local issue and draft PR artifacts by default
  • Optional GitHub/Jira issue providers when explicitly configured with token environment variables
  • GitHub/Jira issues receive a fix-result comment after local draft PR creation
  • Project integration config rejects inline credentials; use *_env settings for token/secret references
  • Optional telemetry event lookup when a project has provider integration settings
  • Optional provider webhook HMAC verification via integrations.telemetry.webhook_secret_env
  • SDK session recording wiring with optional Replay/Feedback integration registration
  • Optional runner Bearer authentication via project runner.token_env
  • Approved fix command refs for local Claude Code/agent execution, with shell-free process spawning, isolated repo checkout, and local draft PR artifacts
  • Checkout status and patch artifacts are attached to local draft PR output when an approved agent changes files
  • Artifact serving is constrained to each project's artifact_dir
  • Optional dashboard/admin artifact protection via NOYA_ADMIN_TOKEN
  • Optional Next Hub OIDC login for dashboard/admin endpoints via NOYA_NEXTHUB_ISSUER and NOYA_NEXTHUB_CLIENT_ID
  • Project-level artifact retention cleanup via POST /api/projects/:project_key/retention/cleanup
  • Idempotent manual fix approval so repeated clicks do not create duplicate jobs
  • Audit entries for individual collector policy decisions and fix agent command execution
  • SDK network correlation for x-request-id, x-trace-id, and traceparent
  • SDK/provider screenshot URLs are preserved as issue evidence
  • Telemetry breadcrumbs are surfaced in compiled issue bodies
  • Runner lease timeout/requeue and collector max_entries / max_bytes limits
  • Server-side validation for collect/fix runner completion payloads
  • No-runner flow creates an immediate issue with unavailable internal context clearly marked
  • Dashboard links for local issue and draft PR artifacts
  • Dashboard readiness checks for artifact storage, runner repo, tokens, and issue providers
  • Dashboard project config editor with server-side validation
  • Project edits preserve immutable created_at metadata
  • agency-platform customer sample: examples/agency-platform/

The local implementation intentionally does not deploy, push, merge, or write to production systems. The PR flow creates a local draft PR artifact for review. External issue providers are opt-in and are covered by mock-server tests.

Run Locally

npm install
npm run build
npm start

Open http://localhost:3456.

To simulate the customer runner once:

npm run runner -- examples/agency-platform/noya.runner.json

If the project is configured with runner.token_env, export the same token before running the runner:

export NOYA_AGENCY_PLATFORM_RUNNER_TOKEN=local-runner-token

To protect dashboard, local artifact, project config, retention cleanup, and fix approval endpoints in a shared local environment without Next Hub:

export NOYA_ADMIN_TOKEN=local-admin-token

The dashboard sends this token from localStorage.noya_admin_token when set. This is an operator fallback, not something service users should create or handle.

For browser login through Next Hub, register Noya as a confidential OIDC client in Next Hub and set:

export NOYA_NEXTHUB_ISSUER=https://auth.hub.ynext.cloud
export NOYA_NEXTHUB_CLIENT_ID=noya
export NOYA_NEXTHUB_CLIENT_SECRET=client-secret-from-next-hub
export NOYA_NEXTHUB_REDIRECT_URI=https://<noya-host>/auth/callback

Set NOYA_NEXTHUB_REDIRECT_URI to the exact URI registered in Next Hub. No admin token is required for this setup. NOYA_ADMIN_TOKEN can stay enabled only as an operator/API break-glass fallback; authenticated Next Hub sessions use an HttpOnly noya_session cookie. Public PKCE clients are supported, but the recommended production setup matches AMUX: confidential client plus PKCE. If you choose a public PKCE client, also set NOYA_AUTH_COOKIE_SECRET.

If the Next Hub discovery endpoint is not public, set the OIDC endpoints explicitly:

export NOYA_NEXTHUB_AUTHORIZATION_ENDPOINT=https://auth.hub.ynext.cloud/oauth/authorize
export NOYA_NEXTHUB_TOKEN_ENDPOINT=https://auth.hub.ynext.cloud/oauth/token
export NOYA_NEXTHUB_USERINFO_ENDPOINT=https://auth.hub.ynext.cloud/oauth/userinfo
export NOYA_NEXTHUB_JWKS_URI=https://auth.hub.ynext.cloud/.well-known/jwks.json

Verify

npm test
npm run test:e2e

npm run test:e2e starts the orchestrator, submits an agency-platform sample report, runs collect mode, approves a local fix from the dashboard in headless Chrome, runs fix mode, and verifies that a local draft PR artifact was created. It also verifies telemetry webhook intake, collector policy denial for raw command collectors, telemetry event lookup, GitHub/Jira providers against local mock servers, approved fix command execution, runner heartbeat/fail lifecycle, and runner Bearer authentication. npm test also verifies provider webhook signature checks, stale runner lease requeue, collector output limits, duplicate issue linking, idempotent fix approval, collector/agent audit entries, browser-visible artifact links, readiness checks, SDK request correlation, project config validation, context redaction, and recording tag/context wiring. It also checks artifact retention cleanup and artifact path boundary enforcement. Optional admin-token protection is covered by API tests.