Slash Command105 estrellas del repoactualizado 3mo ago
context
Search memories by keyword and show relevant context
Instalar en Claude Code
Copiarmkdir -p ~/.claude/commands && curl -fsSL https://raw.githubusercontent.com/SukinShetty/Nemp-memory/HEAD/commands/context.md -o ~/.claude/commands/context.mdDespués abre una sesión nueva de Claude Code; el slash command carga automáticamente.
Definición
context.md
# /nemp:context
Find and display memories relevant to a search query using smart keyword expansion.
## Usage
```bash
/nemp:context auth # Find memories related to authentication
/nemp:context database # Find database-related memories
/nemp:context api # Find API-related memories
/nemp:context style # Find styling/CSS memories
/nemp:context test # Find testing-related memories
```
## Instructions
### 1. Get the Search Query
Extract the search term from the user's command argument.
If no argument provided, show help:
```
Nemp Context Search
Usage: /nemp:context <search-term>
Examples:
/nemp:context auth - Find authentication memories
/nemp:context database - Find database memories
/nemp:context api - Find API memories
/nemp:context style - Find styling/CSS memories
/nemp:context test - Find testing memories
Smart search expands your query to related terms!
```
### 2. Expand Keywords Using Smart Mappings
Based on the search term, expand to related keywords:
```
KEYWORD MAPPINGS:
auth, login, authentication:
→ auth, authentication, login, session, jwt, oauth, nextauth, clerk,
supabase-auth, passport, token, credentials, signin, signup, logout
database, db:
→ database, db, postgres, postgresql, mysql, sqlite, mongo, mongodb,
prisma, drizzle, mongoose, sequelize, knex, typeorm, schema, migration
api, endpoint:
→ api, endpoint, route, rest, graphql, trpc, fetch, axios, request,
response, http, webhook, cors, middleware
style, css, styling:
→ style, css, tailwind, emotion, styled-components, chakra, mantine,
theme, design, scss, sass, less, classname, styling
test, testing:
→ test, testing, jest, vitest, playwright, cypress, unit, integration,
e2e, mock, fixture, assertion, coverage, spec
state, store:
→ state, store, redux, zustand, jotai, recoil, context, provider,
reducer, action, selector, persist
deploy, hosting:
→ deploy, deployment, hosting, vercel, netlify, aws, docker, kubernetes,
ci, cd, pipeline, github-actions, build
config, env, environment:
→ config, configuration, env, environment, dotenv, settings, options,
variables, secrets, keys
error, debug:
→ error, debug, debugging, exception, catch, try, logging, sentry,
bugsnag, stack, trace, console
types, typescript:
→ types, typescript, interface, type, generic, zod, yup, schema,
validation, typing
```
### 3. Search Both Project and Global Memories
**Read memory files:**
```
Project memories: .nemp/memories.json
Global memories: ~/.nemp/memories.json
Memory format:
{
"key-name": "memory value content",
"another-key": "another value"
}
```
Use the Read tool to load both files. Handle missing files gracefully.
### 4. Find Matching Memories
For each memory entry, perform case-insensitive matching:
```
For each (key, value) in memories:
- Check if KEY contains any expanded keyword
- Check if VALUE contains any expanded keyword
- If match found, add to results with match type
```
**Match Priority:**
1. **Key exact match** - Key equals search term
2. **Key contains** - Key contains search term or expanded keyword
3. **Value contains** - Value contains search term or expanded keyword
### 4b. Update Vitality for All Returned Memories
For each memory that matches and will be displayed to the user, update its vitality counters:
1. If the memory lacks cortex fields, initialize with defaults first:
- `type`: `"fact"`
- `confidence`: `{"score": 0.65, "source": "agent-inferred", "reason": "Pre-cortex memory"}`
- `vitality`: all counters set to 0, `score`: 50, `state`: "active", `trend`: "stable", `last_read`: null, `decay_rate`: 0.01
- `links`: `{"goals": [], "conflicts": [], "supersedes": null, "superseded_by": null, "causal": []}`
2. For each matched memory, update:
```
vitality.reads += 1
vitality.reads_7d += 1
vitality.reads_30d += 1
vitality.last_read = <current ISO-8601 timestamp>
```
3. Recalculate `vitality.score` using the formula:
```
vitality = (
(reads_7d × 15) +
(reads_30d × 3) +
(foresight_load_ratio × 20) +
(agent_reference_ratio × 25) +
(update_frequency × 10) +
(goal_link_active × 15) -
(correction_events × 10) -
(days_since_last_read × decay_rate)
)
clamped to 0-100
```
Where:
- `foresight_load_ratio` = foresight_loads / (foresight_loads + foresight_skips), default 0 if both are 0
- `agent_reference_ratio` = agent_references / reads, default 0 if reads is 0
- `update_frequency` = update_count / max(1, days_since_created)
- `goal_link_active` = 1 if links.goals has any active goal, else 0
4. Set `vitality.state` based on score:
- 80-100: `"thriving"`
- 50-79: `"active"`
- 20-49: `"fading"`
- 1-19: `"dormant"`
- 0: `"extinct"`
5. Write ALL updated memories back to memories.json in **one write operation** (do not write per-memory).
**Log the operation:**
```bash
echo "[$(date -u +%Y-%m-%dT%H:%M:%SZ)] CONTEXT_READ agent=${CLAUDE_AGENT_NAME:-main} query=<query> matched=<n>" >> .nemp/access.log
```
### 5. Display Results
**When matches found:**
```
Context Search: "auth"
Expanded to: auth, authentication, login, session, jwt, oauth, nextauth...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
PROJECT MEMORIES
auth-config [KEY MATCH]
────────────────────────
JWT authentication with refresh tokens. Access token expires
in 15 minutes, refresh token in 7 days...
api-routes [VALUE MATCH]
────────────────────────
POST /api/login - User authentication
POST /api/register - New user signup...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
GLOBAL MEMORIES
security-best-practices [VALUE MATCH]
────────────────────────────────────
Always use bcrypt for password hashing. Implement rate
limiting on auth endpoints...
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Found 3 memories (2 project, 1 global)
Quick acDel mismo repositorio
nemp-memorySkill
Persistent local memory for AI agents. Use when starting a new session, when the user mentions remembering something, when you need project context, when making architecture decisions, or when working with other agents on the same project.
activateSlash Command
Activate Nemp Pro with your license key
activitySlash Command
View captured activity log
auto-captureSlash Command
Enable or disable automatic activity capture
auto-exportSlash Command
Enable or disable automatic cross-provider memory export
auto-syncSlash Command
Enable or disable automatic syncing to CLAUDE.md
cortexSlash Command
Nemp Cortex — memory intelligence layer (Pro)
decaySlash Command
Cortex decay engine — auto-archive stale memories (Pro)