eidetic-os 4.0.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (191) hide show
  1. eidetic_os-4.0.0/.env.example +125 -0
  2. eidetic_os-4.0.0/.gitignore +80 -0
  3. eidetic_os-4.0.0/CHANGELOG.md +830 -0
  4. eidetic_os-4.0.0/LICENSE +21 -0
  5. eidetic_os-4.0.0/PKG-INFO +1620 -0
  6. eidetic_os-4.0.0/README.md +1536 -0
  7. eidetic_os-4.0.0/dashboard/README.md +45 -0
  8. eidetic_os-4.0.0/docs/ARCHITECTURE.md +283 -0
  9. eidetic_os-4.0.0/docs/CLI-REFERENCE.md +1312 -0
  10. eidetic_os-4.0.0/docs/CONFIGURATION.md +204 -0
  11. eidetic_os-4.0.0/docs/DATA-CLASSIFICATION.md +42 -0
  12. eidetic_os-4.0.0/docs/EXAMPLES.md +261 -0
  13. eidetic_os-4.0.0/docs/FAQ.md +115 -0
  14. eidetic_os-4.0.0/docs/MIGRATION.md +180 -0
  15. eidetic_os-4.0.0/docs/PUBLISHING.md +216 -0
  16. eidetic_os-4.0.0/docs/QUICKSTART.md +155 -0
  17. eidetic_os-4.0.0/docs/README.md +100 -0
  18. eidetic_os-4.0.0/docs/REBUILD.md +92 -0
  19. eidetic_os-4.0.0/docs/SCHEDULED-TASKS.md +107 -0
  20. eidetic_os-4.0.0/docs/SCRIPTS.md +351 -0
  21. eidetic_os-4.0.0/docs/SETUP.md +320 -0
  22. eidetic_os-4.0.0/docs/SKILLS-CATALOGUE.md +1040 -0
  23. eidetic_os-4.0.0/docs/SKILLS-FRAMEWORK.md +339 -0
  24. eidetic_os-4.0.0/docs/TUTORIAL.md +991 -0
  25. eidetic_os-4.0.0/docs/features/README.md +56 -0
  26. eidetic_os-4.0.0/docs/features/dashboard.md +87 -0
  27. eidetic_os-4.0.0/docs/features/email-reports.md +96 -0
  28. eidetic_os-4.0.0/docs/features/extensions.md +161 -0
  29. eidetic_os-4.0.0/docs/features/git-automation.md +169 -0
  30. eidetic_os-4.0.0/docs/features/git-hardening.md +183 -0
  31. eidetic_os-4.0.0/docs/features/health-and-dashboard.md +117 -0
  32. eidetic_os-4.0.0/docs/features/knowledge-graph.md +140 -0
  33. eidetic_os-4.0.0/docs/features/knowledge-vault.md +99 -0
  34. eidetic_os-4.0.0/docs/features/mcp-skills.md +186 -0
  35. eidetic_os-4.0.0/docs/features/rag-search.md +205 -0
  36. eidetic_os-4.0.0/docs/features/security.md +143 -0
  37. eidetic_os-4.0.0/docs/features/session-capture.md +148 -0
  38. eidetic_os-4.0.0/docs/features/skills-and-automation.md +97 -0
  39. eidetic_os-4.0.0/docs/features/skills-marketplace.md +147 -0
  40. eidetic_os-4.0.0/docs/features/trading-sdk.md +183 -0
  41. eidetic_os-4.0.0/docs/features/vector-backends.md +151 -0
  42. eidetic_os-4.0.0/eidetic_os/__init__.py +7 -0
  43. eidetic_os-4.0.0/eidetic_os/__main__.py +6 -0
  44. eidetic_os-4.0.0/eidetic_os/_paths.py +78 -0
  45. eidetic_os-4.0.0/eidetic_os/_probe.py +76 -0
  46. eidetic_os-4.0.0/eidetic_os/_skills.py +322 -0
  47. eidetic_os-4.0.0/eidetic_os/audit.py +246 -0
  48. eidetic_os-4.0.0/eidetic_os/backends.py +427 -0
  49. eidetic_os-4.0.0/eidetic_os/channels/__init__.py +160 -0
  50. eidetic_os-4.0.0/eidetic_os/channels/base.py +140 -0
  51. eidetic_os-4.0.0/eidetic_os/channels/slack.py +104 -0
  52. eidetic_os-4.0.0/eidetic_os/channels/telegram.py +98 -0
  53. eidetic_os-4.0.0/eidetic_os/channels/webhook.py +127 -0
  54. eidetic_os-4.0.0/eidetic_os/cli.py +2952 -0
  55. eidetic_os-4.0.0/eidetic_os/config.py +107 -0
  56. eidetic_os-4.0.0/eidetic_os/dashboard/__init__.py +36 -0
  57. eidetic_os-4.0.0/eidetic_os/dashboard/app.py +174 -0
  58. eidetic_os-4.0.0/eidetic_os/dashboard/data.py +645 -0
  59. eidetic_os-4.0.0/eidetic_os/dashboard/static/style.css +696 -0
  60. eidetic_os-4.0.0/eidetic_os/dashboard/templates/404.html +11 -0
  61. eidetic_os-4.0.0/eidetic_os/dashboard/templates/_icons.html +107 -0
  62. eidetic_os-4.0.0/eidetic_os/dashboard/templates/audit.html +99 -0
  63. eidetic_os-4.0.0/eidetic_os/dashboard/templates/base.html +85 -0
  64. eidetic_os-4.0.0/eidetic_os/dashboard/templates/graph.html +436 -0
  65. eidetic_os-4.0.0/eidetic_os/dashboard/templates/health.html +108 -0
  66. eidetic_os-4.0.0/eidetic_os/dashboard/templates/scheduled.html +55 -0
  67. eidetic_os-4.0.0/eidetic_os/dashboard/templates/search.html +80 -0
  68. eidetic_os-4.0.0/eidetic_os/dashboard/templates/skill_detail.html +39 -0
  69. eidetic_os-4.0.0/eidetic_os/dashboard/templates/skills.html +99 -0
  70. eidetic_os-4.0.0/eidetic_os/dashboard/templates/vectors.html +129 -0
  71. eidetic_os-4.0.0/eidetic_os/extensions/__init__.py +255 -0
  72. eidetic_os-4.0.0/eidetic_os/extensions/base.py +101 -0
  73. eidetic_os-4.0.0/eidetic_os/extensions/jobs/__init__.py +86 -0
  74. eidetic_os-4.0.0/eidetic_os/extensions/trading/__init__.py +79 -0
  75. eidetic_os-4.0.0/eidetic_os/extensions/voice/__init__.py +75 -0
  76. eidetic_os-4.0.0/eidetic_os/facts.py +1027 -0
  77. eidetic_os-4.0.0/eidetic_os/fileio.py +215 -0
  78. eidetic_os-4.0.0/eidetic_os/filelock.py +146 -0
  79. eidetic_os-4.0.0/eidetic_os/frontmatter.py +228 -0
  80. eidetic_os-4.0.0/eidetic_os/git_sync.py +219 -0
  81. eidetic_os-4.0.0/eidetic_os/gitutil.py +171 -0
  82. eidetic_os-4.0.0/eidetic_os/marketplace.py +639 -0
  83. eidetic_os-4.0.0/eidetic_os/mcp_client.py +324 -0
  84. eidetic_os-4.0.0/eidetic_os/mcp_server.py +434 -0
  85. eidetic_os-4.0.0/eidetic_os/mcp_skill.py +148 -0
  86. eidetic_os-4.0.0/eidetic_os/memory_scoring.py +171 -0
  87. eidetic_os-4.0.0/eidetic_os/migration.py +162 -0
  88. eidetic_os-4.0.0/eidetic_os/netio.py +196 -0
  89. eidetic_os-4.0.0/eidetic_os/packs.py +152 -0
  90. eidetic_os-4.0.0/eidetic_os/plugin_server.py +200 -0
  91. eidetic_os-4.0.0/eidetic_os/rag.py +442 -0
  92. eidetic_os-4.0.0/eidetic_os/retry.py +173 -0
  93. eidetic_os-4.0.0/eidetic_os/sandbox.py +208 -0
  94. eidetic_os-4.0.0/eidetic_os/scriptkit.py +102 -0
  95. eidetic_os-4.0.0/eidetic_os/security.py +406 -0
  96. eidetic_os-4.0.0/eidetic_os/setup_wizard.py +534 -0
  97. eidetic_os-4.0.0/eidetic_os/sleeptime.py +834 -0
  98. eidetic_os-4.0.0/eidetic_os/vector_backend.py +215 -0
  99. eidetic_os-4.0.0/eidetic_os/vector_backends/__init__.py +19 -0
  100. eidetic_os-4.0.0/eidetic_os/vector_backends/chroma_backend.py +211 -0
  101. eidetic_os-4.0.0/eidetic_os/vector_backends/lancedb_backend.py +222 -0
  102. eidetic_os-4.0.0/eidetic_os/vector_backends/sqlite_backend.py +73 -0
  103. eidetic_os-4.0.0/eidetic_os/vectordb.py +509 -0
  104. eidetic_os-4.0.0/legacy-pypi-stub/README.md +44 -0
  105. eidetic_os-4.0.0/obsidian-plugin/README.md +105 -0
  106. eidetic_os-4.0.0/pyproject.toml +148 -0
  107. eidetic_os-4.0.0/schemas/enforce_schemas.py +433 -0
  108. eidetic_os-4.0.0/schemas/frontmatter-schemas.md +73 -0
  109. eidetic_os-4.0.0/scripts/_bootstrap.py +38 -0
  110. eidetic_os-4.0.0/scripts/_gif_lib.py +308 -0
  111. eidetic_os-4.0.0/scripts/build_graph.py +156 -0
  112. eidetic_os-4.0.0/scripts/embed_vault.py +873 -0
  113. eidetic_os-4.0.0/scripts/health_check.py +353 -0
  114. eidetic_os-4.0.0/scripts/make_demo_gif.py +183 -0
  115. eidetic_os-4.0.0/scripts/make_doc_gifs.py +277 -0
  116. eidetic_os-4.0.0/scripts/rag_search.py +123 -0
  117. eidetic_os-4.0.0/scripts/save_sessions.py +585 -0
  118. eidetic_os-4.0.0/scripts/send_email.py +176 -0
  119. eidetic_os-4.0.0/scripts/trading_briefing.py +304 -0
  120. eidetic_os-4.0.0/scripts/vault_changelog.py +230 -0
  121. eidetic_os-4.0.0/scripts/vault_commit.py +220 -0
  122. eidetic_os-4.0.0/skills/afternoon-job-tracker-update/SKILL.md +40 -0
  123. eidetic_os-4.0.0/skills/afternoon-session-capture/SKILL.md +56 -0
  124. eidetic_os-4.0.0/skills/atlas-daily-report-email/SKILL.md +42 -0
  125. eidetic_os-4.0.0/skills/daily-job-tracker-update/SKILL.md +47 -0
  126. eidetic_os-4.0.0/skills/daily-session-capture/SKILL.md +60 -0
  127. eidetic_os-4.0.0/skills/daily-trading-report/SKILL.md +44 -0
  128. eidetic_os-4.0.0/skills/friday-it-newsletter/SKILL.md +53 -0
  129. eidetic_os-4.0.0/skills/generate-vault-report-doc/SKILL.md +45 -0
  130. eidetic_os-4.0.0/skills/inbox-triage-digest/SKILL.md +62 -0
  131. eidetic_os-4.0.0/skills/morning-session-capture/SKILL.md +57 -0
  132. eidetic_os-4.0.0/skills/nightly-obsidian-index/SKILL.md +71 -0
  133. eidetic_os-4.0.0/skills/nightly-rag-incremental/SKILL.md +35 -0
  134. eidetic_os-4.0.0/skills/registry.json +258 -0
  135. eidetic_os-4.0.0/skills/spreadsheet-analysis/SKILL.md +53 -0
  136. eidetic_os-4.0.0/skills/topic-research-brief/SKILL.md +45 -0
  137. eidetic_os-4.0.0/skills/vault-lint-report/SKILL.md +77 -0
  138. eidetic_os-4.0.0/skills/weekly-digest-report/SKILL.md +54 -0
  139. eidetic_os-4.0.0/skills/weekly-rag-full-reembed/SKILL.md +37 -0
  140. eidetic_os-4.0.0/skills/weekly-system-health-check/SKILL.md +39 -0
  141. eidetic_os-4.0.0/templates/CLAUDE.md.template +67 -0
  142. eidetic_os-4.0.0/templates/memory-structure/MEMORY.md.template +25 -0
  143. eidetic_os-4.0.0/templates/memory-structure/example-memories/example-feedback.md +15 -0
  144. eidetic_os-4.0.0/templates/memory-structure/example-memories/example-user-profile.md +13 -0
  145. eidetic_os-4.0.0/templates/ops-dashboard.html +104 -0
  146. eidetic_os-4.0.0/templates/vault-skeleton/.claude-index.md.template +40 -0
  147. eidetic_os-4.0.0/templates/vault-skeleton/Operations Dashboard.md +52 -0
  148. eidetic_os-4.0.0/templates/vault-skeleton/wiki/hot.md.template +19 -0
  149. eidetic_os-4.0.0/templates/vault-skeleton/wiki/index.md.template +26 -0
  150. eidetic_os-4.0.0/templates/vault-skeleton/wiki/log.md.template +17 -0
  151. eidetic_os-4.0.0/tests/conftest.py +229 -0
  152. eidetic_os-4.0.0/tests/test_audit.py +215 -0
  153. eidetic_os-4.0.0/tests/test_backends.py +259 -0
  154. eidetic_os-4.0.0/tests/test_build_graph.py +74 -0
  155. eidetic_os-4.0.0/tests/test_channels.py +252 -0
  156. eidetic_os-4.0.0/tests/test_cli.py +375 -0
  157. eidetic_os-4.0.0/tests/test_dashboard.py +246 -0
  158. eidetic_os-4.0.0/tests/test_embed_vault.py +216 -0
  159. eidetic_os-4.0.0/tests/test_extensions.py +219 -0
  160. eidetic_os-4.0.0/tests/test_facts.py +414 -0
  161. eidetic_os-4.0.0/tests/test_fileio.py +82 -0
  162. eidetic_os-4.0.0/tests/test_filelock.py +90 -0
  163. eidetic_os-4.0.0/tests/test_frontmatter.py +118 -0
  164. eidetic_os-4.0.0/tests/test_git_sync.py +220 -0
  165. eidetic_os-4.0.0/tests/test_gitutil.py +134 -0
  166. eidetic_os-4.0.0/tests/test_graph.py +201 -0
  167. eidetic_os-4.0.0/tests/test_health_check.py +109 -0
  168. eidetic_os-4.0.0/tests/test_integration.py +509 -0
  169. eidetic_os-4.0.0/tests/test_legacy_migration.py +118 -0
  170. eidetic_os-4.0.0/tests/test_marketplace.py +351 -0
  171. eidetic_os-4.0.0/tests/test_mcp.py +411 -0
  172. eidetic_os-4.0.0/tests/test_memory_scoring.py +280 -0
  173. eidetic_os-4.0.0/tests/test_migration.py +78 -0
  174. eidetic_os-4.0.0/tests/test_netio.py +126 -0
  175. eidetic_os-4.0.0/tests/test_plugin_server.py +240 -0
  176. eidetic_os-4.0.0/tests/test_rag.py +166 -0
  177. eidetic_os-4.0.0/tests/test_rag_search.py +50 -0
  178. eidetic_os-4.0.0/tests/test_retry.py +141 -0
  179. eidetic_os-4.0.0/tests/test_save_sessions.py +314 -0
  180. eidetic_os-4.0.0/tests/test_scriptkit.py +108 -0
  181. eidetic_os-4.0.0/tests/test_security.py +409 -0
  182. eidetic_os-4.0.0/tests/test_send_email.py +120 -0
  183. eidetic_os-4.0.0/tests/test_setup_wizard.py +282 -0
  184. eidetic_os-4.0.0/tests/test_skills.py +287 -0
  185. eidetic_os-4.0.0/tests/test_sleeptime.py +480 -0
  186. eidetic_os-4.0.0/tests/test_trading_briefing.py +75 -0
  187. eidetic_os-4.0.0/tests/test_vault_changelog.py +77 -0
  188. eidetic_os-4.0.0/tests/test_vault_commit.py +72 -0
  189. eidetic_os-4.0.0/tests/test_vector_backends.py +185 -0
  190. eidetic_os-4.0.0/tests/test_vectordb.py +202 -0
  191. eidetic_os-4.0.0/trading/README.md +66 -0
