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

@huddle-marketplace/skills

v0.2.0

Published

63-jurisdiction rental compliance skills for autonomous AI agents. OpenClaw, MCP, LangChain, and CrewAI compatible.

Readme

@huddle-marketplace/skills

63-jurisdiction rental compliance skills for autonomous AI agents.

Validates security deposits, rent payments, late fees, and deposit returns against real statutes across 50 US states, 13 Canadian provinces, and federal overlays. OpenClaw, MCP, LangChain, and CrewAI compatible.

npm install @huddle-marketplace/skills

Quick Start

import { validate, composeSkills, registry } from "@huddle-marketplace/skills";

// Single jurisdiction — wBTC bond in Texas
const result = await validate("US-TX", {
  type: "deposit-validation",
  depositAmountCents: 200000,   // $2,000 — always in CENTS
  monthlyRentCents: 200000,     // $2,000
  currency: "USDC",
  collateralType: "wbtc",
  instrumentType: "collateralized_lease_guarantee",
});

console.log(result.compliant);    // true
console.log(result.confidence);   // 0.9
console.log(result.citations);    // [{ statute: "Texas SB-38", section: "Section 3", ... }]

// Stacked validation — CFTC federal preemption + state rules
const composed = await composeSkills(["US-CFTC", "US-TX"], {
  type: "deposit-validation",
  depositAmountCents: 200000,
  monthlyRentCents: 200000,
  currency: "USDC",
  collateralType: "wbtc",
  instrumentType: "collateralized_lease_guarantee",
  wbtcUsdcRatio: 1.05,
  custodyType: "smart_contract",
  sentinelMonitoring: true,
  sentinelMode: "CO_PILOT",
  lastSentinelCheckMs: Date.now() - 60000,
  auditLogEnabled: true,
  lastDecisionReasoning: "LTV nominal",
});

console.log(composed.compliant);          // true
console.log(composed.layers.length);      // 2
console.log(composed.checks[0].name);     // "[US-CFTC] federal-preemption"
console.log(composed.citations.length);   // merged + deduplicated

API Reference

validate(jurisdiction, input)

Run a single jurisdiction's skill against the input.

const result = await validate("US-CA", input);
// result: SkillResult

composeSkills(jurisdictions, input, options?)

Stack multiple jurisdictions into one layered compliance proof. Layers run in parallel.

const result = await composeSkills(["US-CFTC", "US-IL"], input);
// result: ComposedResult — { compliant, confidence, layers[], checks[], citations[], remediation[] }

// Advisory mode: only US-CFTC determines overall compliance
const result = await composeSkills(["US-CFTC", "US-TX"], input, {
  mode: "advisory",
  criticalJurisdictions: ["US-CFTC"],
});

registry

Pre-loaded registry with all 64 jurisdictions.

registry.get("US-TX")               // HuddleSkill | undefined
registry.jurisdictions()            // JurisdictionCode[]
registry.isSupported("US-TX")       // boolean
registry.search(["deposit-validation"])  // HuddleSkill[]

explain(jurisdiction, result)

Human-readable explanation of a validation result.

const text = explain("US-TX", result);
// "This transaction PASSES Texas SB-38 & Property Code §92 compliance (confidence: 90%)..."

Jurisdictions

US States (50)

| Tier | States | Capabilities | |---|---|---| | Tier 1 — Full statute logic | TX, FL, CA, NY | deposit-validation, deposit-return, federal-preemption | | Tier 2 — Real rules | IL, WA, CO, MA, PA, OH, GA, NC, VA, MI | deposit-validation, payment-compliance, deposit-return, deposit-interest | | Tier 3 — Capped states | 26 states with statutory caps | deposit-validation, federal-preemption | | Tier 4 — No-cap states | Remaining states | deposit-validation, federal-preemption |

Canadian Provinces (13)

