{"id":"33f800fc-ef23-4f65-a353-f82732b86081","shortId":"pUrR7t","kind":"skill","title":"memory","tagline":"AI DevKit · Use the memory CLI as a durable knowledge layer. Search before non-trivial work, store verified reusable knowledge, update stale entries, and avoid saving transcripts, secrets, or one-off task progress.","description":"# AI DevKit Memory CLI\n\nUse `npx ai-devkit@latest memory ...` as the durable knowledge layer.\n\n## Workflow\n\n1. For implementation, debugging, review, planning, or documentation tasks, search before deep work unless the task is trivial:\n   ```bash\n   npx ai-devkit@latest memory search --query \"<task, subsystem, error, or convention>\" --limit 5\n   ```\n   For broad or risky tasks, search multiple angles: subsystem, error text, framework, command, and task intent.\n\n2. Use results as context:\n   - Trust repo files, tests, fresh command output, and explicit user instructions over memory.\n   - If memory conflicts with verified evidence, use the evidence and update the stale memory.\n   - Mention memory only when it changes the plan or avoids asking the user again.\n\n3. Search before storing:\n   ```bash\n   npx ai-devkit@latest memory search --query \"<knowledge to store>\" --table\n   ```\n\n4. Store or update only after the quality gate passes.\n\n## Quality Gate\n\nBefore storing, all must be true:\n\n- Future sessions are likely to reuse it.\n- It is verified by code, docs, tests, command output, or explicit user instruction.\n- It is not merely a restatement of obvious nearby files unless it prevents repeated agent mistakes.\n- It is scoped narrowly enough.\n- Existing memory does not already cover it.\n- It contains no secrets, credentials, private customer data, personal data, raw logs, or temporary paths.\n\nStore:\n- Project conventions, user preferences, durable decisions.\n- Reusable fixes, testing patterns, commands, setup gotchas.\n- Non-obvious constraints, architecture rules, failure patterns.\n\nDo not store:\n- Task progress, transcripts, speculation, generic programming facts.\n- Raw errors without diagnosis.\n- Anything the user did not intend to persist.\n\n## Commands\n\n### Search\n\n```bash\nnpx ai-devkit@latest memory search \\\n  --query \"<query>\" \\\n  --tags \"<tags>\" \\\n  --scope \"<scope>\" \\\n  --limit 5\n```\n\nUse `--table` to get IDs for updates:\n\n```bash\nnpx ai-devkit@latest memory search --query \"<query>\" --table\n```\n\nOptions: `--query/-q` required; `--tags`; `--scope/-s`; `--limit/-l` from 1-20; `--table`.\n\n### Store\n\n```bash\nnpx ai-devkit@latest memory store \\\n  --title \"<actionable title, 10-100 chars>\" \\\n  --content \"<context, guidance, evidence, exceptions>\" \\\n  --tags \"<lowercase,tags>\" \\\n  --scope \"<global|project:name|repo:org/repo>\"\n```\n\nUse this content shape when helpful:\n\n```text\nContext: Where this applies.\nGuidance: What to do.\nEvidence: File, command, test, or user instruction.\nExceptions: When not to apply it.\n```\n\n### Update\n\nFind the ID with `search --table`, then update only changed fields:\n\n```bash\nnpx ai-devkit@latest memory update \\\n  --id \"<memory-id>\" \\\n  --title \"<updated title>\" \\\n  --content \"<updated content>\" \\\n  --tags \"<replacement,tags>\" \\\n  --scope \"<updated scope>\"\n```\n\n`--tags` replaces all existing tags.\n\n## Scoping\n\nUse the narrowest useful scope:\n\n- `repo:<org/repo>` for one repository.\n- `project:<name>` for one app, product, or workspace.\n- `global` only for knowledge that applies across unrelated projects.\n\nIf unsure, use a narrower scope.\n\n## Troubleshooting\n\n- CLI missing: run `npx ai-devkit@latest --version`.\n- Duplicate title: search, then update the existing item if it is the same knowledge.\n- Empty results: broaden terms, remove filters, or search symptoms and subsystem names separately.\n- Validation error: check title/content lengths, query length, and `--limit` range.\n- DB path: default is `~/.ai-devkit/memory.db`; project config can override it automatically.","tags":["memory","devkit","codeaholicguy","agent-skills","ai-assisted-development","antigravity","claude-code","codex","cursor","development","engineering","engineering-enablement"],"capabilities":["skill","source-codeaholicguy","skill-memory","topic-agent-skills","topic-ai-assisted-development","topic-antigravity","topic-claude-code","topic-codex","topic-cursor","topic-development","topic-engineering","topic-engineering-enablement","topic-engineering-experience","topic-prd"],"categories":["ai-devkit"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/codeaholicguy/ai-devkit/memory","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add codeaholicguy/ai-devkit","source_repo":"https://github.com/codeaholicguy/ai-devkit","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 1196 github stars · SKILL.md body (3,552 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:53:09.230Z","embedding":null,"createdAt":"2026-04-18T21:55:31.035Z","updatedAt":"2026-05-18T18:53:09.230Z","lastSeenAt":"2026-05-18T18:53:09.230Z","tsv":"'-100':347 '-20':332 '/.ai-devkit/memory.db':507 '1':54,331 '10':346 '2':104 '3':150 '4':164 '5':87,303 'across':447 'action':344 'agent':216 'ai':2,37,44,75,157,294,314,338,406,462 'ai-devkit':43,74,156,293,313,337,405,461 'alreadi':227 'angl':95 'anyth':281 'app':437 'appli':373,389,446 'architectur':263 'ask':146 'automat':513 'avoid':27,145 'bash':72,154,291,311,335,403 'broad':89 'broaden':482 'chang':141,401 'char':348 'check':495 'cli':7,40,457 'code':193 'command':100,114,196,256,289,380 'config':509 'conflict':124 'constraint':262 'contain':231 'content':349,365,413 'context':108,350,370 'convent':85,247 'cover':228 'credenti':234 'custom':236 'data':237,239 'db':503 'debug':57 'decis':251 'deep':65 'default':505 'devkit':3,38,45,76,158,295,315,339,407,463 'diagnosi':280 'doc':194 'document':61 'duplic':466 'durabl':10,50,250 'empti':480 'enough':222 'entri':25 'error':83,97,278,494 'evid':127,130,352,378 'except':353,385 'exist':223,421,472 'explicit':117,199 'fact':276 'failur':265 'field':402 'file':111,211,379 'filter':485 'find':392 'fix':253 'framework':99 'fresh':113 'futur':182 'gate':172,175 'generic':274 'get':307 'global':358,441 'gotcha':258 'guidanc':351,374 'help':368 'id':308,394,411 'implement':56 'instruct':119,201,384 'intend':286 'intent':103 'item':473 'knowledg':11,22,51,444,479 'l':329 'latest':46,77,159,296,316,340,408,464 'layer':12,52 'length':497,499 'like':185 'limit':86,302,328,501 'log':241 'lowercas':355 'memori':1,6,39,47,78,121,123,135,137,160,224,297,317,341,409 'mention':136 'mere':205 'miss':458 'mistak':217 'multipl':94 'must':179 'name':360,491 'narrow':454 'narrowest':426 'narrowli':221 'nearbi':210 'non':16,260 'non-obvi':259 'non-trivi':15 'npx':42,73,155,292,312,336,404,460 'obvious':209,261 'one':33,432,436 'one-off':32 'option':321 'org/repo':362,430 'output':115,197 'overrid':511 'pass':173 'path':244,504 'pattern':255,266 'persist':288 'person':238 'plan':59,143 'prefer':249 'prevent':214 'privat':235 'product':438 'program':275 'progress':36,271 'project':246,359,434,449,508 'q':323 'qualiti':171,174 'queri':80,162,299,319,322,498 'rang':502 'raw':240,277 'remov':484 'repeat':215 'replac':415,419 'repo':110,361,429 'repositori':433 'requir':324 'restat':207 'result':106,481 'reus':187 'reusabl':21,252 'review':58 'riski':91 'rule':264 'run':459 'save':28 'scope':220,301,326,357,417,423,428,455 'search':13,63,79,93,151,161,290,298,318,396,468,487 'secret':30,233 'separ':492 'session':183 'setup':257 'shape':366 'skill' 'skill-memory' 'source-codeaholicguy' 'specul':273 'stale':24,134 'store':19,153,165,177,245,269,334,342 'subsystem':82,96,490 'symptom':488 'tabl':163,305,320,333,397 'tag':300,325,354,356,414,416,418,422 'task':35,62,69,81,92,102,270 'temporari':243 'term':483 'test':112,195,254,381 'text':98,369 'titl':343,345,412,467 'title/content':496 'topic-agent-skills' 'topic-ai-assisted-development' 'topic-antigravity' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-development' 'topic-engineering' 'topic-engineering-enablement' 'topic-engineering-experience' 'topic-prd' 'transcript':29,272 'trivial':17,71 'troubleshoot':456 'true':181 'trust':109 'unless':67,212 'unrel':448 'unsur':451 'updat':23,132,167,310,391,399,410,470 'use':4,41,105,128,304,363,424,427,452 'user':118,148,200,248,283,383 'valid':493 'verifi':20,126,191 'version':465 'without':279 'work':18,66 'workflow':53 'workspac':440","prices":[{"id":"ae26f367-76da-45cf-b019-a8eb26420122","listingId":"33f800fc-ef23-4f65-a353-f82732b86081","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"codeaholicguy","category":"ai-devkit","install_from":"skills.sh"},"createdAt":"2026-04-18T21:55:31.035Z"}],"sources":[{"listingId":"33f800fc-ef23-4f65-a353-f82732b86081","source":"github","sourceId":"codeaholicguy/ai-devkit/memory","sourceUrl":"https://github.com/codeaholicguy/ai-devkit/tree/main/skills/memory","isPrimary":false,"firstSeenAt":"2026-04-18T21:55:31.035Z","lastSeenAt":"2026-05-18T18:53:09.230Z"}],"details":{"listingId":"33f800fc-ef23-4f65-a353-f82732b86081","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"codeaholicguy","slug":"memory","github":{"repo":"codeaholicguy/ai-devkit","stars":1196,"topics":["agent-skills","ai","ai-assisted-development","antigravity","claude-code","codex","cursor","development","engineering","engineering-enablement","engineering-experience","prd"],"license":null,"html_url":"https://github.com/codeaholicguy/ai-devkit","pushed_at":"2026-05-17T00:23:12Z","description":"A universal CLI toolkit for AI agent skills, enabling structured AI-assisted development across tools like Cursor, Claude Code, Codex, and more.","skill_md_sha":"0153de0b2b99dbb82cb73364254d7ae40bb48c7b","skill_md_path":"skills/memory/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/codeaholicguy/ai-devkit/tree/main/skills/memory"},"layout":"multi","source":"github","category":"ai-devkit","frontmatter":{"name":"memory","description":"AI DevKit · Use the memory CLI as a durable knowledge layer. Search before non-trivial work, store verified reusable knowledge, update stale entries, and avoid saving transcripts, secrets, or one-off task progress."},"skills_sh_url":"https://skills.sh/codeaholicguy/ai-devkit/memory"},"updatedAt":"2026-05-18T18:53:09.230Z"}}