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

@pi-archimedes/ask

v2.9.0

Published

Structured question tool with tabbed multi-question flow and inline note editing

Readme

@pi-archimedes/ask

Keep the decisions. Delegate the work.

When an agent needs you, ask turns the need into a structured prompt right in the terminal — options, inline notes, a freeform fallback — so the answer carries your exact intent back. From subagents, too: their questions surface in the parent TUI, the agent waits, and the work carries on with your choice. No copy-pasting messages between panes to stay involved.

Install

Standalone:

pi install npm:@pi-archimedes/ask

Or the full suite instead:

pi install npm:pi-archimedes

New to Pi? Pi itself is a one-time global install and needs Node.js ≥ 22.19.0:

npm install -g --ignore-scripts @earendil-works/pi-coding-agent

After installing Pi, choose one installation command above, then cd into your project and run pi. Inside the session, /login signs you in and /model picks a model — the setup section covers the first run. /reload picks the tool up in a running session.

What you get

  • Tabbed multi-question flows — arrow keys move between related questions; a final batch review submits the whole set in one step.
  • Single-question picker — for fast multiple-choice questions, keyboard-driven: up/down to move, Enter to submit, Esc to cancel. Nothing requires a mouse.
  • Inline note per option — Tab opens a note editor on the hovered option; Enter submits it. Notes travel back with the answer, so context and constraints ride along.
  • Multiple selection — multi: true collects several answers from one question.
  • Built-in "Other (type your own)" — whenever the options don't cover it, a freeform response field is always available.
  • Markdown context — the agent can attach formatted descriptions, headers, and code blocks above the options, so the question presents context you can actually read.

Tool usage

Single quick question

{
  "questions": [{
    "id": "framework",
    "question": "Which framework should we use?",
    "options": [
      { "label": "React" },
      { "label": "Vue" },
      { "label": "Svelte" }
    ]
  }]
}

Multi-question flow with markdown context and multiple selection

{
  "questions": [
    {
      "id": "priority",
      "question": "What is the implementation priority?",
      "description": "Choose the initial focus area for this milestone.",
      "recommended": 0,
      "options": [
        { "label": "Core architecture first" },
        { "label": "Unit tests first" },
        { "label": "CLI interface first" }
      ]
    },
    {
      "id": "constraints",
      "question": "Select applicable constraints:",
      "multi": true,
      "options": [
        { "label": "No breaking changes" },
        { "label": "Zero external dependencies" },
        { "label": "Strict backward compatibility" }
      ]
    }
  ]
}

An option the agent marks recommended is flagged in the UI; description renders as markdown above the options.

Subagent relay

When a subagent dispatched by @pi-archimedes/subagent calls ask, the same prompt relayed over the bidirectional IPC channel appears in your live terminal, even mid-stream — the subagent blocks while you answer and resumes carrying your exact choices. It works alongside the live streaming and cost tracking, no temp files or pipes. This relay only applies to Archimedes-dispatched subagents; a question from a directly-called agent simply renders in-line.

On/off is managed by the suite: toggle via /plugins (archimedes.ask.enabled, default on).

← Back to pi-archimedes