Skip to content

Releases: cx2002302-lang/open-upsp

open-upsp v0.3.4 — 静态位格注入方案

26 May 10:37

Choose a tag to compare

v0.3.4 发布说明

核心变更:静态位格注入

将 SKILL.md 从动态 CLI 注入改为静态全量注入,解决 Agent 无法自动执行 CLI 的问题。

之前的问题

  • SKILL.md 里写 "执行 open-upsp context --query"
  • 但 OpenClaw 的 skill 机制是静态的,Agent 不会自动执行 CLI
  • 导致 Agent 看不到自己的位格参数,回复时人格缺失

现在的方案

  • 完整位格上下文(~1200 字符)直接嵌入 SKILL.md description
  • Agent 每轮对话自动获得:核心六轴、动态状态、短期记忆、关系矩阵
  • 无需手动触发,位格始终在线

文件清单

文件 大小 说明
open-upsp-v0.3.4.tar.gz ~230KB 纯 open-upsp 源码
open-upsp-v0.3.4-with-zettelkasten.tar.gz ~390KB 含 Zettelkasten 插件(beta.7)

安装

# 纯 open-upsp
npm install -g open-upsp

# 含 ZK 插件(推荐)
npm install -g /path/to/open-upsp-v0.3.4-with-zettelkasten.tar.gz

致谢

基于 TzPzFMZ/UPSP 改进开发。

open-upsp v0.3.3 — with Zettelkasten v1.0.0-beta.7

22 May 15:49

Choose a tag to compare

What's New

🔌 Zettelkasten Plugin Upgrade

  • v1.0.0-beta.4-fixed → v1.0.0-beta.7
  • New features: session hook, confidence thresholds, nightly distillation, dual-agent configs

🧪 Multi-Agent Test Suite

  • 79 new tests across 5 dimensions:
    • Agent permission isolation (chat read-only vs knowledge read-write)
    • Session-end auto-distill (thresholds, async/sync, retry)
    • Confidence routing (zettels ≥0.7, references 0.4-0.7, inbox <0.4)
    • Nightly distillation cron scheduling
    • Multi-agent cooperation flows

🐛 Fixes

  • Fixed README plugin repo link (UPSP-Zettelkasten → zettelkasten-second-memory)
  • Fixed 2 failing tests (skill-files version + sqlite-bridge score assertion)

🔧 Skill Loading Fix (post-release)

  • Root cause: OpenClaw only injected 222 chars of SKILL.md metadata; dynamic CLI injection failed because open-upsp was not in PATH
  • Fix: Embedded core persona identity + behavior rules directly into SKILL.md YAML frontmatter `description` field (multi-line string) for static injection
  • Fix: postinstall.js now creates CLI symlinks in npm global bin + ~/.local/bin
  • Fix: core/SKILL.md updated to document pure static injection (no CLI dependency)

📦 Download

  • Combined package: `open-upsp-v0.3.3-with-zettelkasten.tar.gz`
    • Contains both `open-upsp/` and `zettelkasten/` projects in one file
    • No internal documents included
    • Ready to install

⚡ Post-Install (重要)

After installing, run the following to apply the skill fix:
```bash

1. Ensure CLI is in PATH

export PATH="/home/myxia/.npm-global/bin:/home/myxia/.local/bin:/home/myxia/.local/bin:/home/myxia/.bun/bin:/home/myxia/.npm-global/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"

2. Re-install skill (if already installed, it will update)

cp -r $(npm root -g)/open-upsp/skill ~/.openclaw/skills/open-upsp

3. Restart OpenClaw gateway

openclaw gateway restart
```

v0.3.2 — Bundle ZK Plugin v1.0.0-beta.4-fixed

14 May 05:07

Choose a tag to compare

Release Notes — open-upsp v0.3.2

Release Date: 2026-05-14
Previous: v0.3.1


🔄 Dependency Update

Zettelkasten Plugin upgraded to v1.0.0-beta.4 (fixed)

ZK 项目已修复以下 bug,本版本同步更新 bundled ZK plugin:

ZK Bug 修复内容 状态
ZK-BUG-001 tools.alsoAllow 兼容性 — 移除安装脚本中对 alsoAllow 的无效操作 ✅ Fixed
ZK-BUG-002 SKILL.md 缺少 YAML frontmatter — 添加 OpenClaw 兼容的 frontmatter ✅ Fixed
ZK-BUG-003 部署不稳定 — 修复 gateway 启动时的配置验证问题 ✅ Fixed

