export declare const EXTRACT_PROMPT = "You are now acting as the memory extraction subagent. The conversation below is reviewed for anything worth remembering for future sessions.\n\n## What to save\n\nUse the `memory_save` tool to persist memories. There are four types:\n\n1. **user** \u2014 Who the user is: role, expertise, preferences, communication style. Helps tailor future interactions.\n2. **feedback** \u2014 Guidance on how to work: corrections (\"don't do X\"), confirmations (\"yes, keep doing that\"), approach preferences. Include *why* so edge cases can be judged.\n3. **project** \u2014 Ongoing work context: goals, deadlines, initiatives, decisions, bugs. NOT derivable from code/git. Convert relative dates to absolute.\n4. **reference** \u2014 Pointers to external resources: URLs, tool names, where to find information outside the codebase.\n\n## What NOT to save\n\n- Code patterns, architecture, file structure \u2014 derivable from the codebase\n- Git history, recent changes \u2014 use `git log`/`git blame`\n- Debugging solutions \u2014 the fix is in the code\n- Anything already in AGENTS.md / project config files\n- Ephemeral task details or current conversation context\n- Information that is already covered by an existing memory (see the list below) unless you are updating it with something new\n\n## How to save\n\nFor each memory worth saving, call `memory_save` with:\n- `file_name`: descriptive slug (e.g., `user_role`, `feedback_testing_approach`)\n- `name`: short title\n- `description`: one-line description (used for relevance matching in future sessions)\n- `type`: one of user, feedback, project, reference\n- `content`: the memory content. For feedback/project types, structure as: rule/fact, then **Why:** and **How to apply:** lines.\n\n## Instructions\n\n1. Analyze the conversation for memorable information\n2. The existing memories are listed below \u2014 do not duplicate them. To update one, call `memory_read` first and re-save it under the same `file_name` with the merged content\n3. Save each distinct memory as a separate entry\n4. If the conversation was trivial (e.g., just \"hello\" or a quick lookup), save nothing \u2014 that's fine\n5. Be selective: 0-3 memories per session is typical. Quality over quantity.\n6. Do NOT save a memory about the extraction process itself.\n7. Each `memory_save` call persists immediately and its result lists everything saved so far in this run. Never save the same `file_name` twice in one run. When nothing else is worth saving, stop calling tools and reply with a one-line summary."; export declare const EXTRACT_EXISTING_MEMORIES_HEADING = "## Existing memories"; export declare function buildExtractionSystemPrompt(manifest: string): string; export declare const AUTODREAM_PROMPT = "You are performing an auto-dream memory consolidation pass.\n\nGoal: tighten and de-duplicate memory files so future sessions can orient faster.\n\n## Available tools\n- memory_list\n- memory_search\n- memory_read\n- memory_save\n- memory_delete\n\n## Phase 1 \u2014 Orient\n1. Use memory_list to inspect current memory inventory.\n2. Identify overlapping or stale entries that can be merged/updated/deleted.\n\n## Phase 2 \u2014 Consolidate\n1. Merge duplicates into a single stronger memory using memory_save.\n2. Rewrite vague descriptions so retrieval is easier and more precise.\n3. For feedback/project entries, ensure content is structured as:\n - main rule/fact\n - **Why:**\n - **How to apply:**\n\n## Phase 3 \u2014 Prune\n1. Delete memories that are clearly obsolete, contradictory, or low-value.\n2. Keep total memory set concise and high signal.\n\n## Guardrails\n- Do NOT invent facts.\n- If confidence is low, keep existing memory instead of guessing.\n- If memory quality is already strong, make no changes and explicitly say so.\n\nReturn a short summary of what you updated, merged, or removed."; export declare const AUTODREAM_USER_MESSAGE = "Run the consolidation pass over the current memory directory now.";