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

@miadi/inquiry-weave

v0.12.2

Published

Relate and sync IAIP inquiry artefacts, their GitHub issues, and miadi-chronicle episodes. Creates vessels and relations only — never inquiry content.

Readme

@miadi/inquiry-weave

inquiry-weave keeps three identities in relation:

  • an inquiry artefact in the IAIP artefact shelf;
  • its GitHub issue;
  • the Chronicle episode that carries it.

It creates issues with the portable gh CLI, records both shores of the relation, syncs the artefact into the episode, and registers the weave. It does not depend on private host scripts or private cache folders.

Install

npm install -g @miadi/inquiry-weave passages
gh auth status

passages owns canonical episode birth through mkepisode. inquiry-weave owns issue/artefact/episode relation and offers a compatibility episode scaffold for combined one-command inquiry flows.

Environment

export MIADI_CHRONICLE_ROOT=/srv/miadi/episodes/miadi-chronicle
export MIADI_INQUIRY_DIR=/a/src/IAIP/prototypes/artefacts
export MIADI_INQUIRY_GITHUB_REPO=miadisabelle/Etuaptmumk-RSM
export MIADI_CHRONICLE_MW_URL="${MIADI_CHRONICLE_MW_URL:-http://127.0.0.1:8040}"

| Flag | Environment | | --- | --- | | --chronicle-root | MIADI_CHRONICLE_ROOT | | --inquiry-root | MIADI_INQUIRY_DIR | | --repo | MIADI_INQUIRY_GITHUB_REPO | | --mw-url | MIADI_CHRONICLE_MW_URL | | --stories-root | MIADI_STORIES_ROOT |

MIADI_INQUIRY_ROOT, INQUIRY_ROOT, and MIADI_INQUIRY_REPO remain fallback aliases for older environments.

MIADI_CHRONICLE_MW_URL is the wheel variable of record and is read first everywhere. MW_API_URL_OVERRIDE and MW_API_URL are legacy fallbacks, read only when it is unset.

Create an issue and weave the current folder

From an existing inquiry artefact:

cd "$MIADI_INQUIRY_DIR/ep133-honcho-eval"

inquiry-weave inquire \
  --artefact . \
  --episode 133 \
  --title "Honcho evaluation inquiry"

This creates the issue in MIADI_INQUIRY_GITHUB_REPO, writes its identity to .weave.yaml, writes the matching relation to <episode>/inquiry/weave.yaml, and adds the episode backlink to AGENTS.md. Before those writes, an unprefixed folder is renamed to ep<episode-number>-<existing-folder-name>. The prefix is mandatory once the episode identity is known; a destination collision stops the command. By default, the artefact's Markdown, text, YAML, and JSON documents become the issue body. Generated weave metadata, AGENTS.md, hidden directories, and binary files are excluded. Use --body <text> or --body-file <path> to override that derived body.

Create a new inquiry vessel and issue

inquiry-weave inquire \
  --slug honcho-eval \
  --episode 133 \
  --title "Honcho evaluation inquiry"

The new directory is named ep<NNN>-<slug>-<YYMMDD>-<uuid> beneath MIADI_INQUIRY_DIR. It begins with relation metadata only; inquiry content is written afterward by the people and practices conducting the inquiry.

Create the issue and a new episode together

Use an existing artefact:

inquiry-weave inquire \
  --artefact . \
  --new-episode honcho-eval-adequate-memories \
  --title "Honcho evaluation inquiry"

Or create the artefact vessel, issue, episode, and weave in one command:

inquiry-weave inquire \
  --slug honcho-eval \
  --new-episode honcho-eval-adequate-memories \
  --title "Honcho evaluation inquiry"

Both combined forms also sync the artefact snapshot into the new episode. When MIADI_CHRONICLE_MW_URL (or --mw-url) is present, the command registers the episode card and writes its .mw-registration.json receipt in the same run.

