Update SSH instructions to use aliases, fix tea --repo flag, sync plugins/mcp
- CLAUDE.md: SSH section now mandates aliases from ~/.ssh/config instead of manual commands - CLAUDE.md: Gitea tea CLI always passes --repo owner/name to avoid detection failures - MCP manager skill updates - Plugin blocklist and marketplace updates - Settings and MCP config sync Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
parent
92545d40de
commit
42d180ec82
23
.mcp-full.json
Normal file
23
.mcp-full.json
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"mcpServers": {
|
||||||
|
"cognitive-memory": {
|
||||||
|
"command": "/home/cal/.claude/skills/cognitive-memory/mcp-server/cognitive-memory-mcp",
|
||||||
|
"type": "stdio",
|
||||||
|
"args": [],
|
||||||
|
"env": {}
|
||||||
|
},
|
||||||
|
"n8n-mcp": {
|
||||||
|
"command": "npx",
|
||||||
|
"type": "stdio",
|
||||||
|
"args": ["n8n-mcp"],
|
||||||
|
"env": {
|
||||||
|
"MCP_MODE": "stdio",
|
||||||
|
"N8N_API_URL": "http://10.10.0.210:5678",
|
||||||
|
"N8N_API_KEY": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIwNGQ1MTNhYi1lOGI1LTQxZjktYmNjNi05MTM1MzgyYzQ0YWEiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzcxNTU3ODMwfQ.PF6AatWZh8hwyUydT8UsJ16ML61XFTixj2IvuP9MRzo",
|
||||||
|
"N8N_MCP_TELEMETRY_DISABLED": "true",
|
||||||
|
"DISABLE_CONSOLE_OUTPUT": "true",
|
||||||
|
"LOG_LEVEL": "error"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
23
.mcp.json
Normal file
23
.mcp.json
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"mcpServers": {
|
||||||
|
"cognitive-memory": {
|
||||||
|
"command": "/home/cal/.claude/skills/cognitive-memory/mcp-server/cognitive-memory-mcp",
|
||||||
|
"type": "stdio",
|
||||||
|
"args": [],
|
||||||
|
"env": {}
|
||||||
|
},
|
||||||
|
"n8n-mcp": {
|
||||||
|
"command": "npx",
|
||||||
|
"type": "stdio",
|
||||||
|
"args": ["n8n-mcp"],
|
||||||
|
"env": {
|
||||||
|
"MCP_MODE": "stdio",
|
||||||
|
"N8N_API_URL": "http://10.10.0.210:5678",
|
||||||
|
"N8N_API_KEY": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIwNGQ1MTNhYi1lOGI1LTQxZjktYmNjNi05MTM1MzgyYzQ0YWEiLCJpc3MiOiJuOG4iLCJhdWQiOiJwdWJsaWMtYXBpIiwiaWF0IjoxNzcxNTU3ODMwfQ.PF6AatWZh8hwyUydT8UsJ16ML61XFTixj2IvuP9MRzo",
|
||||||
|
"N8N_MCP_TELEMETRY_DISABLED": "true",
|
||||||
|
"DISABLE_CONSOLE_OUTPUT": "true",
|
||||||
|
"LOG_LEVEL": "error"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
10
.mcp.json.backup
Normal file
10
.mcp.json.backup
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"mcpServers": {
|
||||||
|
"cognitive-memory": {
|
||||||
|
"command": "/home/cal/.claude/skills/cognitive-memory/mcp-server/cognitive-memory-mcp",
|
||||||
|
"type": "stdio",
|
||||||
|
"args": [],
|
||||||
|
"env": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
15
CLAUDE.md
15
CLAUDE.md
@ -16,9 +16,10 @@ Automatic loads are NOT enough — Read loads required CLAUDE.md context along t
|
|||||||
## Gitea Operations
|
## Gitea Operations
|
||||||
**ALWAYS use `tea` CLI for Gitea.** Never use `gh api --hostname`.
|
**ALWAYS use `tea` CLI for Gitea.** Never use `gh api --hostname`.
|
||||||
- Authenticated: `cal@homelab` (https://git.manticorum.com)
|
- Authenticated: `cal@homelab` (https://git.manticorum.com)
|
||||||
- Common: `tea repos list`, `tea pulls list`, `tea issues list`
|
- **Always pass `--repo owner/name`** — tea can't auto-detect the repo from git remotes and fails with "path segment is empty"
|
||||||
- Create PR: `tea pulls create --head <branch> --base main --title "Title" --description "Desc"`
|
- Common: `tea repos list`, `tea pulls list --repo cal/repo`, `tea issues list --repo cal/repo`
|
||||||
- Common repos: cal/major-domo-database, cal/major-domo-bot, cal/paper-dynasty, cal/paper-dynasty-database
|
- Create PR: `tea pulls create --repo cal/repo --head <branch> --base main --title "Title" --description "Desc"`
|
||||||
|
- Common repos: cal/major-domo-v2, cal/major-domo-database, cal/major-domo-bot, cal/paper-dynasty, cal/paper-dynasty-database
|
||||||
|
|
||||||
## Tech Preferences
|
## Tech Preferences
|
||||||
- Python with uv for package/environment management
|
- Python with uv for package/environment management
|
||||||
@ -26,9 +27,11 @@ Automatic loads are NOT enough — Read loads required CLAUDE.md context along t
|
|||||||
- Never add lazy imports to middle of file
|
- Never add lazy imports to middle of file
|
||||||
|
|
||||||
## SSH
|
## SSH
|
||||||
- Use `ssh -i ~/.ssh/homelab_rsa cal@<host>` for homelab servers (10.10.0.x)
|
**ALWAYS use SSH aliases from `~/.ssh/config` — NEVER construct manual `ssh -i` commands.**
|
||||||
- Use `ssh -i ~/.ssh/cloud_servers_rsa root@<host>` for cloud servers (Akamai, Vultr)
|
- All homelab and cloud servers have aliases with pre-configured keys/users
|
||||||
- Keys are installed on every server — never use passwords or expect password prompts
|
- Just `ssh <alias>` (e.g. `ssh sba-db`, `ssh proxmox`, `ssh manticore`)
|
||||||
|
- If unsure of an alias, read `~/.ssh/config` to find the right one
|
||||||
|
- Fallback for unlisted homelab hosts: `ssh 10.10.0.x` (wildcard rule handles key/user)
|
||||||
|
|
||||||
## Memory Protocol (Cognitive Memory)
|
## Memory Protocol (Cognitive Memory)
|
||||||
- Skill: `~/.claude/skills/cognitive-memory/` | Data: `~/.claude/memory/`
|
- Skill: `~/.claude/skills/cognitive-memory/` | Data: `~/.claude/memory/`
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"numStartups": 663,
|
"numStartups": 670,
|
||||||
"installMethod": "native",
|
"installMethod": "native",
|
||||||
"autoUpdates": true,
|
"autoUpdates": true,
|
||||||
"preferredNotifChannel": "iterm2_with_bell",
|
"preferredNotifChannel": "iterm2_with_bell",
|
||||||
@ -12,24 +12,24 @@
|
|||||||
"todo-list": 660,
|
"todo-list": 660,
|
||||||
"# for memory": 38,
|
"# for memory": 38,
|
||||||
"install-github-app": 663,
|
"install-github-app": 663,
|
||||||
"permissions": 654,
|
"permissions": 664,
|
||||||
"drag-and-drop-images": 659,
|
"drag-and-drop-images": 669,
|
||||||
"double-esc": 75,
|
"double-esc": 75,
|
||||||
"continue": 655,
|
"continue": 665,
|
||||||
"ide-hotkey": 74,
|
"ide-hotkey": 74,
|
||||||
"terminal-setup": 29,
|
"terminal-setup": 29,
|
||||||
"custom-commands": 655,
|
"custom-commands": 655,
|
||||||
"shift-enter": 661,
|
"shift-enter": 661,
|
||||||
"shift-tab": 655,
|
"shift-tab": 665,
|
||||||
"custom-agents": 663,
|
"custom-agents": 663,
|
||||||
"status-line": 536,
|
"status-line": 536,
|
||||||
"git-worktrees": 661,
|
"git-worktrees": 661,
|
||||||
"image-paste": 646,
|
"image-paste": 666,
|
||||||
"plan-mode-for-complex-tasks": 384,
|
"plan-mode-for-complex-tasks": 384,
|
||||||
"double-esc-code-restore": 654,
|
"double-esc-code-restore": 664,
|
||||||
"tab-toggle-thinking": 329,
|
"tab-toggle-thinking": 329,
|
||||||
"ultrathink-keyword": 423,
|
"ultrathink-keyword": 423,
|
||||||
"ide-upsell-external-terminal": 646,
|
"ide-upsell-external-terminal": 668,
|
||||||
"stickers-command": 416,
|
"stickers-command": 416,
|
||||||
"default-permission-mode-config": 436,
|
"default-permission-mode-config": 436,
|
||||||
"rename-conversation": 655,
|
"rename-conversation": 655,
|
||||||
@ -39,12 +39,12 @@
|
|||||||
"colorterm-truecolor": 638,
|
"colorterm-truecolor": 638,
|
||||||
"web-app": 657,
|
"web-app": 657,
|
||||||
"mobile-app": 657,
|
"mobile-app": 657,
|
||||||
"install-slack-app": 656,
|
"install-slack-app": 666,
|
||||||
"btw-side-question": 407,
|
"btw-side-question": 407,
|
||||||
"agent-flag": 652
|
"agent-flag": 667
|
||||||
},
|
},
|
||||||
"memoryUsageCount": 18,
|
"memoryUsageCount": 18,
|
||||||
"promptQueueUseCount": 4517,
|
"promptQueueUseCount": 4558,
|
||||||
"cachedStatsigGates": {
|
"cachedStatsigGates": {
|
||||||
"tengu_disable_bypass_permissions_mode": false,
|
"tengu_disable_bypass_permissions_mode": false,
|
||||||
"tengu_use_file_checkpoints": true,
|
"tengu_use_file_checkpoints": true,
|
||||||
@ -144,7 +144,7 @@
|
|||||||
"tengu_vinteuil_phrase": true,
|
"tengu_vinteuil_phrase": true,
|
||||||
"tengu_oboe": true,
|
"tengu_oboe": true,
|
||||||
"tengu_tst_names_in_messages": false,
|
"tengu_tst_names_in_messages": false,
|
||||||
"tengu_chomp_inflection": false,
|
"tengu_chomp_inflection": true,
|
||||||
"tengu_silver_lantern": false,
|
"tengu_silver_lantern": false,
|
||||||
"tengu_copper_lantern": false,
|
"tengu_copper_lantern": false,
|
||||||
"tengu_workout2": true,
|
"tengu_workout2": true,
|
||||||
@ -177,7 +177,14 @@
|
|||||||
"tengu_slate_nexus": false,
|
"tengu_slate_nexus": false,
|
||||||
"tengu_marble_sandcastle": true,
|
"tengu_marble_sandcastle": true,
|
||||||
"tengu_birch_mist": false,
|
"tengu_birch_mist": false,
|
||||||
"tengu_oak_drum": false
|
"tengu_oak_drum": false,
|
||||||
|
"tengu_worktree_mode": true,
|
||||||
|
"tengu_pebble_leaf_prune": false,
|
||||||
|
"tengu_swann_brevity": "control",
|
||||||
|
"tengu_crystal_beam": {
|
||||||
|
"budgetTokens": 0
|
||||||
|
},
|
||||||
|
"tengu_tool_input_aliasing": false
|
||||||
},
|
},
|
||||||
"hasSeenStashHint": true,
|
"hasSeenStashHint": true,
|
||||||
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
||||||
@ -615,17 +622,17 @@
|
|||||||
"ssh-tdarr",
|
"ssh-tdarr",
|
||||||
"notediscovery"
|
"notediscovery"
|
||||||
],
|
],
|
||||||
"lastCost": 40.23374199999994,
|
"lastCost": 16.71361575000001,
|
||||||
"lastAPIDuration": 5995420,
|
"lastAPIDuration": 1844582,
|
||||||
"lastToolDuration": 2896147,
|
"lastToolDuration": 816971,
|
||||||
"lastDuration": 20374119,
|
"lastDuration": 29558088,
|
||||||
"lastLinesAdded": 2594,
|
"lastLinesAdded": 2386,
|
||||||
"lastLinesRemoved": 143,
|
"lastLinesRemoved": 60,
|
||||||
"lastTotalInputTokens": 747870,
|
"lastTotalInputTokens": 203907,
|
||||||
"lastTotalOutputTokens": 224482,
|
"lastTotalOutputTokens": 87182,
|
||||||
"lastTotalCacheCreationInputTokens": 1751354,
|
"lastTotalCacheCreationInputTokens": 987411,
|
||||||
"lastTotalCacheReadInputTokens": 47009653,
|
"lastTotalCacheReadInputTokens": 16492670,
|
||||||
"lastSessionId": "606a9f26-d08c-4654-8a9a-e118a2735aaa",
|
"lastSessionId": "ee8998aa-f26c-4743-84dc-0ba35f4e49c4",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -633,44 +640,44 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 4961513,
|
"lastAPIDurationWithoutRetries": 1843027,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-opus-4-6": {
|
"claude-opus-4-6": {
|
||||||
"inputTokens": 9124,
|
"inputTokens": 7030,
|
||||||
"outputTokens": 164889,
|
"outputTokens": 57045,
|
||||||
"cacheReadInputTokens": 44348975,
|
"cacheReadInputTokens": 14601090,
|
||||||
"cacheCreationInputTokens": 1408982,
|
"cacheCreationInputTokens": 789421,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 35.148469999999996
|
"costUSD": 13.695701250000003
|
||||||
},
|
},
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 732883,
|
"inputTokens": 196822,
|
||||||
"outputTokens": 15034,
|
"outputTokens": 4750,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 67247,
|
"cacheCreationInputTokens": 4167,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.892111749999999
|
"costUSD": 0.22578074999999995
|
||||||
},
|
},
|
||||||
"claude-sonnet-4-6": {
|
"claude-sonnet-4-6": {
|
||||||
"inputTokens": 5863,
|
"inputTokens": 55,
|
||||||
"outputTokens": 44559,
|
"outputTokens": 25387,
|
||||||
"cacheReadInputTokens": 2660678,
|
"cacheReadInputTokens": 1891580,
|
||||||
"cacheCreationInputTokens": 275125,
|
"cacheCreationInputTokens": 193823,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 4.19316025
|
"costUSD": 2.7921337499999996
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 126433,
|
"frame_duration_ms_count": 35110,
|
||||||
"frame_duration_ms_min": 0.033378999680280685,
|
"frame_duration_ms_min": 0.10013899999830755,
|
||||||
"frame_duration_ms_max": 185.3289749994874,
|
"frame_duration_ms_max": 45.71880799904466,
|
||||||
"frame_duration_ms_avg": 4.580825976891975,
|
"frame_duration_ms_avg": 1.8384896022149897,
|
||||||
"frame_duration_ms_p50": 1.4972434998489916,
|
"frame_duration_ms_p50": 0.9785875007510185,
|
||||||
"frame_duration_ms_p95": 3.451200450630833,
|
"frame_duration_ms_p95": 9.048351652547707,
|
||||||
"frame_duration_ms_p99": 90.20297368977218
|
"frame_duration_ms_p99": 25.241195021457933
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.12,
|
"lastFpsAverage": 1.19,
|
||||||
"lastFpsLow1Pct": 11.02
|
"lastFpsLow1Pct": 43.16
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/major-domo": {
|
"/mnt/NV2/Development/major-domo": {
|
||||||
"allowedTools": [],
|
"allowedTools": [],
|
||||||
@ -1082,17 +1089,17 @@
|
|||||||
"exampleFilesGeneratedAt": 1771431800882,
|
"exampleFilesGeneratedAt": 1771431800882,
|
||||||
"hasCompletedProjectOnboarding": true,
|
"hasCompletedProjectOnboarding": true,
|
||||||
"lastTotalWebSearchRequests": 0,
|
"lastTotalWebSearchRequests": 0,
|
||||||
"lastCost": 0.000711,
|
"lastCost": 13.231698250000006,
|
||||||
"lastAPIDuration": 823,
|
"lastAPIDuration": 891789,
|
||||||
"lastToolDuration": 0,
|
"lastToolDuration": 132172,
|
||||||
"lastDuration": 6284,
|
"lastDuration": 18087965,
|
||||||
"lastLinesAdded": 0,
|
"lastLinesAdded": 263,
|
||||||
"lastLinesRemoved": 0,
|
"lastLinesRemoved": 7,
|
||||||
"lastTotalInputTokens": 536,
|
"lastTotalInputTokens": 77295,
|
||||||
"lastTotalOutputTokens": 35,
|
"lastTotalOutputTokens": 35442,
|
||||||
"lastTotalCacheCreationInputTokens": 0,
|
"lastTotalCacheCreationInputTokens": 1044639,
|
||||||
"lastTotalCacheReadInputTokens": 0,
|
"lastTotalCacheReadInputTokens": 11865821,
|
||||||
"lastSessionId": "a20b0e55-c4ef-4a74-a352-c1c7e29dcecd",
|
"lastSessionId": "ace0ec70-77ed-44a1-806a-904ce665899a",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -1100,27 +1107,43 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 822,
|
"lastAPIDurationWithoutRetries": 891685,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 536,
|
"inputTokens": 71834,
|
||||||
"outputTokens": 35,
|
"outputTokens": 2746,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 0,
|
"cacheCreationInputTokens": 32095,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.000711
|
"costUSD": 0.12568275000000004
|
||||||
|
},
|
||||||
|
"claude-opus-4-6": {
|
||||||
|
"inputTokens": 5448,
|
||||||
|
"outputTokens": 27103,
|
||||||
|
"cacheReadInputTokens": 11539293,
|
||||||
|
"cacheCreationInputTokens": 945261,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 12.38234275
|
||||||
|
},
|
||||||
|
"claude-sonnet-4-6": {
|
||||||
|
"inputTokens": 13,
|
||||||
|
"outputTokens": 5593,
|
||||||
|
"cacheReadInputTokens": 326528,
|
||||||
|
"cacheCreationInputTokens": 67283,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 0.72367275
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.68,
|
"lastFpsAverage": 0.78,
|
||||||
"lastFpsLow1Pct": 219.22,
|
"lastFpsLow1Pct": 25.74,
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 38,
|
"frame_duration_ms_count": 14187,
|
||||||
"frame_duration_ms_min": 0.0733989999998812,
|
"frame_duration_ms_min": 0.08366899937391281,
|
||||||
"frame_duration_ms_max": 4.561674999999923,
|
"frame_duration_ms_max": 68.00957799889147,
|
||||||
"frame_duration_ms_avg": 1.2307077105262876,
|
"frame_duration_ms_avg": 2.3383289160528014,
|
||||||
"frame_duration_ms_p50": 1.1626314999998613,
|
"frame_duration_ms_p50": 1.0047624995931983,
|
||||||
"frame_duration_ms_p95": 2.57251919999976,
|
"frame_duration_ms_p95": 13.091784298792101,
|
||||||
"frame_duration_ms_p99": 3.884495079999988
|
"frame_duration_ms_p99": 38.75486159028485
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/efd-trading-card-base": {
|
"/mnt/NV2/Development/efd-trading-card-base": {
|
||||||
@ -1999,12 +2022,12 @@
|
|||||||
"lastOnboardingVersion": "2.0.13",
|
"lastOnboardingVersion": "2.0.13",
|
||||||
"subscriptionNoticeCount": 0,
|
"subscriptionNoticeCount": 0,
|
||||||
"hasAvailableSubscription": false,
|
"hasAvailableSubscription": false,
|
||||||
"changelogLastFetched": 1771459754216,
|
"changelogLastFetched": 1771560193427,
|
||||||
"fallbackAvailableWarningThreshold": 0.2,
|
"fallbackAvailableWarningThreshold": 0.2,
|
||||||
"hasIdeOnboardingBeenShown": {
|
"hasIdeOnboardingBeenShown": {
|
||||||
"vscode": true
|
"vscode": true
|
||||||
},
|
},
|
||||||
"lastReleaseNotesSeen": "2.1.47",
|
"lastReleaseNotesSeen": "2.1.49",
|
||||||
"isQualifiedForDataSharing": false,
|
"isQualifiedForDataSharing": false,
|
||||||
"hasIdeAutoConnectDialogBeenShown": true,
|
"hasIdeAutoConnectDialogBeenShown": true,
|
||||||
"shiftEnterKeyBindingInstalled": true,
|
"shiftEnterKeyBindingInstalled": true,
|
||||||
@ -2105,7 +2128,7 @@
|
|||||||
"currency": "USD"
|
"currency": "USD"
|
||||||
},
|
},
|
||||||
"remaining_passes": 3,
|
"remaining_passes": 3,
|
||||||
"timestamp": 1771535572741
|
"timestamp": 1771560445046
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opus45MigrationComplete": true,
|
"opus45MigrationComplete": true,
|
||||||
@ -2124,8 +2147,8 @@
|
|||||||
},
|
},
|
||||||
"skillUsage": {
|
"skillUsage": {
|
||||||
"major-domo": {
|
"major-domo": {
|
||||||
"usageCount": 12,
|
"usageCount": 13,
|
||||||
"lastUsedAt": 1771288623314
|
"lastUsedAt": 1771556414365
|
||||||
},
|
},
|
||||||
"paper-dynasty": {
|
"paper-dynasty": {
|
||||||
"usageCount": 12,
|
"usageCount": 12,
|
||||||
@ -2188,8 +2211,8 @@
|
|||||||
"lastUsedAt": 1770959377885
|
"lastUsedAt": 1770959377885
|
||||||
},
|
},
|
||||||
"sync-config": {
|
"sync-config": {
|
||||||
"usageCount": 23,
|
"usageCount": 25,
|
||||||
"lastUsedAt": 1771539236539
|
"lastUsedAt": 1771539739755
|
||||||
},
|
},
|
||||||
"claude-optimised": {
|
"claude-optimised": {
|
||||||
"usageCount": 4,
|
"usageCount": 4,
|
||||||
@ -2200,8 +2223,8 @@
|
|||||||
"lastUsedAt": 1771199427014
|
"lastUsedAt": 1771199427014
|
||||||
},
|
},
|
||||||
"cognitive-memory": {
|
"cognitive-memory": {
|
||||||
"usageCount": 32,
|
"usageCount": 35,
|
||||||
"lastUsedAt": 1771528594878
|
"lastUsedAt": 1771560320138
|
||||||
},
|
},
|
||||||
"commit-push": {
|
"commit-push": {
|
||||||
"usageCount": 17,
|
"usageCount": 17,
|
||||||
@ -2216,12 +2239,12 @@
|
|||||||
"lastUsedAt": 1771364503659
|
"lastUsedAt": 1771364503659
|
||||||
},
|
},
|
||||||
"commit-push-pr": {
|
"commit-push-pr": {
|
||||||
"usageCount": 2,
|
"usageCount": 4,
|
||||||
"lastUsedAt": 1771371630347
|
"lastUsedAt": 1771559391826
|
||||||
},
|
},
|
||||||
"mcp-manager": {
|
"mcp-manager": {
|
||||||
"usageCount": 3,
|
"usageCount": 5,
|
||||||
"lastUsedAt": 1771450174507
|
"lastUsedAt": 1771558943126
|
||||||
},
|
},
|
||||||
"orchestrator": {
|
"orchestrator": {
|
||||||
"usageCount": 3,
|
"usageCount": 3,
|
||||||
@ -2236,8 +2259,8 @@
|
|||||||
"lastUsedAt": 1771536951910
|
"lastUsedAt": 1771536951910
|
||||||
},
|
},
|
||||||
"save-memories": {
|
"save-memories": {
|
||||||
"usageCount": 4,
|
"usageCount": 7,
|
||||||
"lastUsedAt": 1771539598828
|
"lastUsedAt": 1771559941495
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opusProMigrationComplete": true,
|
"opusProMigrationComplete": true,
|
||||||
@ -2246,7 +2269,7 @@
|
|||||||
"passesLastSeenRemaining": 3,
|
"passesLastSeenRemaining": 3,
|
||||||
"clientDataCache": {
|
"clientDataCache": {
|
||||||
"data": {},
|
"data": {},
|
||||||
"timestamp": 1771539617287
|
"timestamp": 1771560445433
|
||||||
},
|
},
|
||||||
"hasShownOpus46Notice": {
|
"hasShownOpus46Notice": {
|
||||||
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"numStartups": 663,
|
"numStartups": 670,
|
||||||
"installMethod": "native",
|
"installMethod": "native",
|
||||||
"autoUpdates": true,
|
"autoUpdates": true,
|
||||||
"preferredNotifChannel": "iterm2_with_bell",
|
"preferredNotifChannel": "iterm2_with_bell",
|
||||||
@ -12,24 +12,24 @@
|
|||||||
"todo-list": 660,
|
"todo-list": 660,
|
||||||
"# for memory": 38,
|
"# for memory": 38,
|
||||||
"install-github-app": 663,
|
"install-github-app": 663,
|
||||||
"permissions": 654,
|
"permissions": 664,
|
||||||
"drag-and-drop-images": 659,
|
"drag-and-drop-images": 669,
|
||||||
"double-esc": 75,
|
"double-esc": 75,
|
||||||
"continue": 655,
|
"continue": 665,
|
||||||
"ide-hotkey": 74,
|
"ide-hotkey": 74,
|
||||||
"terminal-setup": 29,
|
"terminal-setup": 29,
|
||||||
"custom-commands": 655,
|
"custom-commands": 655,
|
||||||
"shift-enter": 661,
|
"shift-enter": 661,
|
||||||
"shift-tab": 655,
|
"shift-tab": 665,
|
||||||
"custom-agents": 663,
|
"custom-agents": 663,
|
||||||
"status-line": 536,
|
"status-line": 536,
|
||||||
"git-worktrees": 661,
|
"git-worktrees": 661,
|
||||||
"image-paste": 646,
|
"image-paste": 666,
|
||||||
"plan-mode-for-complex-tasks": 384,
|
"plan-mode-for-complex-tasks": 384,
|
||||||
"double-esc-code-restore": 654,
|
"double-esc-code-restore": 664,
|
||||||
"tab-toggle-thinking": 329,
|
"tab-toggle-thinking": 329,
|
||||||
"ultrathink-keyword": 423,
|
"ultrathink-keyword": 423,
|
||||||
"ide-upsell-external-terminal": 646,
|
"ide-upsell-external-terminal": 668,
|
||||||
"stickers-command": 416,
|
"stickers-command": 416,
|
||||||
"default-permission-mode-config": 436,
|
"default-permission-mode-config": 436,
|
||||||
"rename-conversation": 655,
|
"rename-conversation": 655,
|
||||||
@ -39,12 +39,12 @@
|
|||||||
"colorterm-truecolor": 638,
|
"colorterm-truecolor": 638,
|
||||||
"web-app": 657,
|
"web-app": 657,
|
||||||
"mobile-app": 657,
|
"mobile-app": 657,
|
||||||
"install-slack-app": 656,
|
"install-slack-app": 666,
|
||||||
"btw-side-question": 407,
|
"btw-side-question": 407,
|
||||||
"agent-flag": 652
|
"agent-flag": 667
|
||||||
},
|
},
|
||||||
"memoryUsageCount": 18,
|
"memoryUsageCount": 18,
|
||||||
"promptQueueUseCount": 4515,
|
"promptQueueUseCount": 4558,
|
||||||
"cachedStatsigGates": {
|
"cachedStatsigGates": {
|
||||||
"tengu_disable_bypass_permissions_mode": false,
|
"tengu_disable_bypass_permissions_mode": false,
|
||||||
"tengu_use_file_checkpoints": true,
|
"tengu_use_file_checkpoints": true,
|
||||||
@ -144,7 +144,7 @@
|
|||||||
"tengu_vinteuil_phrase": true,
|
"tengu_vinteuil_phrase": true,
|
||||||
"tengu_oboe": true,
|
"tengu_oboe": true,
|
||||||
"tengu_tst_names_in_messages": false,
|
"tengu_tst_names_in_messages": false,
|
||||||
"tengu_chomp_inflection": false,
|
"tengu_chomp_inflection": true,
|
||||||
"tengu_silver_lantern": false,
|
"tengu_silver_lantern": false,
|
||||||
"tengu_copper_lantern": false,
|
"tengu_copper_lantern": false,
|
||||||
"tengu_workout2": true,
|
"tengu_workout2": true,
|
||||||
@ -177,7 +177,14 @@
|
|||||||
"tengu_slate_nexus": false,
|
"tengu_slate_nexus": false,
|
||||||
"tengu_marble_sandcastle": true,
|
"tengu_marble_sandcastle": true,
|
||||||
"tengu_birch_mist": false,
|
"tengu_birch_mist": false,
|
||||||
"tengu_oak_drum": false
|
"tengu_oak_drum": false,
|
||||||
|
"tengu_worktree_mode": true,
|
||||||
|
"tengu_pebble_leaf_prune": false,
|
||||||
|
"tengu_swann_brevity": "control",
|
||||||
|
"tengu_crystal_beam": {
|
||||||
|
"budgetTokens": 0
|
||||||
|
},
|
||||||
|
"tengu_tool_input_aliasing": false
|
||||||
},
|
},
|
||||||
"hasSeenStashHint": true,
|
"hasSeenStashHint": true,
|
||||||
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
||||||
@ -615,17 +622,17 @@
|
|||||||
"ssh-tdarr",
|
"ssh-tdarr",
|
||||||
"notediscovery"
|
"notediscovery"
|
||||||
],
|
],
|
||||||
"lastCost": 40.23374199999994,
|
"lastCost": 16.71361575000001,
|
||||||
"lastAPIDuration": 5995420,
|
"lastAPIDuration": 1844582,
|
||||||
"lastToolDuration": 2896147,
|
"lastToolDuration": 816971,
|
||||||
"lastDuration": 20374119,
|
"lastDuration": 29558088,
|
||||||
"lastLinesAdded": 2594,
|
"lastLinesAdded": 2386,
|
||||||
"lastLinesRemoved": 143,
|
"lastLinesRemoved": 60,
|
||||||
"lastTotalInputTokens": 747870,
|
"lastTotalInputTokens": 203907,
|
||||||
"lastTotalOutputTokens": 224482,
|
"lastTotalOutputTokens": 87182,
|
||||||
"lastTotalCacheCreationInputTokens": 1751354,
|
"lastTotalCacheCreationInputTokens": 987411,
|
||||||
"lastTotalCacheReadInputTokens": 47009653,
|
"lastTotalCacheReadInputTokens": 16492670,
|
||||||
"lastSessionId": "606a9f26-d08c-4654-8a9a-e118a2735aaa",
|
"lastSessionId": "ee8998aa-f26c-4743-84dc-0ba35f4e49c4",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -633,44 +640,44 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 4961513,
|
"lastAPIDurationWithoutRetries": 1843027,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-opus-4-6": {
|
"claude-opus-4-6": {
|
||||||
"inputTokens": 9124,
|
"inputTokens": 7030,
|
||||||
"outputTokens": 164889,
|
"outputTokens": 57045,
|
||||||
"cacheReadInputTokens": 44348975,
|
"cacheReadInputTokens": 14601090,
|
||||||
"cacheCreationInputTokens": 1408982,
|
"cacheCreationInputTokens": 789421,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 35.148469999999996
|
"costUSD": 13.695701250000003
|
||||||
},
|
},
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 732883,
|
"inputTokens": 196822,
|
||||||
"outputTokens": 15034,
|
"outputTokens": 4750,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 67247,
|
"cacheCreationInputTokens": 4167,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.892111749999999
|
"costUSD": 0.22578074999999995
|
||||||
},
|
},
|
||||||
"claude-sonnet-4-6": {
|
"claude-sonnet-4-6": {
|
||||||
"inputTokens": 5863,
|
"inputTokens": 55,
|
||||||
"outputTokens": 44559,
|
"outputTokens": 25387,
|
||||||
"cacheReadInputTokens": 2660678,
|
"cacheReadInputTokens": 1891580,
|
||||||
"cacheCreationInputTokens": 275125,
|
"cacheCreationInputTokens": 193823,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 4.19316025
|
"costUSD": 2.7921337499999996
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 126433,
|
"frame_duration_ms_count": 35110,
|
||||||
"frame_duration_ms_min": 0.033378999680280685,
|
"frame_duration_ms_min": 0.10013899999830755,
|
||||||
"frame_duration_ms_max": 185.3289749994874,
|
"frame_duration_ms_max": 45.71880799904466,
|
||||||
"frame_duration_ms_avg": 4.580825976891975,
|
"frame_duration_ms_avg": 1.8384896022149897,
|
||||||
"frame_duration_ms_p50": 1.4972434998489916,
|
"frame_duration_ms_p50": 0.9785875007510185,
|
||||||
"frame_duration_ms_p95": 3.451200450630833,
|
"frame_duration_ms_p95": 9.048351652547707,
|
||||||
"frame_duration_ms_p99": 90.20297368977218
|
"frame_duration_ms_p99": 25.241195021457933
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.12,
|
"lastFpsAverage": 1.19,
|
||||||
"lastFpsLow1Pct": 11.02
|
"lastFpsLow1Pct": 43.16
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/major-domo": {
|
"/mnt/NV2/Development/major-domo": {
|
||||||
"allowedTools": [],
|
"allowedTools": [],
|
||||||
@ -1082,17 +1089,17 @@
|
|||||||
"exampleFilesGeneratedAt": 1771431800882,
|
"exampleFilesGeneratedAt": 1771431800882,
|
||||||
"hasCompletedProjectOnboarding": true,
|
"hasCompletedProjectOnboarding": true,
|
||||||
"lastTotalWebSearchRequests": 0,
|
"lastTotalWebSearchRequests": 0,
|
||||||
"lastCost": 0.000711,
|
"lastCost": 13.231698250000006,
|
||||||
"lastAPIDuration": 823,
|
"lastAPIDuration": 891789,
|
||||||
"lastToolDuration": 0,
|
"lastToolDuration": 132172,
|
||||||
"lastDuration": 6284,
|
"lastDuration": 18087965,
|
||||||
"lastLinesAdded": 0,
|
"lastLinesAdded": 263,
|
||||||
"lastLinesRemoved": 0,
|
"lastLinesRemoved": 7,
|
||||||
"lastTotalInputTokens": 536,
|
"lastTotalInputTokens": 77295,
|
||||||
"lastTotalOutputTokens": 35,
|
"lastTotalOutputTokens": 35442,
|
||||||
"lastTotalCacheCreationInputTokens": 0,
|
"lastTotalCacheCreationInputTokens": 1044639,
|
||||||
"lastTotalCacheReadInputTokens": 0,
|
"lastTotalCacheReadInputTokens": 11865821,
|
||||||
"lastSessionId": "a20b0e55-c4ef-4a74-a352-c1c7e29dcecd",
|
"lastSessionId": "ace0ec70-77ed-44a1-806a-904ce665899a",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -1100,27 +1107,43 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 822,
|
"lastAPIDurationWithoutRetries": 891685,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 536,
|
"inputTokens": 71834,
|
||||||
"outputTokens": 35,
|
"outputTokens": 2746,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 0,
|
"cacheCreationInputTokens": 32095,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.000711
|
"costUSD": 0.12568275000000004
|
||||||
|
},
|
||||||
|
"claude-opus-4-6": {
|
||||||
|
"inputTokens": 5448,
|
||||||
|
"outputTokens": 27103,
|
||||||
|
"cacheReadInputTokens": 11539293,
|
||||||
|
"cacheCreationInputTokens": 945261,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 12.38234275
|
||||||
|
},
|
||||||
|
"claude-sonnet-4-6": {
|
||||||
|
"inputTokens": 13,
|
||||||
|
"outputTokens": 5593,
|
||||||
|
"cacheReadInputTokens": 326528,
|
||||||
|
"cacheCreationInputTokens": 67283,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 0.72367275
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.68,
|
"lastFpsAverage": 0.78,
|
||||||
"lastFpsLow1Pct": 219.22,
|
"lastFpsLow1Pct": 25.74,
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 38,
|
"frame_duration_ms_count": 14187,
|
||||||
"frame_duration_ms_min": 0.0733989999998812,
|
"frame_duration_ms_min": 0.08366899937391281,
|
||||||
"frame_duration_ms_max": 4.561674999999923,
|
"frame_duration_ms_max": 68.00957799889147,
|
||||||
"frame_duration_ms_avg": 1.2307077105262876,
|
"frame_duration_ms_avg": 2.3383289160528014,
|
||||||
"frame_duration_ms_p50": 1.1626314999998613,
|
"frame_duration_ms_p50": 1.0047624995931983,
|
||||||
"frame_duration_ms_p95": 2.57251919999976,
|
"frame_duration_ms_p95": 13.091784298792101,
|
||||||
"frame_duration_ms_p99": 3.884495079999988
|
"frame_duration_ms_p99": 38.75486159028485
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/efd-trading-card-base": {
|
"/mnt/NV2/Development/efd-trading-card-base": {
|
||||||
@ -1999,12 +2022,12 @@
|
|||||||
"lastOnboardingVersion": "2.0.13",
|
"lastOnboardingVersion": "2.0.13",
|
||||||
"subscriptionNoticeCount": 0,
|
"subscriptionNoticeCount": 0,
|
||||||
"hasAvailableSubscription": false,
|
"hasAvailableSubscription": false,
|
||||||
"changelogLastFetched": 1771459754216,
|
"changelogLastFetched": 1771560193427,
|
||||||
"fallbackAvailableWarningThreshold": 0.2,
|
"fallbackAvailableWarningThreshold": 0.2,
|
||||||
"hasIdeOnboardingBeenShown": {
|
"hasIdeOnboardingBeenShown": {
|
||||||
"vscode": true
|
"vscode": true
|
||||||
},
|
},
|
||||||
"lastReleaseNotesSeen": "2.1.47",
|
"lastReleaseNotesSeen": "2.1.49",
|
||||||
"isQualifiedForDataSharing": false,
|
"isQualifiedForDataSharing": false,
|
||||||
"hasIdeAutoConnectDialogBeenShown": true,
|
"hasIdeAutoConnectDialogBeenShown": true,
|
||||||
"shiftEnterKeyBindingInstalled": true,
|
"shiftEnterKeyBindingInstalled": true,
|
||||||
@ -2105,7 +2128,7 @@
|
|||||||
"currency": "USD"
|
"currency": "USD"
|
||||||
},
|
},
|
||||||
"remaining_passes": 3,
|
"remaining_passes": 3,
|
||||||
"timestamp": 1771535572741
|
"timestamp": 1771560445046
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opus45MigrationComplete": true,
|
"opus45MigrationComplete": true,
|
||||||
@ -2124,8 +2147,8 @@
|
|||||||
},
|
},
|
||||||
"skillUsage": {
|
"skillUsage": {
|
||||||
"major-domo": {
|
"major-domo": {
|
||||||
"usageCount": 12,
|
"usageCount": 13,
|
||||||
"lastUsedAt": 1771288623314
|
"lastUsedAt": 1771556414365
|
||||||
},
|
},
|
||||||
"paper-dynasty": {
|
"paper-dynasty": {
|
||||||
"usageCount": 12,
|
"usageCount": 12,
|
||||||
@ -2188,8 +2211,8 @@
|
|||||||
"lastUsedAt": 1770959377885
|
"lastUsedAt": 1770959377885
|
||||||
},
|
},
|
||||||
"sync-config": {
|
"sync-config": {
|
||||||
"usageCount": 23,
|
"usageCount": 25,
|
||||||
"lastUsedAt": 1771539236539
|
"lastUsedAt": 1771539739755
|
||||||
},
|
},
|
||||||
"claude-optimised": {
|
"claude-optimised": {
|
||||||
"usageCount": 4,
|
"usageCount": 4,
|
||||||
@ -2200,8 +2223,8 @@
|
|||||||
"lastUsedAt": 1771199427014
|
"lastUsedAt": 1771199427014
|
||||||
},
|
},
|
||||||
"cognitive-memory": {
|
"cognitive-memory": {
|
||||||
"usageCount": 32,
|
"usageCount": 35,
|
||||||
"lastUsedAt": 1771528594878
|
"lastUsedAt": 1771560320138
|
||||||
},
|
},
|
||||||
"commit-push": {
|
"commit-push": {
|
||||||
"usageCount": 17,
|
"usageCount": 17,
|
||||||
@ -2216,12 +2239,12 @@
|
|||||||
"lastUsedAt": 1771364503659
|
"lastUsedAt": 1771364503659
|
||||||
},
|
},
|
||||||
"commit-push-pr": {
|
"commit-push-pr": {
|
||||||
"usageCount": 2,
|
"usageCount": 4,
|
||||||
"lastUsedAt": 1771371630347
|
"lastUsedAt": 1771559391826
|
||||||
},
|
},
|
||||||
"mcp-manager": {
|
"mcp-manager": {
|
||||||
"usageCount": 3,
|
"usageCount": 5,
|
||||||
"lastUsedAt": 1771450174507
|
"lastUsedAt": 1771558943126
|
||||||
},
|
},
|
||||||
"orchestrator": {
|
"orchestrator": {
|
||||||
"usageCount": 3,
|
"usageCount": 3,
|
||||||
@ -2236,8 +2259,8 @@
|
|||||||
"lastUsedAt": 1771536951910
|
"lastUsedAt": 1771536951910
|
||||||
},
|
},
|
||||||
"save-memories": {
|
"save-memories": {
|
||||||
"usageCount": 3,
|
"usageCount": 7,
|
||||||
"lastUsedAt": 1771539341903
|
"lastUsedAt": 1771559941495
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opusProMigrationComplete": true,
|
"opusProMigrationComplete": true,
|
||||||
@ -2246,7 +2269,7 @@
|
|||||||
"passesLastSeenRemaining": 3,
|
"passesLastSeenRemaining": 3,
|
||||||
"clientDataCache": {
|
"clientDataCache": {
|
||||||
"data": {},
|
"data": {},
|
||||||
"timestamp": 1771539342029
|
"timestamp": 1771560509737
|
||||||
},
|
},
|
||||||
"hasShownOpus46Notice": {
|
"hasShownOpus46Notice": {
|
||||||
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"numStartups": 663,
|
"numStartups": 670,
|
||||||
"installMethod": "native",
|
"installMethod": "native",
|
||||||
"autoUpdates": true,
|
"autoUpdates": true,
|
||||||
"preferredNotifChannel": "iterm2_with_bell",
|
"preferredNotifChannel": "iterm2_with_bell",
|
||||||
@ -12,39 +12,39 @@
|
|||||||
"todo-list": 660,
|
"todo-list": 660,
|
||||||
"# for memory": 38,
|
"# for memory": 38,
|
||||||
"install-github-app": 663,
|
"install-github-app": 663,
|
||||||
"permissions": 654,
|
"permissions": 664,
|
||||||
"drag-and-drop-images": 659,
|
"drag-and-drop-images": 669,
|
||||||
"double-esc": 75,
|
"double-esc": 75,
|
||||||
"continue": 655,
|
"continue": 665,
|
||||||
"ide-hotkey": 74,
|
"ide-hotkey": 74,
|
||||||
"terminal-setup": 29,
|
"terminal-setup": 29,
|
||||||
"custom-commands": 655,
|
"custom-commands": 670,
|
||||||
"shift-enter": 661,
|
"shift-enter": 661,
|
||||||
"shift-tab": 655,
|
"shift-tab": 665,
|
||||||
"custom-agents": 663,
|
"custom-agents": 663,
|
||||||
"status-line": 536,
|
"status-line": 536,
|
||||||
"git-worktrees": 661,
|
"git-worktrees": 661,
|
||||||
"image-paste": 646,
|
"image-paste": 666,
|
||||||
"plan-mode-for-complex-tasks": 384,
|
"plan-mode-for-complex-tasks": 384,
|
||||||
"double-esc-code-restore": 654,
|
"double-esc-code-restore": 664,
|
||||||
"tab-toggle-thinking": 329,
|
"tab-toggle-thinking": 329,
|
||||||
"ultrathink-keyword": 423,
|
"ultrathink-keyword": 423,
|
||||||
"ide-upsell-external-terminal": 646,
|
"ide-upsell-external-terminal": 668,
|
||||||
"stickers-command": 416,
|
"stickers-command": 416,
|
||||||
"default-permission-mode-config": 436,
|
"default-permission-mode-config": 436,
|
||||||
"rename-conversation": 655,
|
"rename-conversation": 670,
|
||||||
"frontend-design-plugin": 560,
|
"frontend-design-plugin": 560,
|
||||||
"config-thinking-mode": 412,
|
"config-thinking-mode": 412,
|
||||||
"guest-passes": 587,
|
"guest-passes": 587,
|
||||||
"colorterm-truecolor": 638,
|
"colorterm-truecolor": 638,
|
||||||
"web-app": 657,
|
"web-app": 657,
|
||||||
"mobile-app": 657,
|
"mobile-app": 657,
|
||||||
"install-slack-app": 656,
|
"install-slack-app": 666,
|
||||||
"btw-side-question": 407,
|
"btw-side-question": 407,
|
||||||
"agent-flag": 652
|
"agent-flag": 667
|
||||||
},
|
},
|
||||||
"memoryUsageCount": 18,
|
"memoryUsageCount": 18,
|
||||||
"promptQueueUseCount": 4515,
|
"promptQueueUseCount": 4559,
|
||||||
"cachedStatsigGates": {
|
"cachedStatsigGates": {
|
||||||
"tengu_disable_bypass_permissions_mode": false,
|
"tengu_disable_bypass_permissions_mode": false,
|
||||||
"tengu_use_file_checkpoints": true,
|
"tengu_use_file_checkpoints": true,
|
||||||
@ -144,7 +144,7 @@
|
|||||||
"tengu_vinteuil_phrase": true,
|
"tengu_vinteuil_phrase": true,
|
||||||
"tengu_oboe": true,
|
"tengu_oboe": true,
|
||||||
"tengu_tst_names_in_messages": false,
|
"tengu_tst_names_in_messages": false,
|
||||||
"tengu_chomp_inflection": false,
|
"tengu_chomp_inflection": true,
|
||||||
"tengu_silver_lantern": false,
|
"tengu_silver_lantern": false,
|
||||||
"tengu_copper_lantern": false,
|
"tengu_copper_lantern": false,
|
||||||
"tengu_workout2": true,
|
"tengu_workout2": true,
|
||||||
@ -177,7 +177,14 @@
|
|||||||
"tengu_slate_nexus": false,
|
"tengu_slate_nexus": false,
|
||||||
"tengu_marble_sandcastle": true,
|
"tengu_marble_sandcastle": true,
|
||||||
"tengu_birch_mist": false,
|
"tengu_birch_mist": false,
|
||||||
"tengu_oak_drum": false
|
"tengu_oak_drum": false,
|
||||||
|
"tengu_worktree_mode": true,
|
||||||
|
"tengu_pebble_leaf_prune": false,
|
||||||
|
"tengu_swann_brevity": "control",
|
||||||
|
"tengu_crystal_beam": {
|
||||||
|
"budgetTokens": 0
|
||||||
|
},
|
||||||
|
"tengu_tool_input_aliasing": false
|
||||||
},
|
},
|
||||||
"hasSeenStashHint": true,
|
"hasSeenStashHint": true,
|
||||||
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
||||||
@ -615,17 +622,17 @@
|
|||||||
"ssh-tdarr",
|
"ssh-tdarr",
|
||||||
"notediscovery"
|
"notediscovery"
|
||||||
],
|
],
|
||||||
"lastCost": 40.23374199999994,
|
"lastCost": 16.71361575000001,
|
||||||
"lastAPIDuration": 5995420,
|
"lastAPIDuration": 1844582,
|
||||||
"lastToolDuration": 2896147,
|
"lastToolDuration": 816971,
|
||||||
"lastDuration": 20374119,
|
"lastDuration": 29558088,
|
||||||
"lastLinesAdded": 2594,
|
"lastLinesAdded": 2386,
|
||||||
"lastLinesRemoved": 143,
|
"lastLinesRemoved": 60,
|
||||||
"lastTotalInputTokens": 747870,
|
"lastTotalInputTokens": 203907,
|
||||||
"lastTotalOutputTokens": 224482,
|
"lastTotalOutputTokens": 87182,
|
||||||
"lastTotalCacheCreationInputTokens": 1751354,
|
"lastTotalCacheCreationInputTokens": 987411,
|
||||||
"lastTotalCacheReadInputTokens": 47009653,
|
"lastTotalCacheReadInputTokens": 16492670,
|
||||||
"lastSessionId": "606a9f26-d08c-4654-8a9a-e118a2735aaa",
|
"lastSessionId": "ee8998aa-f26c-4743-84dc-0ba35f4e49c4",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -633,44 +640,44 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 4961513,
|
"lastAPIDurationWithoutRetries": 1843027,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-opus-4-6": {
|
"claude-opus-4-6": {
|
||||||
"inputTokens": 9124,
|
"inputTokens": 7030,
|
||||||
"outputTokens": 164889,
|
"outputTokens": 57045,
|
||||||
"cacheReadInputTokens": 44348975,
|
"cacheReadInputTokens": 14601090,
|
||||||
"cacheCreationInputTokens": 1408982,
|
"cacheCreationInputTokens": 789421,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 35.148469999999996
|
"costUSD": 13.695701250000003
|
||||||
},
|
},
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 732883,
|
"inputTokens": 196822,
|
||||||
"outputTokens": 15034,
|
"outputTokens": 4750,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 67247,
|
"cacheCreationInputTokens": 4167,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.892111749999999
|
"costUSD": 0.22578074999999995
|
||||||
},
|
},
|
||||||
"claude-sonnet-4-6": {
|
"claude-sonnet-4-6": {
|
||||||
"inputTokens": 5863,
|
"inputTokens": 55,
|
||||||
"outputTokens": 44559,
|
"outputTokens": 25387,
|
||||||
"cacheReadInputTokens": 2660678,
|
"cacheReadInputTokens": 1891580,
|
||||||
"cacheCreationInputTokens": 275125,
|
"cacheCreationInputTokens": 193823,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 4.19316025
|
"costUSD": 2.7921337499999996
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 126433,
|
"frame_duration_ms_count": 35110,
|
||||||
"frame_duration_ms_min": 0.033378999680280685,
|
"frame_duration_ms_min": 0.10013899999830755,
|
||||||
"frame_duration_ms_max": 185.3289749994874,
|
"frame_duration_ms_max": 45.71880799904466,
|
||||||
"frame_duration_ms_avg": 4.580825976891975,
|
"frame_duration_ms_avg": 1.8384896022149897,
|
||||||
"frame_duration_ms_p50": 1.4972434998489916,
|
"frame_duration_ms_p50": 0.9785875007510185,
|
||||||
"frame_duration_ms_p95": 3.451200450630833,
|
"frame_duration_ms_p95": 9.048351652547707,
|
||||||
"frame_duration_ms_p99": 90.20297368977218
|
"frame_duration_ms_p99": 25.241195021457933
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.12,
|
"lastFpsAverage": 1.19,
|
||||||
"lastFpsLow1Pct": 11.02
|
"lastFpsLow1Pct": 43.16
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/major-domo": {
|
"/mnt/NV2/Development/major-domo": {
|
||||||
"allowedTools": [],
|
"allowedTools": [],
|
||||||
@ -1082,17 +1089,17 @@
|
|||||||
"exampleFilesGeneratedAt": 1771431800882,
|
"exampleFilesGeneratedAt": 1771431800882,
|
||||||
"hasCompletedProjectOnboarding": true,
|
"hasCompletedProjectOnboarding": true,
|
||||||
"lastTotalWebSearchRequests": 0,
|
"lastTotalWebSearchRequests": 0,
|
||||||
"lastCost": 0.000711,
|
"lastCost": 13.231698250000006,
|
||||||
"lastAPIDuration": 823,
|
"lastAPIDuration": 891789,
|
||||||
"lastToolDuration": 0,
|
"lastToolDuration": 132172,
|
||||||
"lastDuration": 6284,
|
"lastDuration": 18087965,
|
||||||
"lastLinesAdded": 0,
|
"lastLinesAdded": 263,
|
||||||
"lastLinesRemoved": 0,
|
"lastLinesRemoved": 7,
|
||||||
"lastTotalInputTokens": 536,
|
"lastTotalInputTokens": 77295,
|
||||||
"lastTotalOutputTokens": 35,
|
"lastTotalOutputTokens": 35442,
|
||||||
"lastTotalCacheCreationInputTokens": 0,
|
"lastTotalCacheCreationInputTokens": 1044639,
|
||||||
"lastTotalCacheReadInputTokens": 0,
|
"lastTotalCacheReadInputTokens": 11865821,
|
||||||
"lastSessionId": "a20b0e55-c4ef-4a74-a352-c1c7e29dcecd",
|
"lastSessionId": "ace0ec70-77ed-44a1-806a-904ce665899a",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -1100,27 +1107,43 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 822,
|
"lastAPIDurationWithoutRetries": 891685,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 536,
|
"inputTokens": 71834,
|
||||||
"outputTokens": 35,
|
"outputTokens": 2746,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 0,
|
"cacheCreationInputTokens": 32095,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.000711
|
"costUSD": 0.12568275000000004
|
||||||
|
},
|
||||||
|
"claude-opus-4-6": {
|
||||||
|
"inputTokens": 5448,
|
||||||
|
"outputTokens": 27103,
|
||||||
|
"cacheReadInputTokens": 11539293,
|
||||||
|
"cacheCreationInputTokens": 945261,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 12.38234275
|
||||||
|
},
|
||||||
|
"claude-sonnet-4-6": {
|
||||||
|
"inputTokens": 13,
|
||||||
|
"outputTokens": 5593,
|
||||||
|
"cacheReadInputTokens": 326528,
|
||||||
|
"cacheCreationInputTokens": 67283,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 0.72367275
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.68,
|
"lastFpsAverage": 0.78,
|
||||||
"lastFpsLow1Pct": 219.22,
|
"lastFpsLow1Pct": 25.74,
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 38,
|
"frame_duration_ms_count": 14187,
|
||||||
"frame_duration_ms_min": 0.0733989999998812,
|
"frame_duration_ms_min": 0.08366899937391281,
|
||||||
"frame_duration_ms_max": 4.561674999999923,
|
"frame_duration_ms_max": 68.00957799889147,
|
||||||
"frame_duration_ms_avg": 1.2307077105262876,
|
"frame_duration_ms_avg": 2.3383289160528014,
|
||||||
"frame_duration_ms_p50": 1.1626314999998613,
|
"frame_duration_ms_p50": 1.0047624995931983,
|
||||||
"frame_duration_ms_p95": 2.57251919999976,
|
"frame_duration_ms_p95": 13.091784298792101,
|
||||||
"frame_duration_ms_p99": 3.884495079999988
|
"frame_duration_ms_p99": 38.75486159028485
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/efd-trading-card-base": {
|
"/mnt/NV2/Development/efd-trading-card-base": {
|
||||||
@ -1999,12 +2022,12 @@
|
|||||||
"lastOnboardingVersion": "2.0.13",
|
"lastOnboardingVersion": "2.0.13",
|
||||||
"subscriptionNoticeCount": 0,
|
"subscriptionNoticeCount": 0,
|
||||||
"hasAvailableSubscription": false,
|
"hasAvailableSubscription": false,
|
||||||
"changelogLastFetched": 1771459754216,
|
"changelogLastFetched": 1771560193427,
|
||||||
"fallbackAvailableWarningThreshold": 0.2,
|
"fallbackAvailableWarningThreshold": 0.2,
|
||||||
"hasIdeOnboardingBeenShown": {
|
"hasIdeOnboardingBeenShown": {
|
||||||
"vscode": true
|
"vscode": true
|
||||||
},
|
},
|
||||||
"lastReleaseNotesSeen": "2.1.47",
|
"lastReleaseNotesSeen": "2.1.49",
|
||||||
"isQualifiedForDataSharing": false,
|
"isQualifiedForDataSharing": false,
|
||||||
"hasIdeAutoConnectDialogBeenShown": true,
|
"hasIdeAutoConnectDialogBeenShown": true,
|
||||||
"shiftEnterKeyBindingInstalled": true,
|
"shiftEnterKeyBindingInstalled": true,
|
||||||
@ -2105,7 +2128,7 @@
|
|||||||
"currency": "USD"
|
"currency": "USD"
|
||||||
},
|
},
|
||||||
"remaining_passes": 3,
|
"remaining_passes": 3,
|
||||||
"timestamp": 1771535572741
|
"timestamp": 1771560445046
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opus45MigrationComplete": true,
|
"opus45MigrationComplete": true,
|
||||||
@ -2124,8 +2147,8 @@
|
|||||||
},
|
},
|
||||||
"skillUsage": {
|
"skillUsage": {
|
||||||
"major-domo": {
|
"major-domo": {
|
||||||
"usageCount": 12,
|
"usageCount": 13,
|
||||||
"lastUsedAt": 1771288623314
|
"lastUsedAt": 1771556414365
|
||||||
},
|
},
|
||||||
"paper-dynasty": {
|
"paper-dynasty": {
|
||||||
"usageCount": 12,
|
"usageCount": 12,
|
||||||
@ -2188,8 +2211,8 @@
|
|||||||
"lastUsedAt": 1770959377885
|
"lastUsedAt": 1770959377885
|
||||||
},
|
},
|
||||||
"sync-config": {
|
"sync-config": {
|
||||||
"usageCount": 23,
|
"usageCount": 25,
|
||||||
"lastUsedAt": 1771539236539
|
"lastUsedAt": 1771539739755
|
||||||
},
|
},
|
||||||
"claude-optimised": {
|
"claude-optimised": {
|
||||||
"usageCount": 4,
|
"usageCount": 4,
|
||||||
@ -2200,8 +2223,8 @@
|
|||||||
"lastUsedAt": 1771199427014
|
"lastUsedAt": 1771199427014
|
||||||
},
|
},
|
||||||
"cognitive-memory": {
|
"cognitive-memory": {
|
||||||
"usageCount": 32,
|
"usageCount": 35,
|
||||||
"lastUsedAt": 1771528594878
|
"lastUsedAt": 1771560320138
|
||||||
},
|
},
|
||||||
"commit-push": {
|
"commit-push": {
|
||||||
"usageCount": 17,
|
"usageCount": 17,
|
||||||
@ -2216,12 +2239,12 @@
|
|||||||
"lastUsedAt": 1771364503659
|
"lastUsedAt": 1771364503659
|
||||||
},
|
},
|
||||||
"commit-push-pr": {
|
"commit-push-pr": {
|
||||||
"usageCount": 2,
|
"usageCount": 4,
|
||||||
"lastUsedAt": 1771371630347
|
"lastUsedAt": 1771559391826
|
||||||
},
|
},
|
||||||
"mcp-manager": {
|
"mcp-manager": {
|
||||||
"usageCount": 3,
|
"usageCount": 5,
|
||||||
"lastUsedAt": 1771450174507
|
"lastUsedAt": 1771558943126
|
||||||
},
|
},
|
||||||
"orchestrator": {
|
"orchestrator": {
|
||||||
"usageCount": 3,
|
"usageCount": 3,
|
||||||
@ -2236,8 +2259,8 @@
|
|||||||
"lastUsedAt": 1771536951910
|
"lastUsedAt": 1771536951910
|
||||||
},
|
},
|
||||||
"save-memories": {
|
"save-memories": {
|
||||||
"usageCount": 3,
|
"usageCount": 7,
|
||||||
"lastUsedAt": 1771539341903
|
"lastUsedAt": 1771559941495
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opusProMigrationComplete": true,
|
"opusProMigrationComplete": true,
|
||||||
@ -2246,7 +2269,7 @@
|
|||||||
"passesLastSeenRemaining": 3,
|
"passesLastSeenRemaining": 3,
|
||||||
"clientDataCache": {
|
"clientDataCache": {
|
||||||
"data": {},
|
"data": {},
|
||||||
"timestamp": 1771539410106
|
"timestamp": 1771560553737
|
||||||
},
|
},
|
||||||
"hasShownOpus46Notice": {
|
"hasShownOpus46Notice": {
|
||||||
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
||||||
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"numStartups": 663,
|
"numStartups": 670,
|
||||||
"installMethod": "native",
|
"installMethod": "native",
|
||||||
"autoUpdates": true,
|
"autoUpdates": true,
|
||||||
"preferredNotifChannel": "iterm2_with_bell",
|
"preferredNotifChannel": "iterm2_with_bell",
|
||||||
@ -12,39 +12,39 @@
|
|||||||
"todo-list": 660,
|
"todo-list": 660,
|
||||||
"# for memory": 38,
|
"# for memory": 38,
|
||||||
"install-github-app": 663,
|
"install-github-app": 663,
|
||||||
"permissions": 654,
|
"permissions": 664,
|
||||||
"drag-and-drop-images": 659,
|
"drag-and-drop-images": 669,
|
||||||
"double-esc": 75,
|
"double-esc": 75,
|
||||||
"continue": 655,
|
"continue": 665,
|
||||||
"ide-hotkey": 74,
|
"ide-hotkey": 74,
|
||||||
"terminal-setup": 29,
|
"terminal-setup": 29,
|
||||||
"custom-commands": 655,
|
"custom-commands": 670,
|
||||||
"shift-enter": 661,
|
"shift-enter": 661,
|
||||||
"shift-tab": 655,
|
"shift-tab": 665,
|
||||||
"custom-agents": 663,
|
"custom-agents": 663,
|
||||||
"status-line": 536,
|
"status-line": 536,
|
||||||
"git-worktrees": 661,
|
"git-worktrees": 661,
|
||||||
"image-paste": 646,
|
"image-paste": 666,
|
||||||
"plan-mode-for-complex-tasks": 384,
|
"plan-mode-for-complex-tasks": 384,
|
||||||
"double-esc-code-restore": 654,
|
"double-esc-code-restore": 664,
|
||||||
"tab-toggle-thinking": 329,
|
"tab-toggle-thinking": 329,
|
||||||
"ultrathink-keyword": 423,
|
"ultrathink-keyword": 423,
|
||||||
"ide-upsell-external-terminal": 646,
|
"ide-upsell-external-terminal": 668,
|
||||||
"stickers-command": 416,
|
"stickers-command": 416,
|
||||||
"default-permission-mode-config": 436,
|
"default-permission-mode-config": 436,
|
||||||
"rename-conversation": 655,
|
"rename-conversation": 670,
|
||||||
"frontend-design-plugin": 560,
|
"frontend-design-plugin": 560,
|
||||||
"config-thinking-mode": 412,
|
"config-thinking-mode": 412,
|
||||||
"guest-passes": 587,
|
"guest-passes": 587,
|
||||||
"colorterm-truecolor": 638,
|
"colorterm-truecolor": 638,
|
||||||
"web-app": 657,
|
"web-app": 657,
|
||||||
"mobile-app": 657,
|
"mobile-app": 657,
|
||||||
"install-slack-app": 656,
|
"install-slack-app": 666,
|
||||||
"btw-side-question": 407,
|
"btw-side-question": 407,
|
||||||
"agent-flag": 652
|
"agent-flag": 667
|
||||||
},
|
},
|
||||||
"memoryUsageCount": 18,
|
"memoryUsageCount": 18,
|
||||||
"promptQueueUseCount": 4515,
|
"promptQueueUseCount": 4559,
|
||||||
"cachedStatsigGates": {
|
"cachedStatsigGates": {
|
||||||
"tengu_disable_bypass_permissions_mode": false,
|
"tengu_disable_bypass_permissions_mode": false,
|
||||||
"tengu_use_file_checkpoints": true,
|
"tengu_use_file_checkpoints": true,
|
||||||
@ -144,7 +144,7 @@
|
|||||||
"tengu_vinteuil_phrase": true,
|
"tengu_vinteuil_phrase": true,
|
||||||
"tengu_oboe": true,
|
"tengu_oboe": true,
|
||||||
"tengu_tst_names_in_messages": false,
|
"tengu_tst_names_in_messages": false,
|
||||||
"tengu_chomp_inflection": false,
|
"tengu_chomp_inflection": true,
|
||||||
"tengu_silver_lantern": false,
|
"tengu_silver_lantern": false,
|
||||||
"tengu_copper_lantern": false,
|
"tengu_copper_lantern": false,
|
||||||
"tengu_workout2": true,
|
"tengu_workout2": true,
|
||||||
@ -177,7 +177,14 @@
|
|||||||
"tengu_slate_nexus": false,
|
"tengu_slate_nexus": false,
|
||||||
"tengu_marble_sandcastle": true,
|
"tengu_marble_sandcastle": true,
|
||||||
"tengu_birch_mist": false,
|
"tengu_birch_mist": false,
|
||||||
"tengu_oak_drum": false
|
"tengu_oak_drum": false,
|
||||||
|
"tengu_worktree_mode": true,
|
||||||
|
"tengu_pebble_leaf_prune": false,
|
||||||
|
"tengu_swann_brevity": "control",
|
||||||
|
"tengu_crystal_beam": {
|
||||||
|
"budgetTokens": 0
|
||||||
|
},
|
||||||
|
"tengu_tool_input_aliasing": false
|
||||||
},
|
},
|
||||||
"hasSeenStashHint": true,
|
"hasSeenStashHint": true,
|
||||||
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
"firstStartTime": "2025-07-09T18:27:34.950Z",
|
||||||
@ -615,17 +622,17 @@
|
|||||||
"ssh-tdarr",
|
"ssh-tdarr",
|
||||||
"notediscovery"
|
"notediscovery"
|
||||||
],
|
],
|
||||||
"lastCost": 40.23374199999994,
|
"lastCost": 16.71361575000001,
|
||||||
"lastAPIDuration": 5995420,
|
"lastAPIDuration": 1844582,
|
||||||
"lastToolDuration": 2896147,
|
"lastToolDuration": 816971,
|
||||||
"lastDuration": 20374119,
|
"lastDuration": 29558088,
|
||||||
"lastLinesAdded": 2594,
|
"lastLinesAdded": 2386,
|
||||||
"lastLinesRemoved": 143,
|
"lastLinesRemoved": 60,
|
||||||
"lastTotalInputTokens": 747870,
|
"lastTotalInputTokens": 203907,
|
||||||
"lastTotalOutputTokens": 224482,
|
"lastTotalOutputTokens": 87182,
|
||||||
"lastTotalCacheCreationInputTokens": 1751354,
|
"lastTotalCacheCreationInputTokens": 987411,
|
||||||
"lastTotalCacheReadInputTokens": 47009653,
|
"lastTotalCacheReadInputTokens": 16492670,
|
||||||
"lastSessionId": "606a9f26-d08c-4654-8a9a-e118a2735aaa",
|
"lastSessionId": "ee8998aa-f26c-4743-84dc-0ba35f4e49c4",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -633,44 +640,44 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 4961513,
|
"lastAPIDurationWithoutRetries": 1843027,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-opus-4-6": {
|
"claude-opus-4-6": {
|
||||||
"inputTokens": 9124,
|
"inputTokens": 7030,
|
||||||
"outputTokens": 164889,
|
"outputTokens": 57045,
|
||||||
"cacheReadInputTokens": 44348975,
|
"cacheReadInputTokens": 14601090,
|
||||||
"cacheCreationInputTokens": 1408982,
|
"cacheCreationInputTokens": 789421,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 35.148469999999996
|
"costUSD": 13.695701250000003
|
||||||
},
|
},
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 732883,
|
"inputTokens": 196822,
|
||||||
"outputTokens": 15034,
|
"outputTokens": 4750,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 67247,
|
"cacheCreationInputTokens": 4167,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.892111749999999
|
"costUSD": 0.22578074999999995
|
||||||
},
|
},
|
||||||
"claude-sonnet-4-6": {
|
"claude-sonnet-4-6": {
|
||||||
"inputTokens": 5863,
|
"inputTokens": 55,
|
||||||
"outputTokens": 44559,
|
"outputTokens": 25387,
|
||||||
"cacheReadInputTokens": 2660678,
|
"cacheReadInputTokens": 1891580,
|
||||||
"cacheCreationInputTokens": 275125,
|
"cacheCreationInputTokens": 193823,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 4.19316025
|
"costUSD": 2.7921337499999996
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 126433,
|
"frame_duration_ms_count": 35110,
|
||||||
"frame_duration_ms_min": 0.033378999680280685,
|
"frame_duration_ms_min": 0.10013899999830755,
|
||||||
"frame_duration_ms_max": 185.3289749994874,
|
"frame_duration_ms_max": 45.71880799904466,
|
||||||
"frame_duration_ms_avg": 4.580825976891975,
|
"frame_duration_ms_avg": 1.8384896022149897,
|
||||||
"frame_duration_ms_p50": 1.4972434998489916,
|
"frame_duration_ms_p50": 0.9785875007510185,
|
||||||
"frame_duration_ms_p95": 3.451200450630833,
|
"frame_duration_ms_p95": 9.048351652547707,
|
||||||
"frame_duration_ms_p99": 90.20297368977218
|
"frame_duration_ms_p99": 25.241195021457933
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.12,
|
"lastFpsAverage": 1.19,
|
||||||
"lastFpsLow1Pct": 11.02
|
"lastFpsLow1Pct": 43.16
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/major-domo": {
|
"/mnt/NV2/Development/major-domo": {
|
||||||
"allowedTools": [],
|
"allowedTools": [],
|
||||||
@ -1082,17 +1089,17 @@
|
|||||||
"exampleFilesGeneratedAt": 1771431800882,
|
"exampleFilesGeneratedAt": 1771431800882,
|
||||||
"hasCompletedProjectOnboarding": true,
|
"hasCompletedProjectOnboarding": true,
|
||||||
"lastTotalWebSearchRequests": 0,
|
"lastTotalWebSearchRequests": 0,
|
||||||
"lastCost": 0.000711,
|
"lastCost": 13.231698250000006,
|
||||||
"lastAPIDuration": 823,
|
"lastAPIDuration": 891789,
|
||||||
"lastToolDuration": 0,
|
"lastToolDuration": 132172,
|
||||||
"lastDuration": 6284,
|
"lastDuration": 18087965,
|
||||||
"lastLinesAdded": 0,
|
"lastLinesAdded": 263,
|
||||||
"lastLinesRemoved": 0,
|
"lastLinesRemoved": 7,
|
||||||
"lastTotalInputTokens": 536,
|
"lastTotalInputTokens": 77295,
|
||||||
"lastTotalOutputTokens": 35,
|
"lastTotalOutputTokens": 35442,
|
||||||
"lastTotalCacheCreationInputTokens": 0,
|
"lastTotalCacheCreationInputTokens": 1044639,
|
||||||
"lastTotalCacheReadInputTokens": 0,
|
"lastTotalCacheReadInputTokens": 11865821,
|
||||||
"lastSessionId": "a20b0e55-c4ef-4a74-a352-c1c7e29dcecd",
|
"lastSessionId": "ace0ec70-77ed-44a1-806a-904ce665899a",
|
||||||
"reactVulnerabilityCache": {
|
"reactVulnerabilityCache": {
|
||||||
"detected": false,
|
"detected": false,
|
||||||
"package": null,
|
"package": null,
|
||||||
@ -1100,27 +1107,43 @@
|
|||||||
"version": null,
|
"version": null,
|
||||||
"packageManager": null
|
"packageManager": null
|
||||||
},
|
},
|
||||||
"lastAPIDurationWithoutRetries": 822,
|
"lastAPIDurationWithoutRetries": 891685,
|
||||||
"lastModelUsage": {
|
"lastModelUsage": {
|
||||||
"claude-haiku-4-5-20251001": {
|
"claude-haiku-4-5-20251001": {
|
||||||
"inputTokens": 536,
|
"inputTokens": 71834,
|
||||||
"outputTokens": 35,
|
"outputTokens": 2746,
|
||||||
"cacheReadInputTokens": 0,
|
"cacheReadInputTokens": 0,
|
||||||
"cacheCreationInputTokens": 0,
|
"cacheCreationInputTokens": 32095,
|
||||||
"webSearchRequests": 0,
|
"webSearchRequests": 0,
|
||||||
"costUSD": 0.000711
|
"costUSD": 0.12568275000000004
|
||||||
|
},
|
||||||
|
"claude-opus-4-6": {
|
||||||
|
"inputTokens": 5448,
|
||||||
|
"outputTokens": 27103,
|
||||||
|
"cacheReadInputTokens": 11539293,
|
||||||
|
"cacheCreationInputTokens": 945261,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 12.38234275
|
||||||
|
},
|
||||||
|
"claude-sonnet-4-6": {
|
||||||
|
"inputTokens": 13,
|
||||||
|
"outputTokens": 5593,
|
||||||
|
"cacheReadInputTokens": 326528,
|
||||||
|
"cacheCreationInputTokens": 67283,
|
||||||
|
"webSearchRequests": 0,
|
||||||
|
"costUSD": 0.72367275
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"lastFpsAverage": 6.68,
|
"lastFpsAverage": 0.78,
|
||||||
"lastFpsLow1Pct": 219.22,
|
"lastFpsLow1Pct": 25.74,
|
||||||
"lastSessionMetrics": {
|
"lastSessionMetrics": {
|
||||||
"frame_duration_ms_count": 38,
|
"frame_duration_ms_count": 14187,
|
||||||
"frame_duration_ms_min": 0.0733989999998812,
|
"frame_duration_ms_min": 0.08366899937391281,
|
||||||
"frame_duration_ms_max": 4.561674999999923,
|
"frame_duration_ms_max": 68.00957799889147,
|
||||||
"frame_duration_ms_avg": 1.2307077105262876,
|
"frame_duration_ms_avg": 2.3383289160528014,
|
||||||
"frame_duration_ms_p50": 1.1626314999998613,
|
"frame_duration_ms_p50": 1.0047624995931983,
|
||||||
"frame_duration_ms_p95": 2.57251919999976,
|
"frame_duration_ms_p95": 13.091784298792101,
|
||||||
"frame_duration_ms_p99": 3.884495079999988
|
"frame_duration_ms_p99": 38.75486159028485
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"/mnt/NV2/Development/efd-trading-card-base": {
|
"/mnt/NV2/Development/efd-trading-card-base": {
|
||||||
@ -1999,12 +2022,12 @@
|
|||||||
"lastOnboardingVersion": "2.0.13",
|
"lastOnboardingVersion": "2.0.13",
|
||||||
"subscriptionNoticeCount": 0,
|
"subscriptionNoticeCount": 0,
|
||||||
"hasAvailableSubscription": false,
|
"hasAvailableSubscription": false,
|
||||||
"changelogLastFetched": 1771459754216,
|
"changelogLastFetched": 1771560193427,
|
||||||
"fallbackAvailableWarningThreshold": 0.2,
|
"fallbackAvailableWarningThreshold": 0.2,
|
||||||
"hasIdeOnboardingBeenShown": {
|
"hasIdeOnboardingBeenShown": {
|
||||||
"vscode": true
|
"vscode": true
|
||||||
},
|
},
|
||||||
"lastReleaseNotesSeen": "2.1.47",
|
"lastReleaseNotesSeen": "2.1.49",
|
||||||
"isQualifiedForDataSharing": false,
|
"isQualifiedForDataSharing": false,
|
||||||
"hasIdeAutoConnectDialogBeenShown": true,
|
"hasIdeAutoConnectDialogBeenShown": true,
|
||||||
"shiftEnterKeyBindingInstalled": true,
|
"shiftEnterKeyBindingInstalled": true,
|
||||||
@ -2105,7 +2128,7 @@
|
|||||||
"currency": "USD"
|
"currency": "USD"
|
||||||
},
|
},
|
||||||
"remaining_passes": 3,
|
"remaining_passes": 3,
|
||||||
"timestamp": 1771535572741
|
"timestamp": 1771560445046
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opus45MigrationComplete": true,
|
"opus45MigrationComplete": true,
|
||||||
@ -2124,8 +2147,8 @@
|
|||||||
},
|
},
|
||||||
"skillUsage": {
|
"skillUsage": {
|
||||||
"major-domo": {
|
"major-domo": {
|
||||||
"usageCount": 12,
|
"usageCount": 13,
|
||||||
"lastUsedAt": 1771288623314
|
"lastUsedAt": 1771556414365
|
||||||
},
|
},
|
||||||
"paper-dynasty": {
|
"paper-dynasty": {
|
||||||
"usageCount": 12,
|
"usageCount": 12,
|
||||||
@ -2188,8 +2211,8 @@
|
|||||||
"lastUsedAt": 1770959377885
|
"lastUsedAt": 1770959377885
|
||||||
},
|
},
|
||||||
"sync-config": {
|
"sync-config": {
|
||||||
"usageCount": 23,
|
"usageCount": 25,
|
||||||
"lastUsedAt": 1771539236539
|
"lastUsedAt": 1771539739755
|
||||||
},
|
},
|
||||||
"claude-optimised": {
|
"claude-optimised": {
|
||||||
"usageCount": 4,
|
"usageCount": 4,
|
||||||
@ -2200,8 +2223,8 @@
|
|||||||
"lastUsedAt": 1771199427014
|
"lastUsedAt": 1771199427014
|
||||||
},
|
},
|
||||||
"cognitive-memory": {
|
"cognitive-memory": {
|
||||||
"usageCount": 32,
|
"usageCount": 35,
|
||||||
"lastUsedAt": 1771528594878
|
"lastUsedAt": 1771560320138
|
||||||
},
|
},
|
||||||
"commit-push": {
|
"commit-push": {
|
||||||
"usageCount": 17,
|
"usageCount": 17,
|
||||||
@ -2216,12 +2239,12 @@
|
|||||||
"lastUsedAt": 1771364503659
|
"lastUsedAt": 1771364503659
|
||||||
},
|
},
|
||||||
"commit-push-pr": {
|
"commit-push-pr": {
|
||||||
"usageCount": 2,
|
"usageCount": 4,
|
||||||
"lastUsedAt": 1771371630347
|
"lastUsedAt": 1771559391826
|
||||||
},
|
},
|
||||||
"mcp-manager": {
|
"mcp-manager": {
|
||||||
"usageCount": 3,
|
"usageCount": 5,
|
||||||
"lastUsedAt": 1771450174507
|
"lastUsedAt": 1771558943126
|
||||||
},
|
},
|
||||||
"orchestrator": {
|
"orchestrator": {
|
||||||
"usageCount": 3,
|
"usageCount": 3,
|
||||||
@ -2236,8 +2259,8 @@
|
|||||||
"lastUsedAt": 1771536951910
|
"lastUsedAt": 1771536951910
|
||||||
},
|
},
|
||||||
"save-memories": {
|
"save-memories": {
|
||||||
"usageCount": 3,
|
"usageCount": 7,
|
||||||
"lastUsedAt": 1771539341903
|
"lastUsedAt": 1771559941495
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"opusProMigrationComplete": true,
|
"opusProMigrationComplete": true,
|
||||||
@ -2246,7 +2269,7 @@
|
|||||||
"passesLastSeenRemaining": 3,
|
"passesLastSeenRemaining": 3,
|
||||||
"clientDataCache": {
|
"clientDataCache": {
|
||||||
"data": {},
|
"data": {},
|
||||||
"timestamp": 1771539486281
|
"timestamp": 1771560601674
|
||||||
},
|
},
|
||||||
"hasShownOpus46Notice": {
|
"hasShownOpus46Notice": {
|
||||||
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
"57783733-6e1e-48d5-9cb7-fa588a77b795": true
|
||||||
2295
backups/.claude.json.backup.1771560754552
Normal file
2295
backups/.claude.json.backup.1771560754552
Normal file
File diff suppressed because it is too large
Load Diff
@ -1,5 +1,5 @@
|
|||||||
{
|
{
|
||||||
"fetchedAt": "2026-02-19T21:12:52.014Z",
|
"fetchedAt": "2026-02-20T04:07:24.860Z",
|
||||||
"plugins": [
|
"plugins": [
|
||||||
{
|
{
|
||||||
"plugin": "code-review@claude-plugins-official",
|
"plugin": "code-review@claude-plugins-official",
|
||||||
|
|||||||
@ -13,6 +13,6 @@
|
|||||||
"repo": "anthropics/claude-code"
|
"repo": "anthropics/claude-code"
|
||||||
},
|
},
|
||||||
"installLocation": "/home/cal/.claude/plugins/marketplaces/claude-code-plugins",
|
"installLocation": "/home/cal/.claude/plugins/marketplaces/claude-code-plugins",
|
||||||
"lastUpdated": "2026-02-19T21:13:33.303Z"
|
"lastUpdated": "2026-02-20T04:08:05.428Z"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1 +1 @@
|
|||||||
Subproject commit b757fc9ecdf77e450442e3ca9f9093a9da35952b
|
Subproject commit 0d996a7c346e2f3aca34e3488e49f1da537d7811
|
||||||
@ -55,7 +55,8 @@
|
|||||||
"mcp__memorygraph__*",
|
"mcp__memorygraph__*",
|
||||||
"mcp__memorygraph__get_memory",
|
"mcp__memorygraph__get_memory",
|
||||||
"Skill(notediscovery)",
|
"Skill(notediscovery)",
|
||||||
"mcp__cognitive-memory__*"
|
"mcp__cognitive-memory__*",
|
||||||
|
"mcp__n8n-mcp__*"
|
||||||
],
|
],
|
||||||
"deny": [
|
"deny": [
|
||||||
"Bash(diskutil partitionDisk)",
|
"Bash(diskutil partitionDisk)",
|
||||||
|
|||||||
@ -13,103 +13,57 @@ Minimize context consumption by only loading MCP servers when they're actually n
|
|||||||
### Auto-Detection
|
### Auto-Detection
|
||||||
When user makes a request, analyze the task to determine if any MCPs would be useful:
|
When user makes a request, analyze the task to determine if any MCPs would be useful:
|
||||||
|
|
||||||
**Web Stack Analysis & Port Scanning:**
|
**n8n Workflow Automation:**
|
||||||
- Keywords: "what stack", "what technology", "web server info", "port scan", "open ports", "services running"
|
- Keywords: "n8n", "workflow", "automation", "webhook", "n8n node", "n8n template"
|
||||||
- MCPs: `httpx`, `naabu`
|
- MCPs: `n8n-mcp`
|
||||||
|
|
||||||
**Web Scraping & Automation:**
|
**Web Scraping & Automation:**
|
||||||
- Keywords: "scrape", "extract from website", "crawl", "get data from", "browser automation", "screenshot website"
|
- Keywords: "scrape", "extract from website", "crawl", "get data from", "browser automation", "screenshot website"
|
||||||
- MCPs: `apify`, `brightdata`, `playwright`
|
- MCPs: `playwright`
|
||||||
|
|
||||||
**Documentation Lookup:**
|
|
||||||
- Keywords: "documentation for", "API reference", "check docs", "how to use [library]"
|
|
||||||
- MCPs: `Ref`
|
|
||||||
|
|
||||||
**Payment/Stripe Operations:**
|
|
||||||
- Keywords: "stripe", "payment", "subscription", "invoice", "customer billing"
|
|
||||||
- MCPs: `stripe`
|
|
||||||
|
|
||||||
**Personal Content (Daniel Miessler specific):**
|
|
||||||
- Keywords: "your opinion on", "you wrote about", "your blog post", "your thoughts"
|
|
||||||
- MCPs: `content`, `daemon`, `Foundry`
|
|
||||||
|
|
||||||
|
|
||||||
### MCP Registry
|
### MCP Registry
|
||||||
```json
|
```json
|
||||||
{
|
{
|
||||||
"httpx": {
|
"cognitive-memory": {
|
||||||
"type": "http",
|
|
||||||
"category": "security",
|
|
||||||
"description": "Web server stack information and tech analysis",
|
|
||||||
"triggers": ["stack", "web server", "technology", "httpx"],
|
|
||||||
"url": "https://httpx-mcp.danielmiessler.workers.dev"
|
|
||||||
},
|
|
||||||
"naabu": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "security",
|
|
||||||
"description": "Port scanning and service discovery",
|
|
||||||
"triggers": ["port scan", "open ports", "services", "naabu"],
|
|
||||||
"url": "https://naabu-mcp.danielmiessler.workers.dev"
|
|
||||||
},
|
|
||||||
"apify": {
|
|
||||||
"type": "stdio",
|
"type": "stdio",
|
||||||
"category": "scraping",
|
"category": "memory",
|
||||||
"description": "Web scraping and automation via Apify",
|
"description": "Cognitive memory system with decay scoring, episodic logging, and graph relationships",
|
||||||
"triggers": ["scrape", "crawl", "extract", "apify"],
|
"triggers": ["memory", "recall", "remember", "cognitive"],
|
||||||
"command": "bunx"
|
"command": "/home/cal/.claude/skills/cognitive-memory/mcp-server/cognitive-memory-mcp",
|
||||||
|
"alwaysLoaded": true
|
||||||
},
|
},
|
||||||
"brightdata": {
|
"n8n-mcp": {
|
||||||
"type": "stdio",
|
"type": "stdio",
|
||||||
"category": "scraping",
|
"category": "automation",
|
||||||
"description": "Enterprise web data extraction",
|
"description": "n8n workflow automation - node docs, templates, workflow management via API",
|
||||||
"triggers": ["scrape", "proxy", "brightdata"],
|
"triggers": ["n8n", "workflow", "automation", "webhook", "n8n node", "n8n template"],
|
||||||
"command": "bunx"
|
"command": "npx",
|
||||||
|
"args": ["n8n-mcp"],
|
||||||
|
"env": {
|
||||||
|
"MCP_MODE": "stdio",
|
||||||
|
"N8N_API_URL": "http://10.10.0.210:5678",
|
||||||
|
"N8N_API_KEY": "~/.claude/secrets/n8n_api_key",
|
||||||
|
"N8N_MCP_TELEMETRY_DISABLED": "true",
|
||||||
|
"DISABLE_CONSOLE_OUTPUT": "true",
|
||||||
|
"LOG_LEVEL": "error"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"playwright": {
|
"playwright": {
|
||||||
"type": "stdio",
|
"type": "stdio",
|
||||||
"category": "automation",
|
"category": "automation",
|
||||||
"description": "Browser automation and testing",
|
"description": "Browser automation and testing",
|
||||||
"triggers": ["browser", "screenshot", "playwright", "automate browser"],
|
"triggers": ["browser", "screenshot", "playwright", "automate browser"],
|
||||||
"command": "bunx"
|
"command": "npx",
|
||||||
},
|
"args": ["@anthropic/mcp-playwright"]
|
||||||
"Ref": {
|
|
||||||
"type": "stdio",
|
|
||||||
"category": "documentation",
|
|
||||||
"description": "Documentation search from public and private sources",
|
|
||||||
"triggers": ["documentation", "docs", "API reference", "ref"],
|
|
||||||
"command": "bunx"
|
|
||||||
},
|
|
||||||
"stripe": {
|
|
||||||
"type": "stdio",
|
|
||||||
"category": "payments",
|
|
||||||
"description": "Stripe payment processing and operations",
|
|
||||||
"triggers": ["stripe", "payment", "billing", "subscription"],
|
|
||||||
"command": "bunx"
|
|
||||||
},
|
|
||||||
"content": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "personal",
|
|
||||||
"description": "Daniel Miessler's content archive",
|
|
||||||
"triggers": ["your content", "you wrote", "your blog", "your opinion"],
|
|
||||||
"url": "https://content-mcp.danielmiessler.workers.dev"
|
|
||||||
},
|
|
||||||
"daemon": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "personal",
|
|
||||||
"description": "Daniel Miessler's personal API",
|
|
||||||
"triggers": ["daemon", "personal api"],
|
|
||||||
"url": "https://mcp.daemon.danielmiessler.com"
|
|
||||||
},
|
|
||||||
"Foundry": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "personal",
|
|
||||||
"description": "Daniel Miessler's PAI infrastructure",
|
|
||||||
"triggers": ["foundry", "pai tool"],
|
|
||||||
"url": "https://api.danielmiessler.com/mcp/"
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
```
|
```
|
||||||
|
|
||||||
|
> **Note:** The actual MCP server definitions (with real credentials) live in `~/.claude/.mcp-full.json`.
|
||||||
|
> The registry above documents triggers and categories for auto-detection.
|
||||||
|
> Credentials like `N8N_API_KEY` are stored in `~/.claude/secrets/` and referenced by the full config.
|
||||||
|
|
||||||
## Commands & Usage
|
## Commands & Usage
|
||||||
|
|
||||||
### Automatic Mode (Default)
|
### Automatic Mode (Default)
|
||||||
@ -130,14 +84,14 @@ User can explicitly manage MCPs:
|
|||||||
|
|
||||||
### Example Workflow
|
### Example Workflow
|
||||||
|
|
||||||
**User:** "Can you check what tech stack reddit.com is running?"
|
**User:** "Help me create an n8n workflow for monitoring Proxmox backups"
|
||||||
|
|
||||||
**Jarvis:**
|
**Claude:**
|
||||||
```
|
```
|
||||||
Detected need for web stack analysis.
|
Detected need for n8n workflow automation.
|
||||||
Loading MCP: httpx
|
Loading MCP: n8n-mcp
|
||||||
|
|
||||||
[Modifies .mcp.json to enable httpx]
|
[Modifies .mcp.json to enable n8n-mcp from .mcp-full.json]
|
||||||
⚠️ Note: Claude Code restart required for MCP changes to take effect.
|
⚠️ Note: Claude Code restart required for MCP changes to take effect.
|
||||||
Would you like me to continue with the task after restart?
|
Would you like me to continue with the task after restart?
|
||||||
```
|
```
|
||||||
@ -145,17 +99,24 @@ Would you like me to continue with the task after restart?
|
|||||||
**After task completion:**
|
**After task completion:**
|
||||||
```
|
```
|
||||||
Task complete!
|
Task complete!
|
||||||
Currently loaded MCPs: httpx (consuming ~500 tokens)
|
Currently loaded MCPs: n8n-mcp (consuming ~1500 tokens)
|
||||||
Would you like me to unload httpx to free up context? (yes/no)
|
Would you like me to unload n8n-mcp to free up context? (yes/no)
|
||||||
```
|
```
|
||||||
|
|
||||||
## Configuration Files
|
## Configuration Files
|
||||||
|
|
||||||
|
### Where Claude Code Actually Reads MCP Config
|
||||||
|
Claude Code reads MCP server definitions from **two** locations:
|
||||||
|
1. **Global**: `~/.claude.json` → `mcpServers` key (always-on MCPs like `cognitive-memory`)
|
||||||
|
2. **Project**: `<project-root>/.mcp.json` → `mcpServers` key (on-demand MCPs)
|
||||||
|
|
||||||
|
**IMPORTANT:** `~/.claude/.mcp.json` is NOT read by Claude Code. The mcp-manager operates on the project-level `.mcp.json` (auto-detected via git root).
|
||||||
|
|
||||||
### Locations
|
### Locations
|
||||||
- **Active Config**: `~/.claude/.mcp.json`
|
- **Global Config**: `~/.claude.json` → always-on MCPs (cognitive-memory)
|
||||||
- **Backup Config**: `~/.claude/.mcp.json.backup`
|
- **Project Config**: `<project-root>/.mcp.json` → on-demand MCPs (n8n-mcp, playwright, etc.)
|
||||||
- **Full Registry**: `~/.claude/.mcp-full.json` (all MCPs)
|
- **Full Registry**: `~/.claude/.mcp-full.json` (all available MCP definitions with credentials)
|
||||||
- **Minimal Config**: `~/.claude/.mcp-minimal.json` (empty/essential only)
|
- **Backup**: `<project-root>/.mcp.json.backup` (auto-created before changes)
|
||||||
|
|
||||||
### Safety
|
### Safety
|
||||||
- Always backup before modifications
|
- Always backup before modifications
|
||||||
@ -166,19 +127,20 @@ Would you like me to unload httpx to free up context? (yes/no)
|
|||||||
## Implementation Details
|
## Implementation Details
|
||||||
|
|
||||||
### Enable MCP
|
### Enable MCP
|
||||||
1. Read current `.mcp.json`
|
1. Detect project root (git root or CWD)
|
||||||
2. Backup to `.mcp.json.backup`
|
2. Read current `<project>/.mcp.json`
|
||||||
3. Read full MCP definition from `.mcp-full.json`
|
3. Backup to `<project>/.mcp.json.backup`
|
||||||
4. Merge MCP into active config
|
4. Read full MCP definition from `~/.claude/.mcp-full.json`
|
||||||
5. Write updated `.mcp.json`
|
5. Merge MCP into project config
|
||||||
6. Log change
|
6. Write updated `<project>/.mcp.json`
|
||||||
7. Notify user (restart required)
|
7. Log change
|
||||||
|
8. Notify user (restart required)
|
||||||
|
|
||||||
### Disable MCP
|
### Disable MCP
|
||||||
1. Read current `.mcp.json`
|
1. Read current `<project>/.mcp.json`
|
||||||
2. Backup to `.mcp.json.backup`
|
2. Backup to `<project>/.mcp.json.backup`
|
||||||
3. Remove MCP from `mcpServers` object
|
3. Remove MCP from `mcpServers` object
|
||||||
4. Write updated `.mcp.json`
|
4. Write updated `<project>/.mcp.json`
|
||||||
5. Log change
|
5. Log change
|
||||||
6. Notify user (restart required)
|
6. Notify user (restart required)
|
||||||
|
|
||||||
@ -227,7 +189,7 @@ MCPs require Claude Code restart to take effect. Options:
|
|||||||
|
|
||||||
## Proactive Use
|
## Proactive Use
|
||||||
|
|
||||||
This skill should be invoked automatically by Jarvis when:
|
This skill should be invoked automatically by Claude when:
|
||||||
1. User request contains MCP trigger keywords
|
1. User request contains MCP trigger keywords
|
||||||
2. Task clearly requires external service (documentation, scraping, etc.)
|
2. Task clearly requires external service (documentation, scraping, etc.)
|
||||||
3. User asks "can you..." for tasks requiring MCPs
|
3. User asks "can you..." for tasks requiring MCPs
|
||||||
@ -279,10 +241,10 @@ python3 ~/.claude/skills/mcp-manager/mcp_control.py reset
|
|||||||
- **Context Savings**: Each unused MCP saves ~200-1000 tokens depending on complexity
|
- **Context Savings**: Each unused MCP saves ~200-1000 tokens depending on complexity
|
||||||
- **Credential Safety**: Never modify or expose API keys/tokens
|
- **Credential Safety**: Never modify or expose API keys/tokens
|
||||||
- **Minimal Default**: Start each session with minimal MCPs, load on-demand
|
- **Minimal Default**: Start each session with minimal MCPs, load on-demand
|
||||||
- **Smart Defaults**: Can configure certain MCPs (like `Ref`) to stay loaded by default
|
- **Smart Defaults**: `cognitive-memory` stays loaded by default; all others are on-demand
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
**Created**: 2025-11-09
|
**Created**: 2025-11-09
|
||||||
**Author**: Jarvis (PAI System)
|
**Updated**: 2026-02-19
|
||||||
**Version**: 1.0.0
|
**Version**: 1.1.0
|
||||||
|
|||||||
@ -12,95 +12,89 @@ from typing import List, Dict, Optional
|
|||||||
import sys
|
import sys
|
||||||
|
|
||||||
# Paths
|
# Paths
|
||||||
|
# Claude Code reads MCP config from TWO locations:
|
||||||
|
# 1. Global: ~/.claude.json -> mcpServers (always-on MCPs like cognitive-memory)
|
||||||
|
# 2. Project: <project-root>/.mcp.json -> mcpServers (on-demand MCPs)
|
||||||
|
# The mcp-manager operates on the PROJECT-LEVEL config for on-demand loading.
|
||||||
|
# The full registry (~/.claude/.mcp-full.json) stores all available MCP definitions.
|
||||||
CLAUDE_DIR = Path.home() / ".claude"
|
CLAUDE_DIR = Path.home() / ".claude"
|
||||||
MCP_CONFIG = CLAUDE_DIR / ".mcp.json"
|
GLOBAL_CONFIG = Path.home() / ".claude.json" # Global MCPs (always-on)
|
||||||
MCP_BACKUP = CLAUDE_DIR / ".mcp.json.backup"
|
MCP_FULL = CLAUDE_DIR / ".mcp-full.json" # Full registry of all MCPs
|
||||||
MCP_FULL = CLAUDE_DIR / ".mcp-full.json"
|
|
||||||
MCP_MINIMAL = CLAUDE_DIR / ".mcp-minimal.json"
|
MCP_MINIMAL = CLAUDE_DIR / ".mcp-minimal.json"
|
||||||
LOG_FILE = CLAUDE_DIR / "logs" / "mcp-manager.log"
|
LOG_FILE = CLAUDE_DIR / "logs" / "mcp-manager.log"
|
||||||
|
|
||||||
|
|
||||||
|
# Project-level config is determined by finding the git root
|
||||||
|
def _find_project_mcp_config() -> Path:
|
||||||
|
"""Find the project-level .mcp.json by looking for git root."""
|
||||||
|
import subprocess
|
||||||
|
|
||||||
|
try:
|
||||||
|
result = subprocess.run(
|
||||||
|
["git", "rev-parse", "--show-toplevel"],
|
||||||
|
capture_output=True,
|
||||||
|
text=True,
|
||||||
|
timeout=5,
|
||||||
|
)
|
||||||
|
if result.returncode == 0:
|
||||||
|
return Path(result.stdout.strip()) / ".mcp.json"
|
||||||
|
except (subprocess.TimeoutExpired, FileNotFoundError):
|
||||||
|
pass
|
||||||
|
# Fallback: use CWD
|
||||||
|
return Path.cwd() / ".mcp.json"
|
||||||
|
|
||||||
|
|
||||||
|
MCP_CONFIG = _find_project_mcp_config()
|
||||||
|
MCP_BACKUP = MCP_CONFIG.with_suffix(".json.backup")
|
||||||
|
|
||||||
# Ensure log directory exists
|
# Ensure log directory exists
|
||||||
LOG_FILE.parent.mkdir(parents=True, exist_ok=True)
|
LOG_FILE.parent.mkdir(parents=True, exist_ok=True)
|
||||||
|
|
||||||
# MCP Registry with metadata
|
# MCP Registry with metadata
|
||||||
|
# NOTE: cognitive-memory is always-on in ~/.claude.json (global config).
|
||||||
|
# These are on-demand MCPs loaded into project-level .mcp.json.
|
||||||
MCP_REGISTRY = {
|
MCP_REGISTRY = {
|
||||||
"httpx": {
|
"n8n-mcp": {
|
||||||
"type": "http",
|
|
||||||
"category": "security",
|
|
||||||
"description": "Web server stack information and tech analysis",
|
|
||||||
"triggers": ["stack", "web server", "technology", "httpx", "what tech"],
|
|
||||||
"estimated_tokens": 300
|
|
||||||
},
|
|
||||||
"naabu": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "security",
|
|
||||||
"description": "Port scanning and service discovery",
|
|
||||||
"triggers": ["port scan", "open ports", "services", "naabu", "network scan"],
|
|
||||||
"estimated_tokens": 300
|
|
||||||
},
|
|
||||||
"apify": {
|
|
||||||
"type": "stdio",
|
"type": "stdio",
|
||||||
"category": "scraping",
|
"category": "automation",
|
||||||
"description": "Web scraping and automation via Apify",
|
"description": "n8n workflow automation - node docs, templates, workflow CRUD",
|
||||||
"triggers": ["scrape", "crawl", "extract", "apify"],
|
"triggers": [
|
||||||
"estimated_tokens": 800
|
"n8n",
|
||||||
},
|
"workflow",
|
||||||
"brightdata": {
|
"automation",
|
||||||
"type": "stdio",
|
"webhook",
|
||||||
"category": "scraping",
|
"n8n node",
|
||||||
"description": "Enterprise web data extraction",
|
"n8n template",
|
||||||
"triggers": ["scrape", "proxy", "brightdata"],
|
],
|
||||||
"estimated_tokens": 500
|
"estimated_tokens": 1500,
|
||||||
},
|
},
|
||||||
"playwright": {
|
"playwright": {
|
||||||
"type": "stdio",
|
"type": "stdio",
|
||||||
"category": "automation",
|
"category": "automation",
|
||||||
"description": "Browser automation and testing",
|
"description": "Browser automation and testing",
|
||||||
"triggers": ["browser", "screenshot", "playwright", "automate browser"],
|
"triggers": ["browser", "screenshot", "playwright", "automate browser"],
|
||||||
"estimated_tokens": 1000
|
"estimated_tokens": 1000,
|
||||||
},
|
|
||||||
"Ref": {
|
|
||||||
"type": "stdio",
|
|
||||||
"category": "documentation",
|
|
||||||
"description": "Documentation search from public and private sources",
|
|
||||||
"triggers": ["documentation", "docs", "api reference", "ref"],
|
|
||||||
"estimated_tokens": 600
|
|
||||||
},
|
|
||||||
"stripe": {
|
|
||||||
"type": "stdio",
|
|
||||||
"category": "payments",
|
|
||||||
"description": "Stripe payment processing and operations",
|
|
||||||
"triggers": ["stripe", "payment", "billing", "subscription"],
|
|
||||||
"estimated_tokens": 700
|
|
||||||
},
|
|
||||||
"content": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "personal",
|
|
||||||
"description": "Daniel Miessler's content archive",
|
|
||||||
"triggers": ["your content", "you wrote", "your blog", "your opinion"],
|
|
||||||
"estimated_tokens": 400
|
|
||||||
},
|
|
||||||
"daemon": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "personal",
|
|
||||||
"description": "Daniel Miessler's personal API",
|
|
||||||
"triggers": ["daemon", "personal api"],
|
|
||||||
"estimated_tokens": 300
|
|
||||||
},
|
|
||||||
"Foundry": {
|
|
||||||
"type": "http",
|
|
||||||
"category": "personal",
|
|
||||||
"description": "Daniel Miessler's PAI infrastructure",
|
|
||||||
"triggers": ["foundry", "pai tool"],
|
|
||||||
"estimated_tokens": 500
|
|
||||||
},
|
},
|
||||||
"notediscovery": {
|
"notediscovery": {
|
||||||
"type": "stdio",
|
"type": "stdio",
|
||||||
"category": "notes",
|
"category": "notes",
|
||||||
"description": "Personal knowledge base - search, read, create, update notes",
|
"description": "Personal knowledge base - search, read, create, update notes",
|
||||||
"triggers": ["note", "notes", "knowledge base", "remember", "save this", "my notes", "write down", "jot down", "search my notes", "create note", "update note", "notediscovery"],
|
"triggers": [
|
||||||
"estimated_tokens": 500
|
"note",
|
||||||
}
|
"notes",
|
||||||
|
"knowledge base",
|
||||||
|
"remember",
|
||||||
|
"save this",
|
||||||
|
"my notes",
|
||||||
|
"write down",
|
||||||
|
"jot down",
|
||||||
|
"search my notes",
|
||||||
|
"create note",
|
||||||
|
"update note",
|
||||||
|
"notediscovery",
|
||||||
|
],
|
||||||
|
"estimated_tokens": 500,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -182,7 +176,9 @@ def get_mcp_status() -> Dict:
|
|||||||
"loaded": loaded,
|
"loaded": loaded,
|
||||||
"available": list(MCP_REGISTRY.keys()),
|
"available": list(MCP_REGISTRY.keys()),
|
||||||
"unloaded": [m for m in MCP_REGISTRY.keys() if m not in loaded],
|
"unloaded": [m for m in MCP_REGISTRY.keys() if m not in loaded],
|
||||||
"total_tokens": sum(MCP_REGISTRY[m]["estimated_tokens"] for m in loaded if m in MCP_REGISTRY)
|
"total_tokens": sum(
|
||||||
|
MCP_REGISTRY[m]["estimated_tokens"] for m in loaded if m in MCP_REGISTRY
|
||||||
|
),
|
||||||
}
|
}
|
||||||
return status
|
return status
|
||||||
|
|
||||||
@ -279,28 +275,28 @@ def list_mcps():
|
|||||||
"""List all MCPs with their status"""
|
"""List all MCPs with their status"""
|
||||||
status = get_mcp_status()
|
status = get_mcp_status()
|
||||||
|
|
||||||
print("\n" + "="*60)
|
print("\n" + "=" * 60)
|
||||||
print("MCP SERVER STATUS")
|
print("MCP SERVER STATUS")
|
||||||
print("="*60)
|
print("=" * 60)
|
||||||
|
|
||||||
print(f"\n📊 Summary:")
|
print(f"\n📊 Summary:")
|
||||||
print(f" Loaded: {len(status['loaded'])}")
|
print(f" Loaded: {len(status['loaded'])}")
|
||||||
print(f" Available: {len(status['available'])}")
|
print(f" Available: {len(status['available'])}")
|
||||||
print(f" Context Usage: ~{status['total_tokens']} tokens")
|
print(f" Context Usage: ~{status['total_tokens']} tokens")
|
||||||
|
|
||||||
if status['loaded']:
|
if status["loaded"]:
|
||||||
print(f"\n✅ Currently Loaded:")
|
print(f"\n✅ Currently Loaded:")
|
||||||
for mcp in status['loaded']:
|
for mcp in status["loaded"]:
|
||||||
info = MCP_REGISTRY.get(mcp, {})
|
info = MCP_REGISTRY.get(mcp, {})
|
||||||
tokens = info.get('estimated_tokens', '?')
|
tokens = info.get("estimated_tokens", "?")
|
||||||
desc = info.get('description', 'No description')
|
desc = info.get("description", "No description")
|
||||||
print(f" • {mcp} (~{tokens} tokens) - {desc}")
|
print(f" • {mcp} (~{tokens} tokens) - {desc}")
|
||||||
|
|
||||||
if status['unloaded']:
|
if status["unloaded"]:
|
||||||
print(f"\n⭕ Available (Not Loaded):")
|
print(f"\n⭕ Available (Not Loaded):")
|
||||||
for mcp in status['unloaded']:
|
for mcp in status["unloaded"]:
|
||||||
info = MCP_REGISTRY.get(mcp, {})
|
info = MCP_REGISTRY.get(mcp, {})
|
||||||
desc = info.get('description', 'No description')
|
desc = info.get("description", "No description")
|
||||||
print(f" • {mcp} - {desc}")
|
print(f" • {mcp} - {desc}")
|
||||||
|
|
||||||
print()
|
print()
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user