Files
ims/docs/superpowers/specs/2026-07-09-ims-project-init-design.md
T

2.9 KiB

IMS Project Initialization Design

Date: 2026-07-09 Scope: CLAUDE.md + memory notes + Obsidian wiki — no code scaffold


Context

HSE Incident Management System for Setia Corporation (3PL warehouse). Replaces WhatsApp/Excel-based safety reporting. Full requirements in docs/01_PRD..., tech spec in docs/02_Technical_Specification..., roadmap in docs/03_Development_Roadmap....

Three docs total ~7,000 words. Reading them every Claude session wastes tokens. Goal: distill into structured memory files + lean CLAUDE.md so future sessions load targeted context instead of raw docs.


Approach: Lean CLAUDE.md + Rich Memory (Approach A)

Why: CLAUDE.md stays operational (<80 lines), memory files scoped by topic, Obsidian graph shows relationships between topics. Best token efficiency across multi-session builds.


Files Created

1. /Users/yapweeihan/Desktop/Projects/IMS/CLAUDE.md

Claude-facing instructions only:

  • Stack + versions (Next.js, Supabase, Vercel, Claude API, Resend, WhatsApp Business)
  • Current phase (Phase 0 — not started)
  • Dev conventions (RLS always enforced, API keys server-side only, never commit .env)
  • graphify rules (query before browsing)
  • Pointer to memory files for deep context

2. ~/.claude/projects/-Users-yapweeihan-Desktop-Projects-IMS/memory/

Five per-topic files:

  • project_overview.md — client, objectives, user roles, success metrics
  • architecture.md — stack choices + rationale, module diagram
  • db_schema.md — all 10 tables, key fields, RLS rules, pgvector note
  • phases.md — 4 phases with deliverables; current phase marker updated each session
  • compliance.md — Malaysia NADOPOD 2004 rules, JKKP 6/7/8 triggers, 5-year retention

3. ~/Desktop/ClaudeVault/

Obsidian vault additions:

  • IMS-memory/ symlink → memory dir (live-updating)
  • IMS/wiki.md — condensed human+Claude-readable summary of all 3 docs with [[wikilinks]] to memory files

Conventions

  • Memory phases.md gets updated at the start of each build phase (Phase 0 → 1 → 2...) so Claude always knows where we are.
  • CLAUDE.md never grows beyond 100 lines; deep context lives in memory.
  • Obsidian graph view shows [[project_overview]][[architecture]][[db_schema]][[phases]][[compliance]] topology.
  • All memory files use frontmatter (type, name, description) consistent with the global memory system.

Verification

  1. cat /Users/yapweeihan/Desktop/Projects/IMS/CLAUDE.md — under 100 lines, readable in one scroll.
  2. ls ~/.claude/projects/-Users-yapweeihan-Desktop-Projects-IMS/memory/ — 5 .md files + MEMORY.md index.
  3. Obsidian vault ClaudeVault shows IMS-memory/ folder and IMS/wiki.md.
  4. Obsidian Graph View shows [[wikilinks]] between IMS memory notes.
  5. Future Claude session: reading MEMORY.md index + one targeted memory file is enough to answer "what phase are we in?" and "what is the db schema?" without reading the raw docs.