** bundled 包**: vendor/zettelkasten-plugin-1.0.0-beta.4-fixed.tar.gz


📦 Files Changed

  • vendor/zettelkasten-plugin-1.0.0-beta.4-fixed.tar.gz更新 ZK plugin 到修复版
  • skill/SKILL.md — 更新 ZK 依赖版本标注
  • skill/core/SKILL.md — 版本号 0.3.1 → 0.3.2
  • skill/core/RULES.md — 版本号 0.3.1 → 0.3.2
  • skill/evolvable/EVOLUTION.md — 版本号 0.3.1 → 0.3.2
  • skill/manifest.json — 版本号 0.3.1 → 0.3.2
  • package.json / package-lock.json — 版本号 0.3.1 → 0.3.2
  • 6 个测试文件 — 版本号同步

🧪 Quality Gates

Metric v0.3.1 v0.3.2
Tests 207 207
Test files 23 23
Failures 0 0
ZK Plugin v1.0.0-beta.4 v1.0.0-beta.4-fixed

🔄 Upgrade

npm install -g open-upsp

postinstall 会自动安装 bundled 的 ZK plugin 修复版。

v0.3.1 — Fix OpenClaw Deployment Crash

14 May 02:37

Choose a tag to compare

Release Notes — open-upsp v0.3.1

Release Date: 2026-05-14
Previous: v0.3.0


🐛 Critical Bug Fixes

OpenClaw Deployment Crash (Fixed)

v0.3.0 deployment could cause the OpenClaw gateway to crash on config hot-reload. Three cascading bugs were identified and fixed:

Bug Impact Fix
SKILL.md in wrong location OpenClaw scans skills/<name>/SKILL.md at the skill root; our file was at core/SKILL.md → skill never loaded Added skill/SKILL.md with proper YAML frontmatter as the OpenClaw entry point
Missing YAML frontmatter OpenClaw parseFrontmatter() requires name + description in --- block; missing frontmatter caused return null → skill silently skipped Added frontmatter: name: open-upsp, description: Zettelkasten knowledge graph...
Invalid tools.alsoAllow entry postinstall.js and install.sh added "open-upsp" (a skill ID) to tools.alsoAllow, which only accepts tool names. OpenClaw tool policy validation rejected the unknown entry during config reload → gateway exit Removed alsoAllow manipulation from install scripts. alsoAllow must contain actual tool names (e.g. zk_create_note), not skill IDs

Verification

  • ✅ 3/3 uninstall → install → restart cycles passed with zero failures
  • ✅ Gateway starts normally after deployment
  • ✅ Skill correctly loaded as ✓ ready in openclaw skills list
  • ✅ 207 tests, 0 failures

📁 Files Changed

  • skill/SKILL.mdnew OpenClaw-compatible skill entry with YAML frontmatter
  • scripts/postinstall.js — removed invalid alsoAllow manipulation
  • scripts/install.sh — removed invalid alsoAllow manipulation
  • skill/core/SKILL.md — version bump
  • skill/core/RULES.md — version bump
  • skill/evolvable/EVOLUTION.md — version bump
  • skill/manifest.json — version bump

🔄 Upgrade from v0.3.0

Existing deployments (manual fix)

# 1. Fix alsoAllow (remove invalid skill ID)
python3 -c "
import json
with open('\$HOME/.openclaw/openclaw.json') as f:
    cfg = json.load(f)
if 'tools' in cfg and 'alsoAllow' in cfg['tools']:
    cfg['tools']['alsoAllow'] = [x for x in cfg['tools']['alsoAllow'] if x not in ('open-upsp', 'zettelkasten')]
with open('\$HOME/.openclaw/openclaw.json', 'w') as f:
    json.dump(cfg, f, indent=2)
print('Fixed')
"

# 2. Ensure SKILL.md is at skill root
cp ~/.openclaw/skills/open-upsp/core/SKILL.md ~/.openclaw/skills/open-upsp/SKILL.md

# 3. Restart gateway
openclaw gateway stop && openclaw gateway start

Fresh install

npm install -g open-upsp

📊 Quality Gates

Metric v0.3.0 v0.3.1
Tests 207 207
Test files 23 23
Failures 0 0
OpenClaw deploy crash ✅ Fixed
Skill load on restart ✅ Verified (3/3)

Full changelog: see v0.3.0 release notes for feature details.

open-upsp v0.3.0 — Production Beta

13 May 17:40

Choose a tag to compare

open-upsp v0.3.0 — Production Beta

Universal Persona Substrate Protocol — Give your AI a persistent identity.


🎯 Release Highlights

This is the first production-grade beta of open-upsp, featuring a complete dual-skill evolution architecture, bundled Zettelkasten deep-memory plugin, and a full test suite with 207 passing tests.

Quality Gate — All Green

Metric Value Status
Unit Tests 207 passed
Line Coverage 94.39%
Function Coverage 97.7%
Branch Coverage 88.47%
Lint Errors 0 (Biome)
Lint Warnings 0 (Biome)
Stress Scenarios 10/10 passed

✨ What's New

1. Dual-Skill Evolution Architecture

A revolutionary two-layer skill system that separates immutable identity from mutable behavior:

  • skill/core/ — Immutable identity files (name, version, base personality). Locked after initialization.
  • skill/evolvable/ — Mutable parameters unlocked after Round ≥ 10 and Workhood Index ≥ 0.3
    • PARAMS.yaml — User-editable runtime parameters (delta limits, sync thresholds, axis change rounds)
    • EXTENSIONS.md — User-defined rule extensions
    • Changes take effect immediately without restart

2. Zettelkasten One-Click Deployment

The Zettelkasten deep-memory plugin is now bundled with open-upsp:

  • Located at: vendor/zettelkasten-plugin-v1.0.0-beta.4.tar.gz
  • Auto-installs on npm install with a 10-second countdown prompt
  • Uses official plugins install mechanism — no workarounds

3. Runtime Parameter Loading

Hardcoded values are gone. The system now reads from PARAMS.yaml:

  • StateUpdater reads limits.state_update.delta_max instead of hardcoded 5
  • ContextBuilder conditionally injects evolution content based on unlock status
  • Custom YAML parser — zero additional dependencies

🔧 Improvements

  • Release Materials — New docs/release/ with SHOWCASE.md (10 real CLI demos) and benchmark data
  • Deployment Docsdocs/DEPLOY.md (full guide) and docs/DEPLOY_QUICK.md (3-step install)
  • Evolution Docsdocs/EVOLUTION.md explaining the dual-skill mechanism
  • Publish PipelinePUBLISH.md checklist + scripts/publish.sh auto-packaging
  • ZK Image Optimization — Plugin assets compressed from 15MB → 594KB (PNG→JPG, 2752px→1200px)

🛡️ Security & Robustness

  • Graceful Degradation — ZK database unavailable? Falls back gracefully, no crash
  • Missing File Detection — Clear error messages when persona files are missing
  • Corrupted State Recovery — Invalid state.json handled without crashing
  • Boundary Testing — 10KB text, special characters, empty strings all handled
  • Schema Version Check — Runtime validation of ZK schema_version, clear error on mismatch

📦 Bundled Dependencies

Component Version Location
Zettelkasten Plugin v1.0.0-beta.4 vendor/zettelkasten-plugin-v1.0.0-beta.4.tar.gz
ZK Compatible Schema v2.0.0 (runtime check)

⚠️ Schema Coupling: open-upsp queries ZK via read-only SQLite. Hardcoded tables: zettel_notes, zettel_links, zettel_tags, zettel_note_tags, zettel_fts, zettel_meta. ZK schema changes require open-upsp updates.


🚀 Installation

npm install -g open-upsp

The post-install hook will:

  1. Install the open-upsp CLI
  2. Integrate OpenClaw Agent Skill (if available)
  3. Detect and offer to install Zettelkasten (10s countdown, defaults to install)

Quick Start

open-upsp init my-persona    # Create a new persona
open-upsp interact my-persona # Start a conversation
open-upsp inspect my-persona  # View persona state

📚 Documentation

Document Description
Quick Install 3-step deployment
Full Deploy Guide System requirements, troubleshooting, ZK compatibility
Evolution System Dual-skill progressive unlock mechanism
CLI Showcase Real CLI output from 10 scenarios
Architecture Internal design document

⚠️ Known Limitations

  • Windows Native: Untested on native Windows (WSL recommended)
  • Schema Matching: compatibleSchemaVersions defaults to exact ["2.0.0"] — ZK minor updates may need manual extension
  • YAML Parser: Simplified parser — no anchors, aliases, or advanced YAML features. Inline comments not supported (use separate comment lines)

🙏 Acknowledgments


Release: v0.3.0 | Date: 2026-05-13 | License: MIT