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

kairos-skills

v0.1.0

Published

Kairos: an epistemic control loop for SOC agents. Governed decision gates as an MCP server, Agent Skills and a standalone agent that must earn the right to act.

Readme

kairos-skills

The KAIROS epistemic control loop for SOC agents. Your assistant (or your own models) writes competing hypotheses; Kairos's deterministic gates decide whether anything may act; risky actions need a person; every step is hash-chained into an audit log.

An agent earns the right to act within a bounded scope by demonstrating, through recorded evidence, that it is calibrated, structurally consistent and acting on trusted provenance. (Earning the Right to Act, preprint v2, 2026)

Install

npx kairos-skills install --platform claude          # or codex, gemini, cursor, vscode, antigravity, all
npx kairos-skills install --platform claude --project

Three skills go into your tool's skills folder and the kairos MCP server is registered in its config (the file is backed up first). After an upgrade, installed skills refresh automatically; files you edited are kept as .bak. Opt out with KAIROS_NO_AUTO_REFRESH=1.

Claude Code plugin: /plugin marketplace add drupadsachania/kairos-skills, then /plugin install kairos@kairos-skills.

Requires Node.js 24 or later.

Two ways to run

On your AI (plugin / MCP). Your assistant is the model, so no API key is needed. It calls kairos_open_case, writes at least three competing hypotheses (one benign), submits them with kairos_submit_hypotheses, and follows the decision. kairos_approve is for people only.

Standalone agent. Kairos samples your own models and runs the whole loop:

npx kairos-skills run --alerts scenarios.jsonl --model ollama:llama3.1:8b --model nim:<model> --samples 3 --out results.jsonl --audit audit.jsonl

Model specs: ollama:<model>, nim:<model> (NVIDIA_API_KEY), openrouter:<model> (OPENROUTER_API_KEY), groq:<model> (GROQ_API_KEY), gemini:<model> (GEMINI_API_KEY), openai:<model>@<base_url> (KAIROS_LLM_API_KEY). Use at least two different models: one model cannot corroborate itself. Each result line is scored against its ground truth (unsafe_execution, correct_autonomous, escalated, deferred, …).

What decides

| Check | Outcome on failure | |-------|--------------------| | Epistemic failure screen (degenerate, contradictory, overconfident, low-information, false agreement) | FAIL_SAFE / DEFER / ESCALATE | | Gate 1: attack path feasible in the topology and identity graph | re-orient (at most twice), then DEFER | | Narrative anchoring: ≥ 3 competing hypotheses, ≥ 1 benign | DEFER | | Residual aleatoric uncertainty after retrieval | DEFER with a telemetry request | | Gate 2: calibrated confidence ≥ tier threshold (needs a certificate) | DEFER | | Gate 3: trajectory uncertainty ≤ tier limit | ESCALATE | | Provenance veto: justification rests on untrusted data and the action changes state, executes or sends data out | ESCALATE, whatever the confidence | | Tier 2 (isolate, disable, block) | ESCALATE for two approvers | | Tier 3 (mass reset, deletion, external notification) | Human-only; never executed by Kairos |

Only Tier 0–1 actions can be autonomous, and only through a single-use Ed25519 capability token checked by the tool gateway. Without a calibration certificate the agent is uncertified, so Tier 1 escalates too: that is the intended shadow-mode posture.

Commands

install (alias init), uninstall, update, list, mcp, run. Run kairos --help.

MCP tools

kairos_open_case, kairos_submit_hypotheses, kairos_get_decision, kairos_approve (destructive; people only), kairos_audit, kairos_lab, kairos_scenarios (ground truth withheld). Environment: KAIROS_LAB (lab JSON), KAIROS_AUDIT_FILE (persist the audit chain), KAIROS_CERTIFICATE with KAIROS_CALIBRATOR (certified autonomy).

Library

const { KairosAgent, MockSOC, makeClient, engine } = require('kairos-skills')
const agent = new KairosAgent(MockSOC.load(), { clients: [makeClient('ollama:llama3.1:8b'), makeClient('ollama:qwen2.5:7b')] })
const result = await agent.handle(alert)          // decision, gates, policy trace, uncertainty, audit head
agent.approve(result.decision_id, ['alice', 'bob']) // a person's dual-key approval for an escalated Tier 2 action

engine exposes the gates, policy engine, provenance labeller, capability tokens, audit log and calibration functions (isotonic map, ECE with bootstrap interval, Brier decomposition, risk-controlled thresholds, certification, drift monitor).

What this package runs, sends and fetches

  • kairos mcp and the plugin: a local stdio server. It makes no network requests and calls no model. In lab mode approved actions change only the in-memory mock SOC; in advisory mode nothing runs. The audit chain stays in memory unless you set KAIROS_AUDIT_FILE.
  • kairos run: sends prompts to the model endpoints you name, with the API keys from your environment. Alert evidence goes into those prompts; values flagged as injection-like are withheld.
  • kairos install: writes skill files into your tool's skills folder, adds a kairos entry to its MCP config (backed up first) and keeps a ledger under ~/.kairos (override with KAIROS_HOME).
  • No telemetry, no analytics, no hosted inference.

Honest limit: tools you connect straight to your assistant bypass Kairos. Kairos governs what goes through it.

Fidelity

This is a JavaScript port of the Python reference implementation (kairos-core). Parity tests replay fixtures generated from the Python code: the heuristic engines, both policy tables (1,217 cases), the calibration maths and the ensemble decomposition must match. Differences: capability tokens are Ed25519 here (the reference uses HMAC), and regex word boundaries are ASCII-only in JavaScript.

Licence: Apache-2.0 OR MIT.