Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 51 additions & 0 deletions .crushignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
# Crush Ignore File
# Fichiers et dossiers à exclure du contexte Crush

# Environnements virtuels
.venv/
venv/
env/

# Cache Python
__pycache__/
*.pyc
*.pyo
.pytest_cache/
.coverage
htmlcov/

# Dependencies lock (trop volumineux)
uv.lock

# Git
.git/

# IDE
.idea/
.vscode/
*.swp
*.swo

# Docker
Dockerfile
docker-compose*.yml

# Build artifacts
dist/
build/
*.egg-info/

# Logs
*.log
logs/

# Temporary
tmp/
*.tmp

# Config OpenCode (pour éviter confusion)
opencode.json

# Documentation générée
docs/_build/
site/
77 changes: 77 additions & 0 deletions CRUSH.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
# CRUSH.md - Context pour Crush AI Agent

## Projet: Basic Memory

Basic Memory est un système de Personal Knowledge Management (PKM) qui synchronise des notes Markdown avec une base de données sémantique, permettant aux LLMs d'accéder au contexte via MCP.

## Stack Technique

- **Langage**: Python 3.11+
- **Package Manager**: uv
- **Framework**: FastAPI (pour l'API), Click (pour CLI)
- **Database**: SQLite avec FTS5 (full-text search)
- **Protocol**: Model Context Protocol (MCP)
- **Tests**: pytest avec coverage

## Structure du Projet

```
src/basic_memory/
├── api/ # FastAPI endpoints
├── cli/ # Commands Click
├── mcp/ # MCP server implementation
├── services/ # Business logic
├── models/ # SQLAlchemy models
└── sync/ # File synchronization
```

## Commandes Utiles

```bash
# Lancer les tests
uv run pytest

# Lancer avec coverage
uv run pytest --cov=basic_memory

# Lancer le serveur MCP
uv run basic-memory mcp --project main

# Sync des fichiers
uv run basic-memory sync

# Format du code
uv run ruff format .
uv run ruff check . --fix
```

## Conventions

### Code Style
- Utiliser type hints partout
- Docstrings en format Google
- Async/await pour les opérations I/O
- Imports absolus depuis `basic_memory`

### Commits
- Format: `type(scope): description`
- Types: feat, fix, docs, style, refactor, test, chore

### Tests
- Un fichier de test par module
- Nommage: `test_<module>.py`
- Fixtures dans `conftest.py`

## Notes pour l'Agent

1. **Ne jamais modifier** les fichiers dans `.venv/`
2. **Toujours utiliser** `uv run` pour exécuter des commandes Python
3. **Vérifier** les tests avant de commit
4. Le projet utilise **SQLite** - pas de migrations complexes
5. Les notes utilisateur sont dans `/Users/donaldo/basic-memory/` (vault Obsidian)

## Propriétaire

- **Nom**: Donaldo DE SOUSA
- **Rôle**: CEO SoWell, développeur StreetEat
- **Préférence**: Réponses en français, code en anglais
Loading