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

@sweetsophia/kilocode-noosphere-memory

v1.15.0

Published

Connect Kilo Code to self-hosted Noosphere memory for recall, draft saves, and optional idle auto-save.

Readme

Noosphere Memory for Kilo Code

Connect Kilo Code to self-hosted Noosphere memory. Recall relevant knowledge, save draft memories with explicit tools, and optionally enable idle auto-save.

Quick start

You need a running Noosphere instance and a dedicated Kilo Code WRITE key. For a new local setup, select Kilo Code in the guided installer after confirming the v1.15.0 release has all six installer assets. The auditable download explains checksum verification.

Already running Noosphere? Create a dedicated WRITE key at /wiki/admin/keys, then install the plugin and set its key. Never use the bootstrap ADMIN key for an agent integration. See the full Kilo Code guide on GitHub for remote setup and configuration details.

Install

npm install -g @sweetsophia/[email protected]

Add it to ~/.config/kilo/kilo.json:

{
  "plugin": [
    "@sweetsophia/[email protected]"
  ]
}

You can also install it with Kilo's plugin command:

kilo plugin @sweetsophia/[email protected] --global

Or configure it with explicit options:

{
  "plugin": [
    [
      "@sweetsophia/[email protected]",
      {
        "baseUrl": "http://127.0.0.1:6578",
        "autoRecall": true,
        "autoRecallInjectOn": "first",
        "autoSave": false
      }
    ]
  ]
}

Secrets

Do not put real Noosphere API keys in repo files.

Set the key in the environment used to launch Kilo Code:

export KILOCODE_NOOSPHERE_API_KEY="noo_..."

Use KILOCODE_NOOSPHERE_* variables on machines that also run Opencode, OpenClaw, or Hermes. Generic NOOSPHERE_* variables are still supported as backward-compatible fallbacks.

The key needs:

  • READ for recall and topic lookup
  • ADMIN for full status information (falls back to /api/health automatically if key lacks ADMIN)
  • WRITE for manual saves and auto-save

Configuration

| Option | Environment Variable | Default | Description | | --- | --- | --- | --- | | baseUrl | KILOCODE_NOOSPHERE_BASE_URL or KILOCODE_NOOSPHERE_URL; fallback: NOOSPHERE_BASE_URL or NOOSPHERE_URL | http://127.0.0.1:6578 | Noosphere deployment URL. | | apiKey | KILOCODE_NOOSPHERE_API_KEY; fallback: NOOSPHERE_API_KEY | none | Noosphere API key. Prefer the tool-specific environment variable. | | timeoutMs | KILOCODE_NOOSPHERE_TIMEOUT_MS; fallback: NOOSPHERE_TIMEOUT_MS | 5000 | Request timeout. | | autoRecall | KILOCODE_NOOSPHERE_AUTO_RECALL; fallback: NOOSPHERE_AUTO_RECALL | true | Enable prompt-time recall injection. | | autoRecallInjectOn | KILOCODE_NOOSPHERE_AUTO_RECALL_INJECT_ON; fallback: NOOSPHERE_AUTO_RECALL_INJECT_ON | first | first or always. | | autoRecallMax | KILOCODE_NOOSPHERE_AUTO_RECALL_MAX; fallback: NOOSPHERE_AUTO_RECALL_MAX | 5 | Maximum recalled memories. | | autoRecallTokenBudget | KILOCODE_NOOSPHERE_AUTO_RECALL_TOKEN_BUDGET; fallback: NOOSPHERE_AUTO_RECALL_TOKEN_BUDGET | 1200 | Prompt injection token budget. | | autoSave | KILOCODE_NOOSPHERE_AUTO_SAVE; fallback: NOOSPHERE_AUTO_SAVE | false | Enable idle auto-save. | | autoSaveDebounceMs | KILOCODE_NOOSPHERE_AUTO_SAVE_DEBOUNCE_MS; fallback: NOOSPHERE_AUTO_SAVE_DEBOUNCE_MS | 10000 | Idle debounce before auto-save. | | autoSaveTopicId | KILOCODE_NOOSPHERE_AUTO_SAVE_TOPIC_ID or KILOCODE_NOOSPHERE_TOPIC_ID; fallback: NOOSPHERE_AUTO_SAVE_TOPIC_ID or NOOSPHERE_TOPIC_ID | none | Required for auto-save. | | authorName | KILOCODE_NOOSPHERE_AUTHOR_NAME; fallback: NOOSPHERE_AUTHOR_NAME | Kilo Code | Draft candidate author display name. |

Auto-Recall

The plugin uses Kilo Code's chat.message hook. It extracts the user prompt, calls Noosphere in auto mode, and prepends the returned memory context as a synthetic text part.

Recall runs:

  • on the first user message in a session by default
  • after compaction
  • on every message when autoRecallInjectOn is always

Recalled memory is wrapped in <noosphere_auto_recall> so Noosphere can strip injected context if it is later saved.

Auto-Save

Auto-save is available but disabled by default to avoid unexpected writes from public installs.

To enable it:

export KILOCODE_NOOSPHERE_AUTO_SAVE=true
export KILOCODE_NOOSPHERE_AUTO_SAVE_TOPIC_ID="<topic UUID>"

When Kilo Code emits session.idle, the plugin waits for the configured debounce, extracts the latest user request and assistant response, and saves a draft memory candidate. It skips short and trivial prompts.

Tools

noosphere_status

Checks plugin config and Noosphere memory status.

noosphere_recall

Manual memory search.

Arguments:

  • query required
  • resultCap optional, 1-10
  • tokenBudget optional, 100-2000
  • scope optional

noosphere_topics

Lists topics and IDs for use with noosphere_save.

noosphere_save

Saves durable content as a draft memory candidate.

Arguments:

  • title required
  • content required
  • topicId required
  • excerpt, tags, restrictedTags, source, confidence optional

Use this for stable project facts, decisions, runbooks, and recurring fixes. Do not save secrets, raw prompt dumps, or transient task chatter.

Verified guided install

For a new local setup, first confirm the v1.15.0 release has all six installer assets. This pinned launcher verifies its SHA-256 before execution; see the GitHub installation guide for upgrade behavior and other installation paths.

# Installer commit: 7ebffe1f21578cd6e2ad17a7f6fa5baddc88769e
# Expected SHA-256: f573463525c139e4cee69f5b002d2f8e0a15ad976063564fbb19cba5d3458586
(
  set -e
  installer="$(mktemp)"
  trap 'rm -f "$installer"' EXIT
  curl -fsSL https://raw.githubusercontent.com/SweetSophia/noosphere/7ebffe1f21578cd6e2ad17a7f6fa5baddc88769e/install.sh -o "$installer"
  printf '%s  %s\n' 'f573463525c139e4cee69f5b002d2f8e0a15ad976063564fbb19cba5d3458586' "$installer" | sha256sum -c -
  bash "$installer" --non-interactive --with kilocode
)

Development

npm install
npm run typecheck
npm run build
npm pack --dry-run