agntspace 1.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 (196) hide show
  1. agntspace-1.0.0/.gitignore +27 -0
  2. agntspace-1.0.0/CHANGELOG.md +7 -0
  3. agntspace-1.0.0/PKG-INFO +33 -0
  4. agntspace-1.0.0/pyproject.toml +64 -0
  5. agntspace-1.0.0/src/agntspace/__init__.py +3 -0
  6. agntspace-1.0.0/src/agntspace/agent/.gitkeep +0 -0
  7. agntspace-1.0.0/src/agntspace/agent/__init__.py +5 -0
  8. agntspace-1.0.0/src/agntspace/agent/agent.py +757 -0
  9. agntspace-1.0.0/src/agntspace/agent/context.py +13 -0
  10. agntspace-1.0.0/src/agntspace/agent/orchestrator.py +596 -0
  11. agntspace-1.0.0/src/agntspace/agent/registry.py +296 -0
  12. agntspace-1.0.0/src/agntspace/agent/supervisor.py +468 -0
  13. agntspace-1.0.0/src/agntspace/agent/tools.py +1294 -0
  14. agntspace-1.0.0/src/agntspace/api/__init__.py +1 -0
  15. agntspace-1.0.0/src/agntspace/api/contract_middleware.py +215 -0
  16. agntspace-1.0.0/src/agntspace/api/middleware/.gitkeep +0 -0
  17. agntspace-1.0.0/src/agntspace/api/middleware/__init__.py +1 -0
  18. agntspace-1.0.0/src/agntspace/api/routes/.gitkeep +0 -0
  19. agntspace-1.0.0/src/agntspace/api/routes/__init__.py +1 -0
  20. agntspace-1.0.0/src/agntspace/api/routes/audit.py +34 -0
  21. agntspace-1.0.0/src/agntspace/api/routes/autopilot.py +43 -0
  22. agntspace-1.0.0/src/agntspace/api/routes/bibliography.py +96 -0
  23. agntspace-1.0.0/src/agntspace/api/routes/canvas.py +127 -0
  24. agntspace-1.0.0/src/agntspace/api/routes/channels.py +309 -0
  25. agntspace-1.0.0/src/agntspace/api/routes/chat.py +92 -0
  26. agntspace-1.0.0/src/agntspace/api/routes/contract.py +305 -0
  27. agntspace-1.0.0/src/agntspace/api/routes/costs.py +70 -0
  28. agntspace-1.0.0/src/agntspace/api/routes/cron.py +72 -0
  29. agntspace-1.0.0/src/agntspace/api/routes/daily.py +72 -0
  30. agntspace-1.0.0/src/agntspace/api/routes/domains.py +66 -0
  31. agntspace-1.0.0/src/agntspace/api/routes/email.py +261 -0
  32. agntspace-1.0.0/src/agntspace/api/routes/emergency.py +95 -0
  33. agntspace-1.0.0/src/agntspace/api/routes/goals.py +76 -0
  34. agntspace-1.0.0/src/agntspace/api/routes/graph.py +209 -0
  35. agntspace-1.0.0/src/agntspace/api/routes/guardian.py +110 -0
  36. agntspace-1.0.0/src/agntspace/api/routes/health.py +27 -0
  37. agntspace-1.0.0/src/agntspace/api/routes/heartbeat.py +36 -0
  38. agntspace-1.0.0/src/agntspace/api/routes/integrations.py +55 -0
  39. agntspace-1.0.0/src/agntspace/api/routes/journal.py +143 -0
  40. agntspace-1.0.0/src/agntspace/api/routes/kb.py +696 -0
  41. agntspace-1.0.0/src/agntspace/api/routes/mcp.py +80 -0
  42. agntspace-1.0.0/src/agntspace/api/routes/memory.py +298 -0
  43. agntspace-1.0.0/src/agntspace/api/routes/notes.py +89 -0
  44. agntspace-1.0.0/src/agntspace/api/routes/onboarding.py +163 -0
  45. agntspace-1.0.0/src/agntspace/api/routes/orchestrator.py +282 -0
  46. agntspace-1.0.0/src/agntspace/api/routes/pairing.py +72 -0
  47. agntspace-1.0.0/src/agntspace/api/routes/plugins.py +46 -0
  48. agntspace-1.0.0/src/agntspace/api/routes/projects.py +161 -0
  49. agntspace-1.0.0/src/agntspace/api/routes/reflection.py +60 -0
  50. agntspace-1.0.0/src/agntspace/api/routes/search.py +48 -0
  51. agntspace-1.0.0/src/agntspace/api/routes/settings.py +257 -0
  52. agntspace-1.0.0/src/agntspace/api/routes/simulate.py +812 -0
  53. agntspace-1.0.0/src/agntspace/api/routes/skills.py +309 -0
  54. agntspace-1.0.0/src/agntspace/api/routes/sync.py +217 -0
  55. agntspace-1.0.0/src/agntspace/api/routes/tasks.py +140 -0
  56. agntspace-1.0.0/src/agntspace/api/routes/trust.py +89 -0
  57. agntspace-1.0.0/src/agntspace/api/routes/vault.py +170 -0
  58. agntspace-1.0.0/src/agntspace/api/routes/wiki.py +1099 -0
  59. agntspace-1.0.0/src/agntspace/api/websocket/.gitkeep +0 -0
  60. agntspace-1.0.0/src/agntspace/api/websocket/__init__.py +1 -0
  61. agntspace-1.0.0/src/agntspace/api/websocket/canvas.py +288 -0
  62. agntspace-1.0.0/src/agntspace/api/websocket/handler.py +92 -0
  63. agntspace-1.0.0/src/agntspace/automation/.gitkeep +0 -0
  64. agntspace-1.0.0/src/agntspace/automation/__init__.py +1 -0
  65. agntspace-1.0.0/src/agntspace/automation/autopilot.py +88 -0
  66. agntspace-1.0.0/src/agntspace/automation/cron.py +312 -0
  67. agntspace-1.0.0/src/agntspace/automation/daemon.py +271 -0
  68. agntspace-1.0.0/src/agntspace/automation/daily_cycle.py +595 -0
  69. agntspace-1.0.0/src/agntspace/automation/heartbeat.py +338 -0
  70. agntspace-1.0.0/src/agntspace/automation/raw_watcher.py +627 -0
  71. agntspace-1.0.0/src/agntspace/automation/scheduler.py +79 -0
  72. agntspace-1.0.0/src/agntspace/channels/.gitkeep +0 -0
  73. agntspace-1.0.0/src/agntspace/channels/__init__.py +6 -0
  74. agntspace-1.0.0/src/agntspace/channels/base.py +49 -0
  75. agntspace-1.0.0/src/agntspace/channels/discord.py +90 -0
  76. agntspace-1.0.0/src/agntspace/channels/imessage.py +201 -0
  77. agntspace-1.0.0/src/agntspace/channels/manager.py +74 -0
  78. agntspace-1.0.0/src/agntspace/channels/matrix.py +215 -0
  79. agntspace-1.0.0/src/agntspace/channels/signal.py +175 -0
  80. agntspace-1.0.0/src/agntspace/channels/slack.py +94 -0
  81. agntspace-1.0.0/src/agntspace/channels/teams.py +203 -0
  82. agntspace-1.0.0/src/agntspace/channels/telegram.py +105 -0
  83. agntspace-1.0.0/src/agntspace/channels/whatsapp/bridge.mjs +488 -0
  84. agntspace-1.0.0/src/agntspace/channels/whatsapp/package-lock.json +1546 -0
  85. agntspace-1.0.0/src/agntspace/channels/whatsapp/package.json +11 -0
  86. agntspace-1.0.0/src/agntspace/channels/whatsapp.py +526 -0
  87. agntspace-1.0.0/src/agntspace/cli.py +952 -0
  88. agntspace-1.0.0/src/agntspace/coach/.gitkeep +0 -0
  89. agntspace-1.0.0/src/agntspace/coach/__init__.py +5 -0
  90. agntspace-1.0.0/src/agntspace/coach/service.py +195 -0
  91. agntspace-1.0.0/src/agntspace/domains/__init__.py +5 -0
  92. agntspace-1.0.0/src/agntspace/domains/base.py +71 -0
  93. agntspace-1.0.0/src/agntspace/domains/calendar/.gitkeep +0 -0
  94. agntspace-1.0.0/src/agntspace/domains/companies/.gitkeep +0 -0
  95. agntspace-1.0.0/src/agntspace/domains/contacts/.gitkeep +0 -0
  96. agntspace-1.0.0/src/agntspace/domains/email/.gitkeep +0 -0
  97. agntspace-1.0.0/src/agntspace/domains/finances/.gitkeep +0 -0
  98. agntspace-1.0.0/src/agntspace/domains/goals/.gitkeep +0 -0
  99. agntspace-1.0.0/src/agntspace/domains/health/.gitkeep +0 -0
  100. agntspace-1.0.0/src/agntspace/domains/knowledge/.gitkeep +0 -0
  101. agntspace-1.0.0/src/agntspace/domains/projects/.gitkeep +0 -0
  102. agntspace-1.0.0/src/agntspace/infra/.gitkeep +0 -0
  103. agntspace-1.0.0/src/agntspace/infra/__init__.py +5 -0
  104. agntspace-1.0.0/src/agntspace/infra/config.py +248 -0
  105. agntspace-1.0.0/src/agntspace/infra/cost_tracker.py +387 -0
  106. agntspace-1.0.0/src/agntspace/infra/credentials.py +121 -0
  107. agntspace-1.0.0/src/agntspace/infra/database.py +129 -0
  108. agntspace-1.0.0/src/agntspace/infra/i18n.py +87 -0
  109. agntspace-1.0.0/src/agntspace/infra/logging.py +26 -0
  110. agntspace-1.0.0/src/agntspace/infra/settings_service.py +61 -0
  111. agntspace-1.0.0/src/agntspace/integrations/.gitkeep +0 -0
  112. agntspace-1.0.0/src/agntspace/integrations/__init__.py +6 -0
  113. agntspace-1.0.0/src/agntspace/integrations/base.py +45 -0
  114. agntspace-1.0.0/src/agntspace/integrations/browser.py +166 -0
  115. agntspace-1.0.0/src/agntspace/integrations/email_client.py +456 -0
  116. agntspace-1.0.0/src/agntspace/integrations/gcal.py +39 -0
  117. agntspace-1.0.0/src/agntspace/integrations/github.py +43 -0
  118. agntspace-1.0.0/src/agntspace/integrations/gmail.py +47 -0
  119. agntspace-1.0.0/src/agntspace/integrations/manager.py +56 -0
  120. agntspace-1.0.0/src/agntspace/journal/.gitkeep +0 -0
  121. agntspace-1.0.0/src/agntspace/journal/__init__.py +5 -0
  122. agntspace-1.0.0/src/agntspace/journal/reflection.py +231 -0
  123. agntspace-1.0.0/src/agntspace/journal/service.py +352 -0
  124. agntspace-1.0.0/src/agntspace/kb/__init__.py +0 -0
  125. agntspace-1.0.0/src/agntspace/kb/bibliography.py +275 -0
  126. agntspace-1.0.0/src/agntspace/kb/chunked_extract.py +225 -0
  127. agntspace-1.0.0/src/agntspace/kb/memory_bridge.py +189 -0
  128. agntspace-1.0.0/src/agntspace/kb/migrate.py +111 -0
  129. agntspace-1.0.0/src/agntspace/kb/parsers.py +303 -0
  130. agntspace-1.0.0/src/agntspace/kb/service.py +4068 -0
  131. agntspace-1.0.0/src/agntspace/kb/system_bridge.py +428 -0
  132. agntspace-1.0.0/src/agntspace/kb/taxonomy.py +233 -0
  133. agntspace-1.0.0/src/agntspace/llm/.gitkeep +0 -0
  134. agntspace-1.0.0/src/agntspace/llm/__init__.py +6 -0
  135. agntspace-1.0.0/src/agntspace/llm/anthropic.py +117 -0
  136. agntspace-1.0.0/src/agntspace/llm/base.py +144 -0
  137. agntspace-1.0.0/src/agntspace/llm/factory.py +98 -0
  138. agntspace-1.0.0/src/agntspace/llm/model_router.py +144 -0
  139. agntspace-1.0.0/src/agntspace/llm/ocr.py +59 -0
  140. agntspace-1.0.0/src/agntspace/llm/openai_provider.py +150 -0
  141. agntspace-1.0.0/src/agntspace/llm/prompt.py +384 -0
  142. agntspace-1.0.0/src/agntspace/llm/provider.py +303 -0
  143. agntspace-1.0.0/src/agntspace/llm/transcribe.py +110 -0
  144. agntspace-1.0.0/src/agntspace/locales/en.json +24 -0
  145. agntspace-1.0.0/src/agntspace/locales/sv.json +24 -0
  146. agntspace-1.0.0/src/agntspace/main.py +1440 -0
  147. agntspace-1.0.0/src/agntspace/mcp/__init__.py +5 -0
  148. agntspace-1.0.0/src/agntspace/mcp/client.py +244 -0
  149. agntspace-1.0.0/src/agntspace/mcp/server.py +118 -0
  150. agntspace-1.0.0/src/agntspace/memory/.gitkeep +0 -0
  151. agntspace-1.0.0/src/agntspace/memory/__init__.py +21 -0
  152. agntspace-1.0.0/src/agntspace/memory/conversation.py +218 -0
  153. agntspace-1.0.0/src/agntspace/memory/engine.py +952 -0
  154. agntspace-1.0.0/src/agntspace/memory/entity_registry.py +445 -0
  155. agntspace-1.0.0/src/agntspace/memory/graph.py +1895 -0
  156. agntspace-1.0.0/src/agntspace/memory/ontology.py +617 -0
  157. agntspace-1.0.0/src/agntspace/plugins/__init__.py +1 -0
  158. agntspace-1.0.0/src/agntspace/plugins/base.py +82 -0
  159. agntspace-1.0.0/src/agntspace/plugins/bundled/hello-world/plugin.py +35 -0
  160. agntspace-1.0.0/src/agntspace/plugins/bundled/hello-world/plugin.yaml +11 -0
  161. agntspace-1.0.0/src/agntspace/plugins/manager.py +223 -0
  162. agntspace-1.0.0/src/agntspace/projects/__init__.py +0 -0
  163. agntspace-1.0.0/src/agntspace/projects/service.py +279 -0
  164. agntspace-1.0.0/src/agntspace/py.typed +0 -0
  165. agntspace-1.0.0/src/agntspace/security/.gitkeep +0 -0
  166. agntspace-1.0.0/src/agntspace/security/__init__.py +5 -0
  167. agntspace-1.0.0/src/agntspace/security/audit.py +122 -0
  168. agntspace-1.0.0/src/agntspace/security/contract.py +304 -0
  169. agntspace-1.0.0/src/agntspace/security/guardian.py +264 -0
  170. agntspace-1.0.0/src/agntspace/security/middleware.py +93 -0
  171. agntspace-1.0.0/src/agntspace/security/pairing.py +136 -0
  172. agntspace-1.0.0/src/agntspace/security/sanitizer.py +37 -0
  173. agntspace-1.0.0/src/agntspace/setup/.gitkeep +0 -0
  174. agntspace-1.0.0/src/agntspace/setup/__init__.py +5 -0
  175. agntspace-1.0.0/src/agntspace/setup/init.py +452 -0
  176. agntspace-1.0.0/src/agntspace/skills/.gitkeep +0 -0
  177. agntspace-1.0.0/src/agntspace/skills/__init__.py +5 -0
  178. agntspace-1.0.0/src/agntspace/skills/loader.py +314 -0
  179. agntspace-1.0.0/src/agntspace/skillschool/.gitkeep +0 -0
  180. agntspace-1.0.0/src/agntspace/skillschool/__init__.py +5 -0
  181. agntspace-1.0.0/src/agntspace/skillschool/service.py +271 -0
  182. agntspace-1.0.0/src/agntspace/tasks/.gitkeep +0 -0
  183. agntspace-1.0.0/src/agntspace/tasks/__init__.py +5 -0
  184. agntspace-1.0.0/src/agntspace/tasks/service.py +193 -0
  185. agntspace-1.0.0/src/agntspace/trust/.gitkeep +0 -0
  186. agntspace-1.0.0/src/agntspace/trust/__init__.py +5 -0
  187. agntspace-1.0.0/src/agntspace/trust/service.py +207 -0
  188. agntspace-1.0.0/src/agntspace/vault/.gitkeep +0 -0
  189. agntspace-1.0.0/src/agntspace/vault/__init__.py +6 -0
  190. agntspace-1.0.0/src/agntspace/vault/embeddings.py +242 -0
  191. agntspace-1.0.0/src/agntspace/vault/migrate_frontmatter.py +172 -0
  192. agntspace-1.0.0/src/agntspace/vault/reader.py +81 -0
  193. agntspace-1.0.0/src/agntspace/vault/search.py +118 -0
  194. agntspace-1.0.0/src/agntspace/vault/sync.py +326 -0
  195. agntspace-1.0.0/src/agntspace/vault/writer.py +223 -0
  196. agntspace-1.0.0/tests/test_kb_e2e.py +302 -0
