2.8 KiB
2.8 KiB
Step 1 — CLAUDE.md Conventions Decisions
Decisions made while updating CLAUDE.md (Step 1, PROMPT 2).
Date: 2026-05-06
Drivers
The recent merge feat/graphiti-neo4j-migration (commit 6264828)
replaced Zep Cloud with Neo4j + Graphiti as the primary
knowledge-graph store. The previous CLAUDE.md was out of date.
Section-by-Section Decisions
Tech Stack
- Memory/Graph (UPDATED): Primary = Neo4j + Graphiti (
graphiti-core>=0.3). Zep Cloud is now legacy / kept for backwards compatibility only. Code files still namedzep_*are historical artefacts; the underlying store is Neo4j. - Versions added: Vue 3.5, Vite 7, axios 1.14, vue-router 4.6, vue-i18n 11, D3 7, camel-oasis 0.2.5, camel-ai 0.2.78.
- i18n: Documented
vue-i18n+/locales/{en,zh,languages}.json.
Required Environment Variables
Updated to reflect app/config.py:
- Added:
NEO4J_URI,NEO4J_USER,NEO4J_PASSWORD,EMBEDDING_MODEL. - Added: optional
LLM_BOOST_*block (omit entirely if unused). - Marked
ZEP_API_KEYas deprecated/compat (empty string OK).
Conventions (per user direction)
- Follow the conventions already established in this project.
- Don't impose external style guides on existing code.
- 4-space indent, snake_case in Python; comments/docstrings mix English and Chinese — both styles must continue to work.
- No enforced formatter or linter — match the surrounding file.
- New tooling decisions (Ruff, Prettier, etc.) require discussion before adoption.
Architecture — Must-Respect Rules
Confirmed all architectural patterns drawn from the actual code:
- Background tasks via
Taskmodel (status + progress polling). - Reasoning-model output stripping (
<think>tags, code fences). - Simulation IPC via
simulation_ipc.py. - Subprocess cleanup via
SimulationRunner.register_cleanup(). - Startup recovery via
_recover_stuck_projects(). - Per-project graph isolation via
group_id(Neo4j-specific). - Chat prefix injection to suppress tool calls in user-visible responses.
Commands
- Added a note that
npm run devrequires Neo4j running. - Added a note that no lint/format command is configured.
- Clarified that pytest currently has only one script-style test
(
backend/scripts/test_profile_format.py).
What's Now in CLAUDE.md
- Project overview (unchanged).
- Commands (with Neo4j prerequisite note + lint disclaimer).
- Tech stack (Neo4j+Graphiti primary, Zep deprecated, full versions).
- Required env vars (Neo4j block, optional boost block, deprecated zep).
- 5-step pipeline (rephrased to mention Graphiti+Neo4j).
- Backend / frontend structure (added i18n, locale, logger to utils).
- Key implementation conventions (the seven must-respect rules).
- Coding conventions (project-internal, no external imposition).
Next
- PROMPT 3: Review / update
README.md.