memuron 0.1.1__tar.gz → 0.1.2__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 (73) hide show
  1. {memuron-0.1.1 → memuron-0.1.2}/PKG-INFO +1 -1
  2. {memuron-0.1.1 → memuron-0.1.2}/pyproject.toml +1 -1
  3. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/app.py +1 -1
  4. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/cli.py +22 -5
  5. {memuron-0.1.1 → memuron-0.1.2}/README.md +0 -0
  6. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/__init__.py +0 -0
  7. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/__init__.py +0 -0
  8. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/context.py +0 -0
  9. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/helpers.py +0 -0
  10. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/memory.py +0 -0
  11. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/memory_write.py +0 -0
  12. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/nodes.py +0 -0
  13. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/registry.py +0 -0
  14. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/runtime.py +0 -0
  15. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/spaces_documents.py +0 -0
  16. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/actions/sync.py +0 -0
  17. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/__init__.py +0 -0
  18. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/api.py +0 -0
  19. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/capabilities.py +0 -0
  20. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/config.py +0 -0
  21. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/mcp.py +0 -0
  22. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/mcp_oauth.py +0 -0
  23. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/application/registry.py +0 -0
  24. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/context.py +0 -0
  25. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/documents/__init__.py +0 -0
  26. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/documents/link_guardian.py +0 -0
  27. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/documents/linking.py +0 -0
  28. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/documents/parser.py +0 -0
  29. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/documents/storage.py +0 -0
  30. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/documents/url_ingest.py +0 -0
  31. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/__init__.py +0 -0
  32. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/decoders.py +0 -0
  33. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/encoders.py +0 -0
  34. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/lifecycles.py +0 -0
  35. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/limits.py +0 -0
  36. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/representations.py +0 -0
  37. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/schemas.py +0 -0
  38. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/domain/scope_filter.py +0 -0
  39. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/graphfs/__init__.py +0 -0
  40. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/graphfs/manual.py +0 -0
  41. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/graphfs/projection.py +0 -0
  42. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/graphfs/query.py +0 -0
  43. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/graphfs/read_model.py +0 -0
  44. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/ingest/__init__.py +0 -0
  45. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/ingest/guardian.py +0 -0
  46. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/ingest/jobs.py +0 -0
  47. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/ingest/prompts.py +0 -0
  48. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/memory/__init__.py +0 -0
  49. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/memory/engine.py +0 -0
  50. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/memory/projections.py +0 -0
  51. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/memory/recipes.py +0 -0
  52. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/persistence/__init__.py +0 -0
  53. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/persistence/db_pool.py +0 -0
  54. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/persistence/identity_store.py +0 -0
  55. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/persistence/store_helpers.py +0 -0
  56. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/search/__init__.py +0 -0
  57. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/search/fulltext.py +0 -0
  58. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/search/hybrid.py +0 -0
  59. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/search/pgvector.py +0 -0
  60. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/__init__.py +0 -0
  61. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/auth.py +0 -0
  62. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/auth_provider.py +0 -0
  63. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/authorization.py +0 -0
  64. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/clerk_scopes.py +0 -0
  65. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/clerk_webhooks.py +0 -0
  66. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/jwt_tokens.py +0 -0
  67. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/passwords.py +0 -0
  68. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/security/tenant.py +0 -0
  69. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/spaces/__init__.py +0 -0
  70. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/spaces/model.py +0 -0
  71. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/spaces/service.py +0 -0
  72. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/sync/__init__.py +0 -0
  73. {memuron-0.1.1 → memuron-0.1.2}/src/memuron/sync/folder.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: memuron
3
- Version: 0.1.1
3
+ Version: 0.1.2
4
4
  Summary: Arthaanu application built on Artha Engine.
5
5
  Requires-Dist: artha-engine[auth,mcp,app]>=0.1.3
6
6
  Requires-Dist: agno>=2.3.11
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "memuron"
3
- version = "0.1.1"
3
+ version = "0.1.2"
4
4
  description = "Arthaanu application built on Artha Engine."
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.12"
@@ -58,7 +58,7 @@ def create_application(db: str | Path | None = None) -> ArthaApplication:
58
58
  }
59
59
  application = ArthaApplication(
60
60
  name="memuron",
61
- version="0.1.1",
61
+ version="0.1.2",
62
62
  description="Product memory layer on Artha Engine",
63
63
  engine=engine,
64
64
  actions=actions,
@@ -9,6 +9,16 @@ from pathlib import Path
9
9
  from memuron.application.app import close_application, configure_clerk_env, create_application
10
10
 
11
11
 
12
+ def _ensure_local_db_path() -> None:
13
+ from artha_engine.store.factory import is_postgres_dsn, resolve_database_target
14
+
15
+ default_path = Path.home() / ".config" / "memuron" / "memuron.db"
16
+ os.environ.setdefault("ARTHA_DB_PATH", str(default_path))
17
+ target = resolve_database_target(None)
18
+ if not is_postgres_dsn(target):
19
+ Path(target).parent.mkdir(parents=True, exist_ok=True)
20
+
21
+
12
22
  def main(argv: list[str] | None = None) -> int:
13
23
  configure_clerk_env()
14
24
  os.environ.setdefault("ARTHA_AUTH_PROVIDER", "api_key")
@@ -20,11 +30,18 @@ def main(argv: list[str] | None = None) -> int:
20
30
  os.environ["ARTHA_API_KEY"] = os.environ["MEMURON_API_KEY"]
21
31
  if os.environ.get("MEMURON_BASE_URL") and not os.environ.get("ARTHA_BASE_URL"):
22
32
  os.environ["ARTHA_BASE_URL"] = os.environ["MEMURON_BASE_URL"]
23
- effective_argv = list(sys.argv[1:] if argv is None else argv)
24
- help_only = not effective_argv or any(
25
- item in {"-h", "--help"} for item in effective_argv
26
- )
27
- application = create_application(":memory:" if help_only else None)
33
+ local_cli = os.environ.get("MEMURON_LOCAL_CLI", "").strip().lower() in {
34
+ "1",
35
+ "true",
36
+ "yes",
37
+ }
38
+ if local_cli:
39
+ _ensure_local_db_path()
40
+ db: str | Path | None = None
41
+ else:
42
+ # Remote-first CLI only needs the action registry, not a persistent local DB.
43
+ db = ":memory:"
44
+ application = create_application(db)
28
45
  try:
29
46
  return application.run_cli(argv, prog="memuron")
30
47
  finally:
File without changes
File without changes
File without changes