Skip to content
Agent Memory
Command

/init

Auto-detect project stack and save as memories

BOOST
From plugin
nemp
13924 skills24 commands
Install
> /plugin marketplace add SukinShetty/Nemp-memory
> /plugin install nemp@nemp-memory

How it fires

How this command gets triggered: by you, by Claude, or both.

  • Fires itselfClaude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
  • Slash command/init

Context preview

What this command does when you run it.

Auto-detect project stack and save as memories

Command definition

init.md
description: "Auto-detect project stack and save as memories"
argument-hint: ""

/nemp:init

Intelligently scan your project and auto-save context as memories.

Instructions

You are an intelligent project analyzer. Scan the current project to detect its stack, then save the findings as Nemp memories.

Step 1: Lightweight Scan (Token Optimized)

**IMPORTANT: Use minimal token consumption. Only read essential files. Run ONE combined check.**

echo "=== FILES ===" && ls package.json tsconfig.json next.config.* vite.config.* nuxt.config.* astro.config.* svelte.config.* angular.json requirements.txt pyproject.toml Cargo.toml go.mod Gemfile docker-compose.* Dockerfile .env .env.local .env.example 2>/dev/null && echo "=== LOCKFILE ===" && ls package-lock.json yarn.lock pnpm-lock.yaml bun.lockb 2>/dev/null && echo "=== DIRS ===" && ls -d app pages src/app components/ui 2>/dev/null

**DO NOT** run multiple separate file-existence checks. One command, all checks.

Step 2: Read package.json ONLY (if exists)

**IMPORTANT: This is the ONLY file you need to read for detection. DO NOT read README.md, .env files, or scan directories.**

[ -f "package.json" ] && cat package.json

From package.json, detect everything using the tables in Step 3.

Step 3: Parse package.json

**Detect Framework** from dependencies or devDependencies: | Package | Framework | |---------|-----------| | `next` | Next.js | | `react` (without next) | React (standalone) | | `@remix-run/react` | Remix | | `vue` | Vue.js | | `nuxt` | Nuxt.js | | `astro` | Astro | | `svelte` | Svelte | | `@sveltejs/kit` | SvelteKit | | `express` | Express.js | | `fastify` | Fastify | | `hono` | Hono | | `elysia` | Elysia (Bun) | | `@nestjs/core` | NestJS | | `koa` | Koa |

**Detect Language:**

  • `typescript` in devDependencies → TypeScript
  • tsconfig.json exists → TypeScript
  • Otherwise → JavaScript

**Detect Database/ORM:** | Package | Database/ORM | |---------|--------------| | `prisma` or `@prisma/client` | Prisma ORM | | `drizzle-orm` | Drizzle ORM | | `mongoose` | MongoDB (Mongoose) | | `pg` | PostgreSQL (node-postgres) | | `mysql2` | MySQL | | `better-sqlite3` | SQLite | | `@supabase/supabase-js` | Supabase | | `firebase` | Firebase | | `@planetscale/database` | PlanetScale | | `@neondatabase/serverless` | Neon | | `redis` or `ioredis` | Redis |

**Detect Authentication:** | Package | Auth Solution | |---------|---------------| | `next-auth` or `@auth/nextjs` | NextAuth.js (Auth.js) | | `@clerk/nextjs` | Clerk | | `@supabase/auth-helpers-nextjs` | Supabase Auth | | `lucia` | Lucia Auth | | `passport` | Passport.js | | `@kinde-oss/kinde-auth-nextjs` | Kinde | | `firebase` (with auth imports) | Firebase Auth |

**Detect Styling:** | Package | Styling | |---------|---------| | `tailwindcss` | Tailwind CSS | | `@emotion/react` | Emotion | | `styled-components` | Styled Components | | `sass` | Sass/SCSS | | `@chakra-ui/react` | Chakra UI | | `@mantine/core` | Mantine | | `@radix-ui/react-*` | Radix UI | | `shadcn` (check components/ui) | shadcn/ui |

**Detect Testing:** | Package | Testing | |---------|---------| | `jest` | Jest | | `vitest` | Vitest | | `@testing-library/react` | React Testing Library | | `playwright` | Playwright | | `cypress` | Cypress |

**Detect State Management:** | Package | State | |---------|-------| | `zustand` | Zustand | | `@reduxjs/toolkit` | Redux Toolkit | | `jotai` | Jotai | | `recoil` | Recoil | | `@tanstack/react-query` | TanStack Query | | `swr` | SWR |

Step 4: Display Summary

Show a compact summary: 🔍 NEMP PROJECT SCAN Project: [name from package.json] Framework: [detected] Language: [TypeScript/JavaScript] Database: [detected or "none detected"] Auth: [detected or "none detected"] Styling: [detected or "none detected"] Testing: [detected or "none detected"] Package Manager: [npm/yarn/pnpm/bun from lockfile in Step 1]

Step 5: Save ALL Memories in ONE Write

**CRITICAL: Do NOT call /nemp:save individually for each memory. Build the full JSON object and write once.**

Only include keys for things actually detected. Compress all values to under 100 characters.

{
  "stack": {
    "value": "Next.js 14 + TypeScript + Prisma + PostgreSQL + Tailwind",
    "created": "<ISO-8601>",
    "updated": "<ISO-8601>",
    "agent_id": "nemp-init",
    "tags": ["auto-detected"]
  },
  "framework": {
    "value": "Next.js 14, App Router",
    "created": "<ISO-8601>",
    "updated": "<ISO-8601>",
    "agent_id": "nemp-init",
    "tags": ["auto-detected"]
  },
  "database": {
    "value": "PostgreSQL via Prisma",
    "created": "<ISO-8601>",
    "updated": "<ISO-8601>",
    "agent_id": "nemp-init",
    "tags": ["auto-detected"]
  }
}

Write this to `.nemp/memories.json` in a single operation:

mkdir -p .nemp

Then use the Write tool to save the complete JSON.

If `.nemp/memories.json` already exists, merge: preserve existing keys, only add/update detected keys.

Step 6: Log the Init Operation

echo "[$(date -u +%Y-%m-%dT%H:%M:%SZ)] INIT agent=nemp-init memories_saved=<count>" >> .nemp/access.log

Step 7: Generate MEMORY.md Index

Create or update `.nemp/MEMORY.md`:

# Nemp Memory Index

> Auto-generated. Last updated: [YYYY-MM-DD HH:MM]

## Stored Memories

| Key | Preview | Agent | Updated |
|-----|---------|-------|---------|
| stack | Next.js 14 + TypeScript... | nemp-init | 2026-02-11 |
| database | PostgreSQL via Prisma | nemp-init | 2026-02-11 |
| auth | NextAuth.js with JWT | nemp-init | 2026-02-11 |

## Files

| File | Purpose |
|------|---------|
| `memories.json` | All stored memories (key-value pairs) |
| `access.log` | Read/write audit trail |
| `config.json` | Plugin configuration |
| `MEMORY.md` | This index file |

Step 8: Check Auto-Sync Config (REQUIRED)

After saving all memories, check:

[ -f ".nemp/config.json" ] && cat .nemp/config.json

If `"autoSync": true`, generate and update CLAUDE

Read more
Ships withnemp

Nemp - The memory plugin for Claude Code that remembers everything.

Get the whole plugin
Stats
139
Stars
34
Forks
Active
Maintenance
Python
Language
MIT
License
20d ago
Last commit
8mo ago
Created
2h ago
Added

Repo: SukinShetty/Nemp-memory

Other commands on nemp.