@@ -0,0 +1,27 @@
1
+ # Claude Code (creative process, plans, memory)
2
+ .claude/
3
+
4
+ # Python
5
+ __pycache__/
6
+ *.py[cod]
7
+ *.egg-info/
8
+ dist/
9
+ .venv/
10
+ .env
11
+
12
+ # Node
13
+ node_modules/
14
+ ui/dist/
15
+
16
+ # OS
17
+ .DS_Store
18
+ Thumbs.db
19
+
20
+ # IDE
21
+ .idea/
22
+ .vscode/
23
+ *.swp
24
+
25
+ # Database (user data, never committed)
26
+ *.db
27
+ *.db-journal
@@ -0,0 +1,7 @@
1
+ # CHANGELOG
2
+
3
+ <!-- version list -->
4
+
5
+ ## v1.0.0 (2026-04-08)
6
+
7
+ - Initial Release
@@ -0,0 +1,33 @@
1
+ Metadata-Version: 2.4
2
+ Name: agntspace
3
+ Version: 1.0.0
4
+ Summary: Personal AI agent that runs your life alongside you
5
+ License-Expression: MIT
6
+ Requires-Python: >=3.11
7
+ Requires-Dist: aiosqlite>=0.20
8
+ Requires-Dist: cryptography>=44.0
9
+ Requires-Dist: fastapi>=0.115
10
+ Requires-Dist: fastembed>=0.4
11
+ Requires-Dist: httpx>=0.27
12
+ Requires-Dist: litellm>=1.80
13
+ Requires-Dist: mcp>=1.0
14
+ Requires-Dist: networkx>=3.0
15
+ Requires-Dist: numpy>=1.24
16
+ Requires-Dist: pdfplumber>=0.11
17
+ Requires-Dist: pydantic-settings>=2.5
18
+ Requires-Dist: pydantic>=2.9
19
+ Requires-Dist: python-frontmatter>=1.1
20
+ Requires-Dist: rich>=13
21
+ Requires-Dist: tomli-w>=1.0
22
+ Requires-Dist: tomli>=2.0; python_version < '3.12'
23
+ Requires-Dist: typer>=0.12
24
+ Requires-Dist: uvicorn[standard]>=0.30
25
+ Requires-Dist: websockets>=13
26
+ Provides-Extra: dev
27
+ Requires-Dist: pytest-asyncio>=0.24; extra == 'dev'
28
+ Requires-Dist: pytest>=8; extra == 'dev'
29
+ Requires-Dist: python-semantic-release>=9.0; extra == 'dev'
30
+ Requires-Dist: ruff>=0.8; extra == 'dev'
31
+ Provides-Extra: ocr
32
+ Requires-Dist: pillow>=10.0; extra == 'ocr'
33
+ Requires-Dist: pytesseract>=0.3; extra == 'ocr'
@@ -0,0 +1,64 @@
1
+ [project]
2
+ name = "agntspace"
3
+ version = "1.0.0"
4
+ description = "Personal AI agent that runs your life alongside you"
5
+ requires-python = ">=3.11"
6
+ license = "MIT"
7
+ dependencies = [
8
+ "fastapi>=0.115",
9
+ "uvicorn[standard]>=0.30",
10
+ "websockets>=13",
11
+ "litellm>=1.80",
12
+ "mcp>=1.0",
13
+ "fastembed>=0.4",
14
+ "numpy>=1.24",
15
+ "networkx>=3.0",
16
+ "pydantic>=2.9",
17
+ "pydantic-settings>=2.5",
18
+ "typer>=0.12",
19
+ "rich>=13",
20
+ "tomli>=2.0; python_version < '3.12'",
21
+ "tomli-w>=1.0",
22
+ "python-frontmatter>=1.1",
23
+ "aiosqlite>=0.20",
24
+ "httpx>=0.27",
25
+ "cryptography>=44.0",
26
+ "pdfplumber>=0.11",
27
+ ]
28
+
29
+ [project.scripts]
30
+ agntspace = "agntspace.cli:app"
31
+
32
+ [build-system]
33
+ requires = ["hatchling"]
34
+ build-backend = "hatchling.build"
35
+
36
+ [tool.hatch.build.targets.wheel]
37
+ packages = ["src/agntspace"]
38
+
39
+ [project.optional-dependencies]
40
+ ocr = [
41
+ "pytesseract>=0.3",
42
+ "Pillow>=10.0",
43
+ ]
44
+ dev = [
45
+ "pytest>=8",
46
+ "pytest-asyncio>=0.24",
47
+ "ruff>=0.8",
48
+ "python-semantic-release>=9.0",
49
+ ]
50
+
51
+ [tool.semantic_release]
52
+ version_toml = ["pyproject.toml:project.version"]
53
+ branch = "main"
54
+ commit_message = "chore(release): v{version} [skip ci]"
55
+ build_command = ""
56
+ tag_format = "v{version}"
57
+
58
+ [tool.semantic_release.changelog]
59
+ changelog_file = "CHANGELOG.md"
60
+
61
+ [tool.semantic_release.commit_parser_options]
62
+ allowed_tags = ["feat", "fix", "perf", "refactor", "docs", "style", "test", "chore", "ci", "build"]
63
+ minor_tags = ["feat"]
64
+ patch_tags = ["fix", "perf", "refactor"]
@@ -0,0 +1,3 @@
1
+ """AgntSpace — Personal AI agent that runs your life alongside you."""
2
+
3
+ __version__ = "0.1.0"
File without changes
@@ -0,0 +1,5 @@
1
+ """Agent: main reasoning loop."""
2
+
3
+ from agntspace.agent.agent import Agent
4
+
5
+ __all__ = ["Agent"]