@@ -0,0 +1,125 @@
1
+ # ──────────────────────────────────────────────────────────────────────────────
2
+ # Eidetic OS configuration
3
+ #
4
+ # Copy this file to `.env` and fill in your own values:
5
+ # cp .env.example .env
6
+ #
7
+ # Load it into your shell before running scripts:
8
+ # set -a; source .env; set +a
9
+ #
10
+ # `.env` is git-ignored. NEVER commit real secrets. All values below are
11
+ # placeholders / safe defaults — none are real credentials.
12
+ # ──────────────────────────────────────────────────────────────────────────────
13
+
14
+ # ── Vault ───────────────────────────────────────────────────────────────────
15
+ # Absolute path to your markdown vault. Required by almost every script.
16
+ VAULT_PATH=~/Documents/Obsidian/MyVault
17
+
18
+ # Where to write the RAG vector store and graph (default: $VAULT_PATH/.rag)
19
+ # The vector store is a SQLite database ($RAG_DIR/vectors.db). Install the
20
+ # optional [vector] extra (sqlite-vec + numpy) to accelerate similarity search;
21
+ # without it the store falls back to a pure-Python cosine scan automatically.
22
+ # RAG_DIR=~/Documents/Obsidian/MyVault/.rag
23
+
24
+ # Force the brute-force cosine backend even when sqlite-vec is installed
25
+ # (testing, or opting out of the native extension). Leave unset for normal use.
26
+ # EIDETIC_VECTORDB_NO_VEC=1
27
+
28
+ # Pluggable vector-storage backend (default: sqlite). Swap in an alternative
29
+ # engine for larger or more demanding indexes, then migrate your existing store
30
+ # with `eidetic migrate-vectors --to <backend>`:
31
+ # sqlite — zero-config default, no extra dependencies.
32
+ # lancedb — columnar, on-disk, zero-copy scans (pip install 'eidetic-os[lancedb]').
33
+ # chroma — popular embedding database (pip install 'eidetic-os[chroma]').
34
+ # VECTOR_BACKEND=sqlite
35
+
36
+ # Where your Claude scheduled-task SKILL.md folders live
37
+ # SCHEDULED_DIR=~/Documents/Claude/Scheduled
38
+
39
+ # Where `eidetic skills install <name>` writes installed skills
40
+ # (default: $VAULT_PATH/.claude/skills)
41
+ # EIDETIC_SKILLS_DIR=~/Documents/Claude/Scheduled
42
+
43
+ # Where `eidetic session` reads Cowork chat transcripts from
44
+ # (default: ~/Library/Application Support/Claude/local-agent-mode-sessions on macOS)
45
+ # CLAUDE_SESSIONS_DIR=~/Library/Application Support/Claude/local-agent-mode-sessions
46
+
47
+ # How often the Cowork session-capture skills run. This is a scheduling hint —
48
+ # you wire the actual cron/skill cadence to match it; the value documents intent
49
+ # and is read by setup tooling. One of:
50
+ # twice (default) morning + afternoon captures, each `--since 12h`
51
+ # daily one nightly capture, `--since 24h`
52
+ # hourly every hour, for heavy users (`--since 1h` or watermark)
53
+ # manual no schedule — only when you run `eidetic session save`
54
+ # SESSION_CAPTURE_FREQUENCY=twice
55
+
56
+ # ── Pluggable LLM backends (auto-detected) ───────────────────────────────────
57
+ # Eidetic OS talks to any OpenAI-compatible LLM server. If you leave the EMBED_*
58
+ # and LM_STUDIO_* vars below unset, it auto-detects a running backend by probing
59
+ # (in order): LM Studio → Ollama → llama.cpp → a custom OpenAI-compatible URL.
60
+ # Run `eidetic backends` to see what's detected, `eidetic backends test` to verify.
61
+ #
62
+ # EIDETIC_LLM_BACKEND force one backend, skipping detection:
63
+ # lmstudio | ollama | llamacpp | openai-compatible
64
+ # EIDETIC_LLM_MODEL override the chat model name reported to callers
65
+ # EIDETIC_LLM_BACKEND=
66
+ # EIDETIC_LLM_MODEL=
67
+ #
68
+ # Per-backend base URL overrides (only needed if not on the default localhost port):
69
+ # LM_STUDIO_URL (default :5555) · OLLAMA_URL (default :11434)
70
+ # LLAMACPP_URL (default :8080) · OPENAI_COMPATIBLE_URL (no default — must be set)
71
+ # OLLAMA_URL=http://localhost:11434
72
+ # LLAMACPP_URL=http://localhost:8080
73
+ # OPENAI_COMPATIBLE_URL=
74
+
75
+ # ── Local LLM: embeddings (OpenAI-compatible, e.g. LM Studio / Ollama) ───────
76
+ # Explicit values here take precedence over backend auto-detection above.
77
+ EMBED_HOST=localhost
78
+ EMBED_PORT=5555
79
+ EMBED_MODEL=text-embedding-nomic-embed-text-v1.5
80
+ # EMBED_API_KEY= # only if your endpoint requires a bearer token
81
+ # EMBED_URL= # overrides host/port if set
82
+
83
+ # ── Local LLM: chat completions (used by trading module) ─────────────────────
84
+ LM_STUDIO_HOST=localhost
85
+ LM_STUDIO_PORT=5555
86
+ LM_STUDIO_MODEL=local-model
87
+ # Two scripts read the chat endpoint and expect DIFFERENT shapes — set whichever
88
+ # you use, or leave both unset to fall back to host/port:
89
+ # LM_STUDIO_URL used by scripts/trading_briefing.py — include the /v1 suffix
90
+ # default: http://$LM_STUDIO_HOST:$LM_STUDIO_PORT/v1
91
+ # LM_STUDIO_ENDPOINT used by trading/config.py + trading/core.py — NO /v1 suffix
92
+ # default: http://$LM_STUDIO_HOST:$LM_STUDIO_PORT
93
+ # LM_STUDIO_URL=
94
+ # LM_STUDIO_ENDPOINT=
95
+
96
+ # ── Text-to-speech (optional) ────────────────────────────────────────────────
97
+ TTS_HOST=localhost
98
+ TTS_PORT=8800
99
+
100
+ # ── Email (SMTP) ──────────────────────────────────────────────────────────────
101
+ # The account that sends reports/newsletters.
102
+ SENDER_EMAIL=your-eidetic-account@example.com
103
+ SENDER_NAME=Eidetic
104
+ SMTP_SERVER=smtp.gmail.com
105
+ SMTP_PORT=587
106
+ # Gmail app password (https://myaccount.google.com/apppasswords) — NEVER commit
107
+ SMTP_APP_PASSWORD=your-app-password
108
+
109
+ # Where reports are sent (usually yourself)
110
+ USER_EMAIL=your-email@example.com
111
+
112
+ # ── Dashboard ports (optional) ────────────────────────────────────────────────
113
+ DASHBOARD_FRONTEND_PORT=3000
114
+ DASHBOARD_BACKEND_PORT=5001
115
+
116
+ # ── Trading module (optional) ─────────────────────────────────────────────────
117
+ TRADING_AGENTS_PATH=~/Documents/TradingAgents
118
+ TRADING_TICKERS=BTC-USD,ETH-USD
119
+ # Cloud Portfolio Manager step (off by default) — only if you opt in:
120
+ # ANTHROPIC_API_KEY=sk-ant-your-key
121
+ # ANTHROPIC_MODEL=claude-opus-4-6
122
+
123
+ # ── Git (optional) ────────────────────────────────────────────────────────────
124
+ # If you mirror your vault to a remote, set it here (your private repo).
125
+ # GITHUB_REPO=your-username/your-vault
@@ -0,0 +1,80 @@
1
+ # ── Secrets & credentials ───────────────────────────────────────────────────
2
+ .env
3
+ .env.*
4
+ !.env.example
5
+ *.key
6
+ *.pem
7
+ *.p12
8
+ credentials*
9
+ *credential*
10
+ *password*
11
+ *secret*
12
+ *.token
13
+ .anthropic-api-key
14
+ *-app-password
15
+ *gmail-app-password*
16
+
17
+ # ── Personal data / PII (never commit) ──────────────────────────────────────
18
+ *.xlsx # job trackers and other spreadsheets contain PII
19
+ *.xls
20
+ *.csv # may contain personal/exported data
21
+ vault-content/
22
+ vault/
23
+ personal/
24
+ private/
25
+ job-search/
26
+ job-tracker*
27
+ briefings/
28
+ *briefing*.md
29
+ session-logs/
30
+ *.eml
31
+
32
+ # ── Generated RAG / graph data (contains embedded personal notes) ───────────
33
+ *.sqlite
34
+ *.sqlite3
35
+ *.db
36
+ vectors.json
37
+ vectors.json.tmp
38
+ graph.json
39
+ graph.json.tmp
40
+ last_embed.txt
41
+ last_embed_fallback.txt
42
+ embed_checkpoint.json
43
+ .rag/
44
+ .vectors/
45
+ cache/
46
+
47
+ # ── Trading (local config may contain real paths / keys) ────────────────────
48
+ trading/config.py
49
+ signals.json
50
+
51
+ # ── Python ──────────────────────────────────────────────────────────────────
52
+ __pycache__/
53
+ *.py[cod]
54
+ *.egg-info/
55
+ .venv/
56
+ venv/
57
+ .env.bak
58
+ .pytest_cache/
59
+ .mypy_cache/
60
+ .ruff_cache/
61
+
62
+ # ── Node / dashboard ────────────────────────────────────────────────────────
63
+ node_modules/
64
+ dist/
65
+ build/
66
+ *.log
67
+
68
+ # ── OS / editor ─────────────────────────────────────────────────────────────
69
+ .DS_Store
70
+ Thumbs.db
71
+ *.swp
72
+ .idea/
73
+ .vscode/
74
+
75
+ # ── Local Claude Code / agent tooling state (not part of the public repo) ────
76
+ .claude/
77
+
78
+ # ── Eidetic OS runtime state (created on first run; never part of the repo) ──
79
+ .eidetic/
80
+ .atlas/