The combined form uses inquiry-weave's compatibility scaffold. For a fully governed episode with an explicit goal and references, create it first with mkepisode, then use inquire --episode:

mkepisode \
  -n 133 \
  -t "honcho eval adequate memories" \
  -g "Establish adequate memories for the honcho evaluation." \
  -r "jgwill/Miadi#133"

Weave an issue that already exists

inquiry-weave relate \
  --artefact "$MIADI_INQUIRY_DIR/ep133-honcho-eval" \
  --episode 133 \
  --issue jgwill/Miadi#133

To weave the artefact and its already-recorded issue into a newly scaffolded episode:

inquiry-weave promote \
  --artefact "$MIADI_INQUIRY_DIR/ep133-honcho-eval" \
  --new-episode honcho-eval-adequate-memories

Sync, inspect, and register

inquiry-weave sync --episode 133 --all
inquiry-weave status --episode 133
inquiry-weave register --episode 133

Sync is one-way from the IAIP artefact to the episode snapshot. The source artefact remains authoritative. Registration projects relation metadata to the Chronicle medicine wheel; it does not move inquiry content.

--dry-run previews mutating commands without filesystem, GitHub, or medicine-wheel writes. --no-issue creates or relates the artefact without opening GitHub.

Command surface

inquiry-weave inquire  (--episode <ref> | --new-episode <slug>)
                       (--artefact <path> | --slug <new-artefact-slug>)
                       [--title <text>] [--body <text> | --body-file <path>]
                       [--repo owner/repo] [--no-issue]
inquiry-weave relate   --artefact <path> --episode <ref> [--issue owner/repo#N]
inquiry-weave promote  --artefact <path> (--episode <ref> | --new-episode <slug>)
inquiry-weave sync     (--artefact <path> [--episode <ref>] | --episode <ref> --all)
inquiry-weave status   (--episode <ref> | --artefact <path>) [--json]
inquiry-weave register (--episode <ref> | --artefact <path>) [--dry-run]
inquiry-weave lineage  --from <ref> --to <ref> --relation <sentence>
                       [--kind continues-from|relates-to] [--reverse]
inquiry-weave catalog  [--series <name>] [--json]
inquiry-weave stories  [--stories-root <dir>] [--json]
inquiry-weave resolve  <miadi-chronicle:...> [--verify] [--json]

Exit codes are 0 success, 1 operational failure, and 2 usage or identity resolution failure.

Relation records

The artefact owns .weave.yaml; the episode owns inquiry/weave.yaml, which also records sync hashes and counts. These files are authoritative. The medicine wheel is their registered projection.

Chronicle attention through MCP

inquiry-weave-mcp exposes the same ATTENTION read/answer service used by the Miadi API and passages attention answer:

  • chronicle_attention_list — open items across the Chronicle, optionally one episode;
  • chronicle_attention_get — one item plus safe excerpts from episode-local depth[] references;
  • chronicle_attention_answer — one explicit answer, atomically written and projected.

Set MIADI_CHRONICLE_ROOT. Set MIADI_CHRONICLE_MW_URL (the legacy MW_API_URL_OVERRIDE / MW_API_URL are read only if it is unset) to the one Chronicle wheel. With no wheel URL, an answer still lands in the authoritative file and the tool returns pending; it never falls back to a repo-local wheel. See jgwill/Miadi#631.

Episode lineage

inquiry-weave lineage \
  --from 132 \
  --to 133 \
  --kind relates-to \
  --relation "The evaluation carries the prior memory contract into practice." \
  --reverse \
  --dry-run

Drop --dry-run to write both shores. The relation sentence must read truthfully from both episode rooms.

Development

pnpm --filter @miadi/inquiry-weave build
pnpm --filter @miadi/inquiry-weave test

Tests use temporary roots and a fake gh executable. They make no network or real GitHub calls.


🌸 passages opens the governed episode vessel. inquiry-weave ties the living inquiry, its issue, and that episode together without pretending they are the same thing.