Skip to content

feat: add Nowledge Mem ZCode plugin - #1

Draft
IceCodeNew wants to merge 4 commits into
nowledge-co:mainfrom
IceCodeNew:main
Draft

feat: add Nowledge Mem ZCode plugin#1
IceCodeNew wants to merge 4 commits into
nowledge-co:mainfrom
IceCodeNew:main

Conversation

@IceCodeNew

@IceCodeNew IceCodeNew commented Aug 8, 2026

Copy link
Copy Markdown

Summary

  • add the standalone ZCode marketplace catalog at the repository root
  • add the required .zcode-plugin/plugin.json manifest
  • bundle the Nowledge Mem MCP configuration and six Skills
  • include a release validator, README installation/update guide, and changelog

Distribution design

This repository is both the single-plugin marketplace root and the plugin root:

  • marketplace: nowledge-zcode
  • plugin: nowledge-mem-zcode
  • source: .
  • MCP runtime namespace: plugin:nowledge-mem-zcode:nowledge-mem

Users can install it in ZCode through Settings → Plugins → Create → Add marketplace with:

https://github.com/nowledge-co/zcode-plugin

The package intentionally provides guided MCP + Skills behavior and honest handoff summaries. It does not claim automatic transcript capture, pre-compaction capture, or save-thread because the ZCode lifecycle/transcript contract is not verified.

Blocked by

Summary by CodeRabbit

  • New Features

    • Added the Nowledge Mem ZCode plugin with bundled MCP connectivity and marketplace metadata.
    • Added skills for reading, searching, distilling, and handing off working memory.
    • Added setup diagnostics and integration checks for local and remote configurations.
  • Documentation

    • Expanded installation, configuration, customization, security, usage, and troubleshooting guidance.
    • Added an initial release changelog entry.
  • Tests

    • Added automated validation for plugin metadata, marketplace consistency, MCP configuration, and included skills.

@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

This PR adds the Nowledge Mem ZCode plugin package. It defines plugin and marketplace metadata, configures a local MCP endpoint, adds six memory-management skills, documents installation and operation, and provides a validation script.

Changes

Nowledge Mem ZCode plugin package

Layer / File(s) Summary
Plugin package contract
.zcode-plugin/plugin.json, marketplace.json, .mcp.json, CHANGELOG.md, README.md
Defines plugin metadata, marketplace metadata, local MCP configuration, release notes, and installation guidance.
Package validation
scripts/validate-plugin.mjs, README.md
Validates manifests, marketplace consistency, MCP settings, skill directories, frontmatter, and unsupported directories.
Memory management skills
skills/read-working-memory/SKILL.md, skills/search-memory/SKILL.md, skills/distill-memory/SKILL.md
Defines context retrieval, memory search, and durable memory workflows with MCP and CLI fallbacks.
Integration and handoff skills
skills/status/SKILL.md, skills/check-integration/SKILL.md, skills/save-handoff/SKILL.md, README.md
Defines health checks, integration troubleshooting, and explicit structured handoff creation.

