From 75d0217ccce430fee3d4f744b28abe12900983b9 Mon Sep 17 00:00:00 2001 From: Nicholai Date: Mon, 23 Feb 2026 07:04:39 -0700 Subject: [PATCH] 2026-02-23T14-04-39_auto_memory/memories.db-wal, memory/2026-02-23-session- --- .daemon/logs/signet-2026-02-23.log | 21 ++++++++++++++++++ memory/2026-02-23-session-initialization-8.md | 5 +++++ memory/memories.db-wal | Bin 4482592 -> 4482592 bytes 3 files changed, 26 insertions(+) create mode 100644 memory/2026-02-23-session-initialization-8.md diff --git a/.daemon/logs/signet-2026-02-23.log b/.daemon/logs/signet-2026-02-23.log index c46b31464..63270b761 100644 --- a/.daemon/logs/signet-2026-02-23.log +++ b/.daemon/logs/signet-2026-02-23.log @@ -6703,3 +6703,24 @@ {"timestamp":"2026-02-23T14:04:20.532Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai"}} {"timestamp":"2026-02-23T14:04:20.533Z","level":"info","category":"hooks","message":"Session start completed","data":{"harness":"claude-code","project":"/home/nicholai","memoryCount":12,"injectChars":5988,"injectPreview":"[memory active | /remember | /recall]\n\n## Agent Instructions\n\nYou are Mr Claude, a helpful and thoughtful AI assistant.\n\nBehavioral Guidelines\n---\n\n- Be concise and direct\n- Ask clarifying questions when needed\n- Remember user preferences across sessions\n- Avoid sycophancy - be honest even when it's uncomfortable\n- Express nuanced judgment rather than hedging\n\n\nSignet Agent System\n===\n\nYour identity and memory are managed by Signet, a portable agent identity\nsystem. This lets you maintain consistent behavior across different AI\nplatforms (Claude Code, OpenCode, Cursor, etc.).\n\nKey files in `~/.agents/`:\n- `agent.yaml` - Configuration\n- `AGENTS.md` - Instructions (this file)\n- `SOUL.md` - Personality and tone\n- `IDENTITY.md` - Agent identity\n- `USER.md` - User profile\n- `MEMORY.md` - Working memory summary\n\nDashboard: http://localhost:3850\n\nMemory\n---\n\nYou have access to persistent memory via Signet:\n\n```bash\nsignet remember \"User prefers dark mode and vim keybindings\"\nsignet recall \"user preferences\"\n```\n\nMemory is automatically loaded at session start. Important context is\nsummarized in `~/.agents/MEMORY.md`.\n\nSecrets\n---\n\nAPI keys and tokens are stored securely in Signet:\n\n```bash\nsignet secret get OPENAI_API_KEY\nsignet secret list\n```\n\n\nAbout Your User\n---\n\nAdd information about yourself here so your agent knows who you are.\n\n- Name: \n- Timezone:\n- Preferences:\n\nProjects\n---\n\nList your active projects here.\n\n-\n\n## Working Memory\n\n\n\nCurrent Context\n\nFull integration of OpenCode plugin system and optimization of embeddings view performance in the Signet dashboard.\n\nActive Projects\n\nOpenCode Plugin Full Integration — `packages/opencode-plugin/`, `packages/connector-opencode/`\n- Status: Implementation complete, awaiting build verification\n- What was done: Removed string-template hack, created standalone plugin package with 8 tool definitions, refactored connector to embed compiled plugin, enforced strict TypeScript discipline\n- Next: Verify build passes, test plugin auto-discovery in OpenCode\n\nEmbeddings View Performance Optimization — `packages/cli/dashboard/src/lib/components/tabs/EmbeddingsTab.svelte`, `EmbeddingCanvas2D.svelte`\n- Status: Complete (7 fixes applied)\n- What was done: Implemented rAF idle loop, converted reactive hover state to derived, added requestRedraw helper for interactions, fixed edge batching\n- Next: Monitor CPU usage and interaction responsiveness\n\nRecent Wo\n...[truncated 3488 chars]","durationMs":1}} {"timestamp":"2026-02-23T14:04:20.534Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:25.593Z","level":"info","category":"git","message":"Auto-committed","data":{"message":"2026-02-23T14-04-25_auto_memory/memories.db-wal, memory/memories.db-wal, me","filesChanged":4}} +{"timestamp":"2026-02-23T14:04:25.841Z","level":"info","category":"summary-worker","message":"Wrote session summary","data":{"path":"/home/nicholai/.agents/memory/2026-02-23-session-initialization-8.md","sessionKey":"579c6208-d667-4263-b9d6-2dd5e2e4c067","project":"/home/nicholai","summaryChars":379,"summaryPreview":"# 2026-02-23 Session Notes\n\n## Session Initialization\n\nSession started with Signet agent system active, loading persistent memory from ~/.agents/ configuration and working memory summary from ~/.claude/projects/-home-nicholai/memory/MEMORY.md. User ran /mcp command to dismiss the MCP (Model Context Protocol) dialog. No substantive coding work was performed during this session."}} +{"timestamp":"2026-02-23T14:04:25.841Z","level":"info","category":"summary-worker","message":"Inserted session facts","data":{"total":0,"saved":0,"deduplicated":0,"factsPreview":[]}} +{"timestamp":"2026-02-23T14:04:25.841Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:25.842Z","level":"info","category":"watcher","message":"File added","data":{"path":"/home/nicholai/.agents/memory/2026-02-23-session-initialization-8.md"}} +{"timestamp":"2026-02-23T14:04:26.675Z","level":"info","category":"memory","message":"Memory saved","data":{"id":"6d4bada8-3ebf-4b79-b2e1-9e09769c6cab","type":"fact","pinned":false,"embedded":true}} +{"timestamp":"2026-02-23T14:04:26.675Z","level":"info","category":"watcher","message":"Ingested memory file","data":{"path":"/home/nicholai/.agents/memory/2026-02-23-session-initialization-8.md","chunks":1,"sections":1,"filename":"2026-02-23-session-initialization-8"}} +{"timestamp":"2026-02-23T14:04:26.675Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:27.774Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:29.138Z","level":"info","category":"summary-worker","message":"Enqueued session summary job","data":{"jobId":"68d3854c-6b28-469d-8e1b-d8b785dfb601","harness":"claude-code","sessionKey":"690f733d-635e-4567-85fa-a0d35f977c31","project":"/home/nicholai","transcriptChars":5901,"transcriptPreview":"{\"parentUuid\":null,\"isSidechain\":false,\"userType\":\"external\",\"cwd\":\"/home/nicholai\",\"sessionId\":\"690f733d-635e-4567-85fa-a0d35f977c31\",\"version\":\"2.1.50\",\"gitBranch\":\"HEAD\",\"type\":\"progress\",\"data\":{\"type\":\"hook_progress\",\"hookEvent\":\"SessionStart\",\"hookName\":\"SessionStart:startup\",\"command\":\"signet hook session-start -H claude-code --project \\\"$(pwd)\\\"\"},\"parentToolUseID\":\"22f05325-2349-4cc5-af06-eba92617f0cd\",\"toolUseID\":\"22f05325-2349-4cc5-af06-eba92617f0cd\",\"timestamp\":\"2026-02-23T14:04:16.374Z\",\"uuid\":\"71c2e533-b6a6-4939-ade5-14bb4fcf4f49\"}\n{\"type\":\"file-history-snapshot\",\"messageId\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"snapshot\":{\"messageId\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"trackedFileBackups\":{},\"timestamp\":\"2026-02-23T14:04:19.086Z\"},\"isSnapshotUpdate\":false}\n{\"parentUuid\":\"71c2e533-b6a6-4939-ade5-14bb4fcf4f49\",\"isSidechain\":false,\"userType\":\"external\",\"cwd\":\"/home/nicholai\",\"sessionId\":\"690f733d-635e-4567-85fa-a0d35f977c31\",\"version\":\"2.1.50\",\"gitBranch\":\"HEAD\",\"type\":\"user\",\"message\":{\"role\":\"user\",\"content\":\"hello!\"},\"uuid\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"timestamp\":\"2026-02-23T14:04:18.962Z\",\"todos\":[],\"permissionMode\":\"bypassPermissions\"}\n{\"parentUuid\n...[truncated 4700 chars]"}} +{"timestamp":"2026-02-23T14:04:29.138Z","level":"info","category":"hooks","message":"Session end queued for summary","data":{"jobId":"68d3854c-6b28-469d-8e1b-d8b785dfb601"}} +{"timestamp":"2026-02-23T14:04:29.138Z","level":"info","category":"hooks","message":"Session end transcript queued","data":{"harness":"claude-code","project":"/home/nicholai","sessionKey":"690f733d-635e-4567-85fa-a0d35f977c31","transcriptPath":"/home/nicholai/.claude/projects/-home-nicholai/690f733d-635e-4567-85fa-a0d35f977c31.jsonl","transcriptChars":5901,"queuedChars":5901,"transcriptPreview":"{\"parentUuid\":null,\"isSidechain\":false,\"userType\":\"external\",\"cwd\":\"/home/nicholai\",\"sessionId\":\"690f733d-635e-4567-85fa-a0d35f977c31\",\"version\":\"2.1.50\",\"gitBranch\":\"HEAD\",\"type\":\"progress\",\"data\":{\"type\":\"hook_progress\",\"hookEvent\":\"SessionStart\",\"hookName\":\"SessionStart:startup\",\"command\":\"signet hook session-start -H claude-code --project \\\"$(pwd)\\\"\"},\"parentToolUseID\":\"22f05325-2349-4cc5-af06-eba92617f0cd\",\"toolUseID\":\"22f05325-2349-4cc5-af06-eba92617f0cd\",\"timestamp\":\"2026-02-23T14:04:16.374Z\",\"uuid\":\"71c2e533-b6a6-4939-ade5-14bb4fcf4f49\"}\n{\"type\":\"file-history-snapshot\",\"messageId\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"snapshot\":{\"messageId\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"trackedFileBackups\":{},\"timestamp\":\"2026-02-23T14:04:19.086Z\"},\"isSnapshotUpdate\":false}\n{\"parentUuid\":\"71c2e533-b6a6-4939-ade5-14bb4fcf4f49\",\"isSidechain\":false,\"userType\":\"external\",\"cwd\":\"/home/nicholai\",\"sessionId\":\"690f733d-635e-4567-85fa-a0d35f977c31\",\"version\":\"2.1.50\",\"gitBranch\":\"HEAD\",\"type\":\"user\",\"message\":{\"role\":\"user\",\"content\":\"hello!\"},\"uuid\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"timestamp\":\"2026-02-23T14:04:18.962Z\",\"todos\":[],\"permissionMode\":\"bypassPermissions\"}\n{\"parentUuid\":\"7fb2a172-a18d-4d06-b31e-80f8c551b8ec\",\"isSidechain\":false,\"userType\":\"external\",\"cwd\":\"/home/nicholai\",\"sessionId\":\"690f733d-635e-4567-85fa-a0d35f977c31\",\"version\":\"2.1.50\",\"gitBranch\":\"HEAD\",\"message\":{\"model\":\"claude-sonnet-4-6\",\"id\":\"msg_01GF3xAtnsoZsJXL2hrAmpDg\",\"type\":\"message\",\"role\":\"assis\n...[truncated 4400 chars]"}} +{"timestamp":"2026-02-23T14:04:29.139Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:31.343Z","level":"info","category":"summary-worker","message":"Processing session summary","data":{"jobId":"68d3854c-6b28-469d-8e1b-d8b785dfb601","harness":"claude-code","attempt":1,"sessionKey":"690f733d-635e-4567-85fa-a0d35f977c31","project":"/home/nicholai"}} +{"timestamp":"2026-02-23T14:04:31.344Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:31.556Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai"}} +{"timestamp":"2026-02-23T14:04:31.557Z","level":"info","category":"hooks","message":"Session start completed","data":{"harness":"claude-code","project":"/home/nicholai","memoryCount":12,"injectChars":5988,"injectPreview":"[memory active | /remember | /recall]\n\n## Agent Instructions\n\nYou are Mr Claude, a helpful and thoughtful AI assistant.\n\nBehavioral Guidelines\n---\n\n- Be concise and direct\n- Ask clarifying questions when needed\n- Remember user preferences across sessions\n- Avoid sycophancy - be honest even when it's uncomfortable\n- Express nuanced judgment rather than hedging\n\n\nSignet Agent System\n===\n\nYour identity and memory are managed by Signet, a portable agent identity\nsystem. This lets you maintain consistent behavior across different AI\nplatforms (Claude Code, OpenCode, Cursor, etc.).\n\nKey files in `~/.agents/`:\n- `agent.yaml` - Configuration\n- `AGENTS.md` - Instructions (this file)\n- `SOUL.md` - Personality and tone\n- `IDENTITY.md` - Agent identity\n- `USER.md` - User profile\n- `MEMORY.md` - Working memory summary\n\nDashboard: http://localhost:3850\n\nMemory\n---\n\nYou have access to persistent memory via Signet:\n\n```bash\nsignet remember \"User prefers dark mode and vim keybindings\"\nsignet recall \"user preferences\"\n```\n\nMemory is automatically loaded at session start. Important context is\nsummarized in `~/.agents/MEMORY.md`.\n\nSecrets\n---\n\nAPI keys and tokens are stored securely in Signet:\n\n```bash\nsignet secret get OPENAI_API_KEY\nsignet secret list\n```\n\n\nAbout Your User\n---\n\nAdd information about yourself here so your agent knows who you are.\n\n- Name: \n- Timezone:\n- Preferences:\n\nProjects\n---\n\nList your active projects here.\n\n-\n\n## Working Memory\n\n\n\nCurrent Context\n\nFull integration of OpenCode plugin system and optimization of embeddings view performance in the Signet dashboard.\n\nActive Projects\n\nOpenCode Plugin Full Integration — `packages/opencode-plugin/`, `packages/connector-opencode/`\n- Status: Implementation complete, awaiting build verification\n- What was done: Removed string-template hack, created standalone plugin package with 8 tool definitions, refactored connector to embed compiled plugin, enforced strict TypeScript discipline\n- Next: Verify build passes, test plugin auto-discovery in OpenCode\n\nEmbeddings View Performance Optimization — `packages/cli/dashboard/src/lib/components/tabs/EmbeddingsTab.svelte`, `EmbeddingCanvas2D.svelte`\n- Status: Complete (7 fixes applied)\n- What was done: Implemented rAF idle loop, converted reactive hover state to derived, added requestRedraw helper for interactions, fixed edge batching\n- Next: Monitor CPU usage and interaction responsiveness\n\nRecent Wo\n...[truncated 3488 chars]","durationMs":1}} +{"timestamp":"2026-02-23T14:04:31.557Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} +{"timestamp":"2026-02-23T14:04:34.888Z","level":"info","category":"hooks","message":"Session start hook","data":{"harness":"claude-code","project":"/home/nicholai"}} +{"timestamp":"2026-02-23T14:04:34.889Z","level":"info","category":"hooks","message":"Session start completed","data":{"harness":"claude-code","project":"/home/nicholai","memoryCount":12,"injectChars":5988,"injectPreview":"[memory active | /remember | /recall]\n\n## Agent Instructions\n\nYou are Mr Claude, a helpful and thoughtful AI assistant.\n\nBehavioral Guidelines\n---\n\n- Be concise and direct\n- Ask clarifying questions when needed\n- Remember user preferences across sessions\n- Avoid sycophancy - be honest even when it's uncomfortable\n- Express nuanced judgment rather than hedging\n\n\nSignet Agent System\n===\n\nYour identity and memory are managed by Signet, a portable agent identity\nsystem. This lets you maintain consistent behavior across different AI\nplatforms (Claude Code, OpenCode, Cursor, etc.).\n\nKey files in `~/.agents/`:\n- `agent.yaml` - Configuration\n- `AGENTS.md` - Instructions (this file)\n- `SOUL.md` - Personality and tone\n- `IDENTITY.md` - Agent identity\n- `USER.md` - User profile\n- `MEMORY.md` - Working memory summary\n\nDashboard: http://localhost:3850\n\nMemory\n---\n\nYou have access to persistent memory via Signet:\n\n```bash\nsignet remember \"User prefers dark mode and vim keybindings\"\nsignet recall \"user preferences\"\n```\n\nMemory is automatically loaded at session start. Important context is\nsummarized in `~/.agents/MEMORY.md`.\n\nSecrets\n---\n\nAPI keys and tokens are stored securely in Signet:\n\n```bash\nsignet secret get OPENAI_API_KEY\nsignet secret list\n```\n\n\nAbout Your User\n---\n\nAdd information about yourself here so your agent knows who you are.\n\n- Name: \n- Timezone:\n- Preferences:\n\nProjects\n---\n\nList your active projects here.\n\n-\n\n## Working Memory\n\n\n\nCurrent Context\n\nFull integration of OpenCode plugin system and optimization of embeddings view performance in the Signet dashboard.\n\nActive Projects\n\nOpenCode Plugin Full Integration — `packages/opencode-plugin/`, `packages/connector-opencode/`\n- Status: Implementation complete, awaiting build verification\n- What was done: Removed string-template hack, created standalone plugin package with 8 tool definitions, refactored connector to embed compiled plugin, enforced strict TypeScript discipline\n- Next: Verify build passes, test plugin auto-discovery in OpenCode\n\nEmbeddings View Performance Optimization — `packages/cli/dashboard/src/lib/components/tabs/EmbeddingsTab.svelte`, `EmbeddingCanvas2D.svelte`\n- Status: Complete (7 fixes applied)\n- What was done: Implemented rAF idle loop, converted reactive hover state to derived, added requestRedraw helper for interactions, fixed edge batching\n- Next: Monitor CPU usage and interaction responsiveness\n\nRecent Wo\n...[truncated 3488 chars]","durationMs":1}} +{"timestamp":"2026-02-23T14:04:34.890Z","level":"info","category":"watcher","message":"File changed","data":{"path":"/home/nicholai/.agents/memory/memories.db-wal"}} diff --git a/memory/2026-02-23-session-initialization-8.md b/memory/2026-02-23-session-initialization-8.md new file mode 100644 index 000000000..791bebe2c --- /dev/null +++ b/memory/2026-02-23-session-initialization-8.md @@ -0,0 +1,5 @@ +# 2026-02-23 Session Notes + +## Session Initialization + +Session started with Signet agent system active, loading persistent memory from ~/.agents/ configuration and working memory summary from ~/.claude/projects/-home-nicholai/memory/MEMORY.md. User ran /mcp command to dismiss the MCP (Model Context Protocol) dialog. No substantive coding work was performed during this session. \ No newline at end of file diff --git a/memory/memories.db-wal b/memory/memories.db-wal index ad9ba6b86d0c372de81c5cf3e381cc388760a500..5b224a0a544732bf83ab002b635e0fbac1e61343 100644 GIT binary patch delta 35770 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 delta 16458 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