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

ns-dsh-llm-kiro

v0.4.0

Published

DeepSeek Harness (dsh) LLM adapter adding Kiro (AWS CodeWhisperer/Q) as a model provider

Readme

ns-dsh-llm-kiro

Kiro (AWS CodeWhisperer/Q) as a provider route in the DeepSeek Harness.

Kiro speaks its own streaming protocol — AWS event-stream framing over generateAssistantResponse — which no configurable route can describe, so this registers a real LlmAdapter rather than a profile on a generic one.

Works with dsh 0.2 (tool results as tool-role messages, developer tool-change messages, offloaded images) and still reads the dsh 0.1 tool-result blocks.

Install

Published on npm as ns-dsh-llm-kiro:

kiro-cli login
dsh plugin --profile <profile> add ns-dsh-llm-kiro

Pin a version with add [email protected] — dsh plugin add forwards straight to pnpm add, which resolves bare names and name@version from the registry same as any other package.

From a local build

To point the profile at a local build instead — for developing this package or ns-kiro-core before a release:

kiro-cli login
pnpm install && pnpm -r build
dsh plugin --profile <profile> add link:$PWD/packages/dsh-llm-kiro

link: points the profile at the local build from pnpm -r build rather than the registry tarball.

Add the row to that profile's cordis.patch.yml:

- insert:
    - id: llm-kiro
      name: 'ns-dsh-llm-kiro'
      config:
        provider: kiro

- id: agent-default-model
  config:
    provider: kiro
    model: claude-sonnet-4-6

Verify the composition, then run:

dsh --profile <profile> --dump-config | grep -A3 llm-kiro
dsh --profile <profile> "what changed in this repo?"

Configuration

| Key | Default | Meaning | | --- | --- | --- | | provider | kiro | Provider route the adapter registers under | | displayName | Kiro | Name shown in model selectors | | region | derived | Kiro API region; derived from the credential when absent |

Notes

  • Sessions come from the machine. The adapter reads the kiro-cli store or the Kiro IDE token file, refreshes on expiry, and writes the refresh back. It runs no browser flow of its own.
  • Images are sent when the deployment mounts the attachments service, and dropped otherwise — the plugin does not require that service, so a text-only profile still boots.
  • Kiro's failure vocabulary is mapped onto the Harness routing codes (AUTH, RATE_LIMIT, OVERLOADED, QUOTA_EXCEEDED, CONTEXT_OVERFLOW, TIMEOUT), so the loop's retry policy sees a classified failure rather than provider prose.
  • A degenerate response is retried inside the adapter only while nothing has been delivered: the Harness assembler cannot un-deliver a block, so a response already streamed out is settled rather than replayed.
  • Cache hit in the harness is an estimate. Kiro caches a repeated prefix server-side and reports no cache token counts, and the harness draws "Cache hit 0%" when those counts are missing. The adapter reclassifies the repeated prefix of one session as a cache read. The first call in a process has nothing to compare, and a gap longer than five minutes starts over.

Part of ns-bridge.