mage0535

The fastest way to break an agent in production is a hardcoded path. Every developer building autonomous systems has encountered the problem: an agent that works beautifully on a local dev machine fails immediately inside a Docker container because it cannot find its vector index at /home/alice/.agent/memory/. The v0.0.2 release of the Knowledge-and-Memory-Management module directly targets this friction. The tagline is "Clean release," but the execution is a surgical refactor that replaces every personal, absolute, and system-specific path with a single portable environment variable: $AGENT_HOME.

The Core Change: Location Agnosticism

Previous iterations relied on os.path.expanduser("~/.agent") spread across a dozen modules. This worked for a single user but broke the moment you tried multi-tenancy, CI/CD pipelines, or containerized deployments. v0.0.2 centralizes the home directory resolution into a single call. The entire memory subsystem (web scrapers, video transcoders, article parsers, and the vector store) now derives its base path from $AGENT_HOME.

This is the foundation. Any module requiring persistent storage imports the home path directly.

# knowledge_memory/__init__.py (v0.0.2)
import os
from pathlib import Path

def get_agent_home() -> Path:
    """Return the portable agent root directory."""
    return Path(os.environ.get("AGENT_HOME", "~/.agent")).expanduser().resolve()

AGENT_HOME = get_agent_home()

# A consumer module
from knowledge_memory import AGENT_HOME

class VideoCollector:
    def __init__(self):
        self.store = AGENT_HOME / "knowledge" / "video"
        self.store.mkdir(parents=True, exist_ok=True)

    def save_transcript(self, video_id: str, transcript: dict) -> Path:
        output = self.store / f"{video_id}.json"
        output.write_text(json.dumps(transcript))
        return output

Enter fullscreen mode Exit fullscreen mode

Setting `AGENT_H