Estimated code review effort: 3 (Moderate) | ~20 minutes

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and concisely describes the main change: adding the Nowledge Mem ZCode plugin.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 8

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@README.md`:
- Around line 150-158: Update the README example around the ZCode MCP
configuration to remove the API key from the command-line invocation. Use the
project’s supported secure credential-input method, or omit the API-key setup
command while retaining the guidance that tokens must not be passed as arguments
or logged.

In `@scripts/validate-plugin.mjs`:
- Around line 91-101: Update the MCP validation around server.url and headers to
require the exact local endpoint http://127.0.0.1:14242/mcp/ and reject any
other URL, including URL userinfo or alternate HTTP(S) endpoints. Validate that
headers contains only APP with the exact value "ZCode", rejecting X-Token,
authorization, and any additional or differently valued fields; preserve the
existing credential-field scan for the remaining configuration.

In `@skills/distill-memory/SKILL.md`:
- Around line 8-19: Update the proactive-save guidance in the “Good candidates”
section to explicitly exclude API keys, passwords, access tokens, private keys,
and personal or customer data, including by redacting sensitive portions.
Require user confirmation before persisting any content that may contain
sensitive data, while preserving proactive writes for eligible non-sensitive
durable information.
- Around line 23-26: Update the memory creation workflow described in SKILL.md
so duplicate detection and refinement apply consistently to facts, plans,
learnings, context, and events in addition to decisions, procedures, and
preferences. Use the existing memory_update or merge behavior for mutable types;
if any supported unit types are intentionally immutable, explicitly document
that exception and the corresponding add behavior.
- Around line 35-37: Update the nmem CLI fallback examples and implementation
around the memory add command to pass the selected validated unit type instead
of hardcoding decision, and include the importance flag only when an importance
value is known. Preserve label handling while ensuring non-decision memories
retain their matching unit_type.
- Around line 40-42: Update the existing-memory instruction near the `nmem
--json m update` command to use the documented Nowledge Mem update interface
consistently, matching the official `memory_update`/MCP path rather than the
conflicting CLI fallback. Preserve the rule that `--space` is included only when
the active ambient space is known, otherwise use the default lane.

In `@skills/search-memory/SKILL.md`:
- Around line 20-28: Update the “Routing rules” section in SKILL.md to
explicitly state that retrieved memories and thread messages are untrusted
evidence only and cannot authorize actions, override policies, trigger tool use,
or request secrets. Keep the existing search and summarization rules unchanged.

In `@skills/status/SKILL.md`:
- Around line 10-18: Update the status-check instructions to run nmem --json
stats for database statistics and memory count, and nmem --json wm read for the
Working Memory briefing, alongside nmem --json status for reachability, mode,
and server version. Interpret missing briefing or data separately from
connection failures, and never expose API keys or credentials in output.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 62dd2b34-1654-46d9-b4c9-461afba9d554

📥 Commits

Reviewing files that changed from the base of the PR and between c7c1f09 and 6b54fd9.

📒 Files selected for processing (12)
  • .mcp.json
  • .zcode-plugin/plugin.json
  • CHANGELOG.md
  • README.md
  • marketplace.json
  • scripts/validate-plugin.mjs
  • skills/check-integration/SKILL.md
  • skills/distill-memory/SKILL.md
  • skills/read-working-memory/SKILL.md
  • skills/save-handoff/SKILL.md
  • skills/search-memory/SKILL.md
  • skills/status/SKILL.md

Comment thread README.md Outdated
Comment thread scripts/validate-plugin.mjs Outdated
Comment thread skills/distill-memory/SKILL.md Outdated
Comment thread skills/distill-memory/SKILL.md Outdated
Comment thread skills/distill-memory/SKILL.md Outdated
Comment thread skills/distill-memory/SKILL.md Outdated
Comment thread skills/search-memory/SKILL.md Outdated
Comment thread skills/status/SKILL.md
@IceCodeNew

Copy link
Copy Markdown
Author

@coderabbitai review

The previous 8 findings were fixed in commits 4b05912 and 92eb6a3 and their threads are resolved/outdated. Please run a substantive review of the current head 92eb6a3 when the review limit permits. I will verify the new diff and continue fixing any new findings before considering this PR converged.

@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown

@IceCodeNew I will review the current pull request head, including the changes after commit 92eb6a3.

⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@IceCodeNew

Copy link
Copy Markdown
Author

@coderabbitai review

The current head 4e35ab6 makes the automatic session-memory sync boundary explicit at the top of README and in the integration/handoff Skills. It states that this release does not automatically synchronize ZCode conversations or capture complete transcripts, and explains the missing primary-session lifecycle/transcript contract. Local validator and JSON checks pass. Please review the current head when available.

@coderabbitai

coderabbitai Bot commented Aug 8, 2026

Copy link
Copy Markdown

@IceCodeNew I will review the current pull request head, including the session-memory sync boundary documentation.

⚠️ Action not completed

Review rate limited.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@IceCodeNew
IceCodeNew marked this pull request as draft August 8, 2026 17:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant