Skip to content

feat: v0.4.1 — GMem memory infra + Opprime synced improvements (CI pass)#6

Merged
garyqlin merged 4 commits into
mainfrom
sync-v3.4.1
Jun 9, 2026
Merged

feat: v0.4.1 — GMem memory infra + Opprime synced improvements (CI pass)#6
garyqlin merged 4 commits into
mainfrom
sync-v3.4.1

Conversation

@garyqlin

@garyqlin garyqlin commented Jun 9, 2026

Copy link
Copy Markdown
Owner

Summary

v0.4.1 — GMem memory infrastructure merged into Gbase public framework.

Changes (18 files, +1041/−134)

New:

  • lib/archive_store.py + tools/archive_search.py: cross-session conversation archive
  • tools/remember_info.py: unified memory routing (Knowledge/Notes/Experience)
  • tools/glink_projects.py: Glink project management integration
  • rules/AGENCY.md, THINKING.md, FINISH.md: rule templates

Core fixes:

  • FTS5 token filter (detail=column pure-digit/alpha pollution bug)
  • Knowledge auto record_hit() on retrieval
  • session.py: L1 compaction type mismatch, image_url filtering
  • experience.py: JSON error tolerance
  • storage.py: Knowledge aging mechanism
  • All PII sanitized for public release

CI

  • ruff check .: ✅ All checks passed
  • ruff format --check .: ✅ All files formatted

garyqlin added 4 commits June 9, 2026 15:07
- FTS5 token filter: fixed detail=column pure-digit/alpha pollution bug
- Knowledge auto-record_hit() on every auto-search match
- tools/remember_info.py: unified memory route (Knowledge/Notes/Experience)
- tools/archive_search.py: Archive Store search for cross-session recall
- tools/glink_projects.py: Glink project management integration
- kernel.py: _recorded_tc tracking, _build_gmem_summary, FINISH.md rules
- lib/session.py/experience.py/storage.py: Opprime consistency sync
- rules/: AGENCY.md, THINKING.md, FINISH.md — public-ready rule templates
- PII sanitized for public release
- CHANGELOG.md: v0.4.1 entry
- archive_store.py: contextlib import, SIM108/B/F541/E401 fixes
- experience.py: B007 loop var rename
- storage.py: ARG004 per-file-ignore
- pyproject.toml: storage.py exclusion
- ruff format across all files
New:
- lib/channels/webchat.py: WebSocket-based chat backend
  - Streaming response (chunk-by-chunk)
  - File upload: text/PDF/DOCX/XLSX/image parsing
  - Knowledge retrieval visibility
  - Auto-reconnect WebSocket
- webchat/index.html: Single-file cyberpunk frontend
  - Left/right split layout (chat + Agent Mind panel)
  - Dark cyberpunk theme with scanline overlay
  - Drag & drop file upload
  - Real-time streaming output
  - Knowledge & tool chain panels
- main.py: --mode web flag + --port option
  - Separated feishu/web run() functions sharing common infra

Usage:
  python3 main.py --mode web --port 8765
@garyqlin garyqlin merged commit be13aa0 into main Jun 9, 2026
3 checks passed
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