| Tier | Provinces | |---|---| | Full statute | BC, ON, QC (bilingual), NS | | Template | AB, MB, SK, NB, PE, NL, NT, YT, NU |

Federal Overlays

| Code | Coverage | |---|---| | US-CFTC | CFTC 9180-26: wBTC bond federal preemption, 1:1 reserve ratio, Sentinel monitoring, TRAIGA | | CA-QC | CCQ art. 1904 deposit prohibition, TAL jurisdiction, bilingual FR/EN citations |


Web3-Native Features

wBTC Bond Recognition

When collateralType: "wbtc" is set, skills recognize that HuddleDepositVaultV3's on-chain Golden Rule (wBTC value ≥ original principal, enforced by Solidity) structurally satisfies — and exceeds — statutory interest requirements:

// IL requires 5% annual interest on deposits
// wBTC bond → interest check returns confidence: 0.98 (higher than legacy 0.75)
const result = await validate("US-IL", {
  type: "deposit-validation",
  collateralType: "wbtc",  // ← Web3 path
  ...
});
// check "deposit-interest-requirement": passed: true, confidence: 0.98
// note: "SATISFIED: wBTC bond appreciation via HuddleDepositVaultV3 structurally exceeds..."

Composition Engine

Federal + state validation in one call:

const result = await composeSkills(["US-CFTC", "US-TX", "US-IL"], input);
// Runs all 3 in parallel, merges checks, deduplicates citations

Framework Adapters

MCP (Model Context Protocol)

import { getMCPToolDefinitions, handleMCPRequest } from "@huddle-marketplace/skills/mcp";

const tools = getMCPToolDefinitions();  // Ready for Claude Desktop
const response = await handleMCPRequest(mcpRequest, registry);

OpenClaw

import { toOpenClawSkill } from "@huddle-marketplace/skills/openclaw";

const openClawTool = toOpenClawSkill(usTxSkill);

LangChain

import { registry } from "@huddle-marketplace/skills/langchain";
// DynamicStructuredTool instances for every jurisdiction

TRAIGA Audit Logging

import { withTraiga, ConsoleTraigaAdapter } from "@huddle-marketplace/skills/traiga";

const auditedSkill = withTraiga(usTxSkill, new ConsoleTraigaAdapter());
// Every validation is logged with inputHash, outputHash, decision, confidence

Input Types

All monetary amounts are in cents (integer).

// Deposit validation
{ type: "deposit-validation", depositAmountCents, monthlyRentCents, currency, ... }

// Payment compliance
{ type: "payment-compliance", paymentAmountCents, monthlyRentCents, dueDate, paymentDate, ... }

// Rent increase
{ type: "rent-increase-validation", currentRentCents, proposedRentCents, noticeDateDays, ... }

// Deposit return
{ type: "deposit-return", originalDepositCents, proposedReturnCents, leaseEndDate, returnDate, ... }

// Homeownership readiness
{ type: "homeownership-readiness", annualIncomeCents, monthlyDebtCents, creditScore, ... }

Publishing (Maintainers)

The CI/CD pipeline automatically publishes to npm when a commit on main starts with release:.

Steps

  1. Bump version in package.json
  2. Run prepublish gate locally:
    npm run prepublishOnly   # lint + test (146 tests) + build
  3. Commit and push:
    git add packages/huddle-skills/
    git commit -m "release: v0.2.0"
    git push origin main
  4. GitHub Actions triggers .github/workflows/huddle-skills-ci.yml:
    • test job: lint → 146 tests → build → verify dist
    • publish job (only on release: prefix + NPM_TOKEN secret): npm publish --access public

Required GitHub Secret

NPM_TOKEN — create at npmjs.com/settings/tokens (Automation token, read+write), add to repo secrets at Settings → Secrets → Actions.

Package Size Budget

Target: < 500KB, tree-shakeable per jurisdiction via named exports.


License

MIT — see LICENSE

Built by Huddle Protocol