Claude Web Preferred for this use case where the knowledge is maximally general and maximally applicable, put in Settings → General → Profile > What personal preferences... @ character triggers mention/autocomplete dropdown. Hit ESC to dismiss. Searching and inferred references of previous chat text via RAG is always available enabled (only for paid accounts). Scope is Threads in current (or non) Project. Settings → Capabilities → Memory > Search and reference chats THIS IS MUCH, MUCH more broad, fixed, and deterministic than typical AI memory settings. *LEAVE OFF! Pre-injecting history tokens from all other threads consumes thread capacity and happens while paid accounts enable Settings → Capabilities → Memory > Generate memory from chat history Generate memory from chat history: Claude's optional feature for cross-thread context sharing. It is much more liberal sharing than the Perplexity and Gemini personal-history-oriented sharing. It's high-impact since it all loads completely and directory into all thread RAMs. The scope of the sharing is project-specific or non-project-specific. The shared (project- and non-) knowledge is only updated daily. Claude web doesn't do automations. Generate a Turn-by-Turn Index of this conversation. List every User Post and its corresponding AI Response in chronological order. I need a comprehensive list of every exchange we've had. Create an auto-updating RHS panel index/toc: Create a Project Dashboard Artifact that lists every question and answer in this thread. Update this Artifact (every time we reach a milestone|every 5 turns). [the update frequency is important because it can take 15 s. to regenerate a long thread index] Artifacts is comparable to ChatGPT and Gemini Canvas feature. Web user post format interpretation Generally, non-fenced input text often gets text-entry-time-decorated, not submit-time-decorated. Fenced blocks just receive the exact text, same as all AI chat UIs. Keyboard-entered markdown lists intercept entry into lists, and you modify nest levels with tab key. Like the other AI web interfaces, posts are trimmed at very beginning in and very end. Multiple consecutive line breaks are collapsed to one, other wise line breaks are preserved. Internal space characters are preserved. `inline code` formatting works well only if entered for forward text entry. Workaround for adding or moving inline code is to paste in the new text. When you do it that way you don't get the immediately-decorated input but instead it gets styled only upon submit, like Perplexity and Gemini always do. Generally, use `...` in Code Terminal only where needed to distinguish that span, because it doesn't give any presentation benefit like you get with the web interfaces. TODO: Verify that this is true for Claude and not Gemini: Interrupt responses. There's a circular stop button just Perplexity's square one. Forking/merging: Just back-edit. To fork at the tail User Message, add a dummy post first (can later update the dummy post). ====================================== Code Terminal: Initialization. Populate .claudeignore and CLAUDE.md, then run /init inside claude. Seed CLAUDE.md (so that /init will add to it) === Prefix the file with "# CLAUDE.md" # CLAUDE.md This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. === @ is used to refer to files in the project folder. inject a session-name-specific model into the claude invocation automatically. App works great and installed with a simple command. Linux+WSL-specific: curl -fsSL https://claude.ai/install.sh | bash Then just run "clause" in the working directory. You may be prompted to log in. /init reads all the files in the project into ./CLAUDE>md, honoring .claude_ignore. /status is crucial /btw to add side-questions /rename new-thread-name /voice hold space to speak. It's a persistent toggle. Terminal uses the term "effort" for thinking mode. To see use /model not /status. /model can safely be used for just checking too. DEFAULT for Pro accounts is /model Sonnet 4.6 + High effort. Excellent default! Model can be specified per "claude" invocation. Can use something like a shell function to In my Konsoles, SHIFT+Enter doesn't work. Also CTRL+v uses some unusual system clipboard buffer. So to enter a linebreak without submitting I copy the linebreak from system clipboard with CTRL+V (i.e. CTRL + capital V). I use klipper to very easily get the linebreak back into the system clipboard. Session IDs are critical. By default when you open claude you get a clear/empty memory slate. You can create session names (aliases) for the IDs. Most often you will start claude with "claude -c" to resume the latest session for this working area. To switch between multiple sessions (multiple feature work) invoke with "clause -r " where is a session ID or name. Double-tap ESC key to rewind User Messages BUT ONLY BEFORE GET THE RESPONSE. To reedit previous, do immediately: EST ESC ↓ If you already got a reply then you must back-edit with /rewind. See below. Shared knowledge, such as coding preferences‥ For Claude Code Terminal the widest scope of sharing is computer-wide, via ~/.claude/CLAUDE.md. (However, to prevent the extra manual chore of synchronizing this file across all computers where I use Clauѕe Code Terminal, I prefer to duplicate the shared knowledge inside project-specific CLAUDE.md files distributed automatically by git. Prompt listing: /rewind + ESC. Back-editing: /rewind, select a prompt and ENTER. Execute npm commands like: Run the X, e.g. "run lint-all". Step-wise Claude direction {Enter|Exit}PlanMode It examines codebase, writes plan to file. I approve. Then we execute. Task{Create|Update|Tasklist} <<<<<<< HEAD No simple way to log conversations, but you can get it after the fact with: # Get latest session file, print user/assistant turns only find ~/.claude/projects -name '*.jsonl' -newer /tmp/.last_claude \ | sort -t/ -k1 | tail -1 \ | xargs jq -r 'select(.type=="user" or .type=="assistant") | "\(.type): \(.message.content[0].text // "")"' claude-code-exporter docs (minimal!) https://npmjs.com/package/claude-code-exporter (Claude Conversation Extractor looks powerful but Python-based) By default writes to ./claude-prompts/hex-strings-first-prompt.md and ./aggregated-prompts Seems there's no way to write outputs/assistant entries Rewrites ALL files (unless you specify time rean) each time. Doesn't honor thread names. No simple way to log conversations, but they are all saved to .clause/projects/ as .jsonl claude-conversation-extractor reads those .jsonl files. Project-independent ArchLinux: yay -S python-pipx Rocky: sudo dnf instlal epel-release; sudo dnf install pipx pipx install claude-conversation-extractor (assuming that ~/.local/bin already in PATH) claude-extract + claude-search is normal CLI claud-start is full CUI SAMPLE Write to "~/Desktop/Claude logs/", so use: --output dir/path (rel. to invocat. dir!) claude-extract --list claude-extract --all claude-extract --extract 2 claude-extract --search[-regex] EXPR # Can view or extract from the finding claude-search 'Some term' My wrapper script (by custom Claude project): refresh-claudelogs CROSS-COMPUTER Claude Code / Terminal SYNCHRONIZATION Synchronize ~/.claude branch