惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
I
InfoQ
B
Blog RSS Feed
D
DataBreaches.Net
S
SegmentFault 最新的问题
P
Proofpoint News Feed
A
About on SuperTechFans
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
博客园 - 司徒正美
小众软件
小众软件
博客园 - Franky
有赞技术团队
有赞技术团队
D
Docker
T
Tailwind CSS Blog
雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Blog — PlanetScale
Blog — PlanetScale
酷 壳 – CoolShell
酷 壳 – CoolShell
B
Blog
V
Visual Studio Blog
宝玉的分享
宝玉的分享
爱范儿
爱范儿

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
Knowledge-and-Memory-Management v0.0.2: Streamlined Knowl...
Manoir Yantai · 2026-06-28 · via DEV Community

Manoir Yantai

If you’re building a system that needs to ingest and retain information from diverse sources—web pages, video transcripts, or long-form articles—you know the friction of wrestling with absolute paths and fragile configurations. The v0.0.2 release of Knowledge-and-Memory-Management cleans up that mess. This version replaces every hardcoded personal path with $AGENT_HOME, making your deployment truly portable, and tightens the knowledge collection pipeline. Let’s look at what changed and why it matters for developers who need a reliable memory layer for their agents.

What v0.0.2 Fixes (and Breaks)

The major breaking change is that any previous configuration referencing absolute paths like /Users/you/projects/knowledge or /home/user/data will refuse to load. Instead, you must define the $AGENT_HOME environment variable. All internal storage—collected knowledge, indexes, and metadata—now lives under $AGENT_HOME/data. This small shift eliminates the “works on my machine” problem when sharing configs across teams or deploying to containers.

Migration is straightforward: export AGENT_HOME to a writable directory, then point your existing knowledge collections to it. The release includes a migration script (scripts/migrate_paths.py) that scans old configs and rewrites paths with the variable.

Knowledge Collection in v0.0.2

The core collection engine now supports three explicit domains: web, video, and articles. Each domain has a dedicated extractor that normalises content into a common memory format before storage.

  • Web: Uses a headless browser to fetch full page content, stripping navigation, ads, and paywalls. It preserves semantic structure (headings, lists, code blocks) and generates a clean Markdown representation.
  • Video: Pulls transcripts from YouTube, Vimeo, or local media files via automatic speech recognition integration. It timestamps each segment and extracts key frames when possible. The output is a searchable text transcript with metadata like duration and speaker labels.
  • Articles: Optimised for long-form text (blog posts, PDFs, research papers). It extracts structured metadata (title, author, publication date) and chunks the content according to a configurable token limit for downstream processing like embedding or summarisation.

All collectors share a common interface: KnowledgeSource(name, uri, domain, options). This lets you build a pipeline that mixes sources without custom glue code.

The Portable Path Convention

Let’s see how $AGENT_HOME simplifies configuration. Here’s an example of defining a knowledge collection in YAML:

knowledge_sources:
  - name: tech_reference
    domain: web
    uri: "https://developer.example.com/tutorials"
    options:
      recursive: true
      max_pages: 50
      freshness: 7d
    storage:
      path: "${AGENT_HOME}/data/collections/tech_reference"
      index_type: "vector"

When this file is loaded, every ${AGENT_HOME} reference expands to the environment variable. No more hardcoding home directories. The same config works on your laptop, a CI runner, or a bare-metal server if AGENT_HOME is set consistently.

Memory Management Under the Hood

v0.0.2 introduces a weakly schema-forced memory model. Each collected item (a page, a transcript, an article) becomes a memory unit with:

  • id (hash of content + source)
  • source (the original URI)
  • domain (web|video|article)
  • content (normalised text)
  • metadata (JSON blob)
  • created_at and updated_at timestamps

Deduplication uses the content hash, not the URI—if the same article appears on two pages, it’s stored once. Expiration policies rotate old memories when $AGENT_HOME disk usage exceeds a threshold (configurable, default 85%).

A new CLI command agent-memory collect triggers an incremental sweep. It respects Etags and last-modified headers for web sources, skips unchanged transcripts, and re-chunks articles only when the source file changes.

Practical Considerations

  • No default value: If AGENT_HOME is unset, the system exits with a clear error. This forces explicit configuration and avoids accidental writes to random directories.
  • Logging: All collection events are written to ${AGENT_HOME}/logs/collection.log with structured JSON lines for easy ingestion into your own monitoring.
  • Testing: The release ships with a --dry-run flag for every collect command. Use it to verify what would be ingested without writing any data.

One More Thing: The “S” in the Changelog

The trailing “S” in the topic description hints at a new feature—Summaries. v0.0.2 bakes in a lightweight, configurable summarisation step that runs after collection. For each memory unit, if the content exceeds 500 tokens, an optional local LLM or API call produces a three-sentence summary. This summary is stored alongside the full content and used for faster retrieval queries. You can disable it via the options: { summarize: false } per source.

In production, this halves average retrieval latency because the summary vector is smaller than the full content vector. Of course, you pay with compute time at collection time. Tune the token threshold per domain.

Getting Started

Update your existing v0.0.1 installations by running the migration script, then set AGENT_HOME. If you’re starting fresh:

export AGENT_HOME=/path/to/agent
pip install knowledge-memory==0.0.2
agent-memory init
agent-memory collect --all

The init command creates the directory structure and a default config template. From there, edit knowledge_sources.yaml to match your ingestion targets.

v0.0.2 is not a feature-bloated release—it’s a set of deliberate engineering decisions to make knowledge management reproducible and maintainable. The path fix alone is worth the upgrade. Combine it with the new structured collectors and optional summaries, and you have a solid foundation for any agent that needs to remember.