Skip to content

Fix model cache location to use memory directory instead of current working directory #11

@nikomatsakis

Description

@nikomatsakis

Fix Model Cache Location

Status: Planning

Current Understanding

The Ollama model caching currently stores downloaded models in the current working directory where the hippo server is run. This creates several problems:

  1. Inconsistent storage - Models and memories are stored in different locations
  2. Permission issues - Current directory might not be writable
  3. Clutter - Model files appear in random project directories
  4. Cleanup difficulty - Hard to find and manage cached models

The model cache should be stored in the same directory as the memories (typically ~/.hippo/) for consistency and proper organization.

Next Steps

  • Locate where model caching directory is configured in the Rust code
  • Update model cache path to use the same --memory-dir argument
  • Test that models download to the correct location
  • Update documentation if needed
  • Consider migration strategy for existing cached models

Open Questions

  • Should we automatically migrate existing cached models from old locations?
  • What's the current default cache location behavior in ollama-rs?
  • Do we need to create a models/ subdirectory within the memory directory?

Context

This issue was discovered while reviewing the automatic RAG-like discovery implementation (issue #9). The model caching behavior is inconsistent with our memory storage approach and can cause user confusion and system administration problems.

This is a bug fix that should be addressed before continuing with the RAG implementation to ensure clean, predictable file organization.

Metadata

Metadata

Assignees

No one assigned

    Labels

    ai-managedAI can update OP and add commentsbugSomething isn't workingtracking-issueOngoing work item tracked across sessions

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions