@elaraai/east-plugin 0.0.0-stage → 1.0.85

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 (133) hide show
  1. package/LICENSE.md +682 -0
  2. package/README.md +104 -2
  3. package/dist/daemon/east-py-lsp.d.ts +2 -0
  4. package/dist/daemon/east-py-lsp.d.ts.map +1 -0
  5. package/dist/daemon/east-py-lsp.js +9 -0
  6. package/dist/daemon/east-py-lsp.js.map +1 -0
  7. package/dist/daemon/lsp.d.ts +2 -0
  8. package/dist/daemon/lsp.d.ts.map +1 -0
  9. package/dist/daemon/lsp.js +7 -0
  10. package/dist/daemon/lsp.js.map +1 -0
  11. package/dist/daemon/server.d.ts +2 -0
  12. package/dist/daemon/server.d.ts.map +1 -0
  13. package/dist/daemon/server.js +71 -0
  14. package/dist/daemon/server.js.map +1 -0
  15. package/dist/hooks/diagnose-bash.d.ts +2 -0
  16. package/dist/hooks/diagnose-bash.d.ts.map +1 -0
  17. package/dist/hooks/diagnose-bash.js +28 -0
  18. package/dist/hooks/diagnose-bash.js.map +1 -0
  19. package/dist/hooks/diagnose.d.ts +2 -0
  20. package/dist/hooks/diagnose.d.ts.map +1 -0
  21. package/dist/hooks/diagnose.js +33 -0
  22. package/dist/hooks/diagnose.js.map +1 -0
  23. package/dist/hooks/pre-read.d.ts +2 -0
  24. package/dist/hooks/pre-read.d.ts.map +1 -0
  25. package/dist/hooks/pre-read.js +11 -0
  26. package/dist/hooks/pre-read.js.map +1 -0
  27. package/dist/hooks/pre-write.d.ts +2 -0
  28. package/dist/hooks/pre-write.d.ts.map +1 -0
  29. package/dist/hooks/pre-write.js +11 -0
  30. package/dist/hooks/pre-write.js.map +1 -0
  31. package/dist/hooks/session-start.d.ts +2 -0
  32. package/dist/hooks/session-start.d.ts.map +1 -0
  33. package/dist/hooks/session-start.js +34 -0
  34. package/dist/hooks/session-start.js.map +1 -0
  35. package/dist/hooks/subagent-start.d.ts +2 -0
  36. package/dist/hooks/subagent-start.d.ts.map +1 -0
  37. package/dist/hooks/subagent-start.js +29 -0
  38. package/dist/hooks/subagent-start.js.map +1 -0
  39. package/dist/lib/bash-writes.d.ts +11 -0
  40. package/dist/lib/bash-writes.d.ts.map +1 -0
  41. package/dist/lib/bash-writes.js +74 -0
  42. package/dist/lib/bash-writes.js.map +1 -0
  43. package/dist/lib/codex-hook.d.ts +62 -0
  44. package/dist/lib/codex-hook.d.ts.map +1 -0
  45. package/dist/lib/codex-hook.js +93 -0
  46. package/dist/lib/codex-hook.js.map +1 -0
  47. package/dist/lib/codex-skills.d.ts +38 -0
  48. package/dist/lib/codex-skills.d.ts.map +1 -0
  49. package/dist/lib/codex-skills.js +80 -0
  50. package/dist/lib/codex-skills.js.map +1 -0
  51. package/dist/lib/codex-tools.d.ts +11 -0
  52. package/dist/lib/codex-tools.d.ts.map +1 -0
  53. package/dist/lib/codex-tools.js +41 -0
  54. package/dist/lib/codex-tools.js.map +1 -0
  55. package/dist/lib/diagnostics-client.d.ts +9 -0
  56. package/dist/lib/diagnostics-client.d.ts.map +1 -0
  57. package/dist/lib/diagnostics-client.js +123 -0
  58. package/dist/lib/diagnostics-client.js.map +1 -0
  59. package/dist/lib/east-index.d.ts +3 -0
  60. package/dist/lib/east-index.d.ts.map +1 -0
  61. package/dist/lib/east-index.js +9 -0
  62. package/dist/lib/east-index.js.map +1 -0
  63. package/dist/lib/east-project.d.ts +49 -0
  64. package/dist/lib/east-project.d.ts.map +1 -0
  65. package/dist/lib/east-project.js +121 -0
  66. package/dist/lib/east-project.js.map +1 -0
  67. package/dist/lib/east-py-lint.d.ts +7 -0
  68. package/dist/lib/east-py-lint.d.ts.map +1 -0
  69. package/dist/lib/east-py-lint.js +22 -0
  70. package/dist/lib/east-py-lint.js.map +1 -0
  71. package/dist/lib/east-rules-context.d.ts +7 -0
  72. package/dist/lib/east-rules-context.d.ts.map +1 -0
  73. package/dist/lib/east-rules-context.js +91 -0
  74. package/dist/lib/east-rules-context.js.map +1 -0
  75. package/dist/lib/hook-io.d.ts +30 -0
  76. package/dist/lib/hook-io.d.ts.map +1 -0
  77. package/dist/lib/hook-io.js +29 -0
  78. package/dist/lib/hook-io.js.map +1 -0
  79. package/dist/lib/host.d.ts +3 -0
  80. package/dist/lib/host.d.ts.map +1 -0
  81. package/dist/lib/host.js +9 -0
  82. package/dist/lib/host.js.map +1 -0
  83. package/dist/lib/lsp-client.d.ts +34 -0
  84. package/dist/lib/lsp-client.d.ts.map +1 -0
  85. package/dist/lib/lsp-client.js +200 -0
  86. package/dist/lib/lsp-client.js.map +1 -0
  87. package/dist/lib/plugin-status.d.ts +9 -0
  88. package/dist/lib/plugin-status.d.ts.map +1 -0
  89. package/dist/lib/plugin-status.js +164 -0
  90. package/dist/lib/plugin-status.js.map +1 -0
  91. package/dist/lib/review.d.ts +16 -0
  92. package/dist/lib/review.d.ts.map +1 -0
  93. package/dist/lib/review.js +74 -0
  94. package/dist/lib/review.js.map +1 -0
  95. package/dist/lib/search-guidance.d.ts +44 -0
  96. package/dist/lib/search-guidance.d.ts.map +1 -0
  97. package/dist/lib/search-guidance.js +73 -0
  98. package/dist/lib/search-guidance.js.map +1 -0
  99. package/dist/lib/search-hooks.d.ts +75 -0
  100. package/dist/lib/search-hooks.d.ts.map +1 -0
  101. package/dist/lib/search-hooks.js +117 -0
  102. package/dist/lib/search-hooks.js.map +1 -0
  103. package/dist/lib/search.d.ts +108 -0
  104. package/dist/lib/search.d.ts.map +1 -0
  105. package/dist/lib/search.js +167 -0
  106. package/dist/lib/search.js.map +1 -0
  107. package/dist/lib/transcript.d.ts +29 -0
  108. package/dist/lib/transcript.d.ts.map +1 -0
  109. package/dist/lib/transcript.js +109 -0
  110. package/dist/lib/transcript.js.map +1 -0
  111. package/dist/mcp/example-tools.d.ts +26 -0
  112. package/dist/mcp/example-tools.d.ts.map +1 -0
  113. package/dist/mcp/example-tools.js +94 -0
  114. package/dist/mcp/example-tools.js.map +1 -0
  115. package/dist/mcp/server.d.ts +2 -0
  116. package/dist/mcp/server.d.ts.map +1 -0
  117. package/dist/mcp/server.js +51 -0
  118. package/dist/mcp/server.js.map +1 -0
  119. package/dist/scripts/examples-file.d.ts +38 -0
  120. package/dist/scripts/examples-file.d.ts.map +1 -0
  121. package/dist/scripts/examples-file.js +224 -0
  122. package/dist/scripts/examples-file.js.map +1 -0
  123. package/dist/scripts/generate-index.d.ts +127 -0
  124. package/dist/scripts/generate-index.d.ts.map +1 -0
  125. package/dist/scripts/generate-index.js +315 -0
  126. package/dist/scripts/generate-index.js.map +1 -0
  127. package/dist/status/report.d.ts +2 -0
  128. package/dist/status/report.d.ts.map +1 -0
  129. package/dist/status/report.js +9 -0
  130. package/dist/status/report.js.map +1 -0
  131. package/index.json +44929 -0
  132. package/package.json +66 -4
  133. package/scripts/render-python.py +67 -0
package/package.json CHANGED
@@ -1,6 +1,68 @@
1
1
  {
2
2
  "name": "@elaraai/east-plugin",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
6
- }
3
+ "version": "1.0.85",
4
+ "license": "AGPL-3.0-or-later",
5
+ "type": "module",
6
+ "description": "East's agent plugin runtime — the example index generator, the example search and its MCP tools, the search-first hooks and the Codex skill adapter — for a Claude Code or Codex plugin that builds on East's.",
7
+ "files": [
8
+ "dist/lib",
9
+ "dist/hooks",
10
+ "dist/daemon",
11
+ "dist/mcp",
12
+ "dist/status",
13
+ "dist/scripts",
14
+ "scripts/render-python.py",
15
+ "index.json",
16
+ "README.md",
17
+ "LICENSE.md"
18
+ ],
19
+ "bin": {
20
+ "east-plugin-generate-index": "./dist/scripts/generate-index.js"
21
+ },
22
+ "repository": {
23
+ "type": "git",
24
+ "url": "git+https://github.com/elaraai/east-workspace.git",
25
+ "directory": "libs/east-plugin"
26
+ },
27
+ "keywords": [
28
+ "east",
29
+ "elara",
30
+ "claude-code",
31
+ "codex",
32
+ "plugin",
33
+ "mcp"
34
+ ],
35
+ "author": "Elara AI Pty Ltd",
36
+ "engines": {
37
+ "node": ">=22.0.0"
38
+ },
39
+ "peerDependencies": {
40
+ "typescript": ">=5.0.0"
41
+ },
42
+ "dependencies": {
43
+ "@modelcontextprotocol/sdk": "^1.12.1",
44
+ "minisearch": "^7.1.2",
45
+ "zod": "^3.0.0",
46
+ "@elaraai/east": "1.0.85",
47
+ "@elaraai/east-diagnostics": "1.0.85"
48
+ },
49
+ "devDependencies": {
50
+ "@types/node": "^22.18.1",
51
+ "esbuild": "^0.27.3",
52
+ "typescript": "~5.9.2"
53
+ },
54
+ "exports": {
55
+ "./lib/*": "./dist/lib/*.js",
56
+ "./hooks/*": "./dist/hooks/*.js",
57
+ "./daemon/*": "./dist/daemon/*.js",
58
+ "./mcp/*": "./dist/mcp/*.js",
59
+ "./status/*": "./dist/status/*.js",
60
+ "./scripts/*": "./dist/scripts/*.js",
61
+ "./index.json": "./index.json"
62
+ },
63
+ "scripts": {
64
+ "build": "tsc",
65
+ "generate-index": "npm run build && node dist/scripts/generate-index.js --base-dir .. && uv run --project ../east-py python scripts/render-python.py index.json && node scripts/sync-assets.mjs",
66
+ "test": "npm run build && node --enable-source-maps --test dist/test/*.spec.js"
67
+ }
68
+ }
@@ -0,0 +1,67 @@
1
+ #
2
+ # Copyright (c) 2025 Elara AI Pty Ltd
3
+ # Dual-licensed under AGPL-3.0 and commercial license. See LICENSE for details.
4
+ #
5
+ """Fill the python renderings of the example index (#654).
6
+
7
+ ``generate-index`` stores every program example as its IR and the TypeScript
8
+ printed from it; the python printing is this script's — the same IR through
9
+ ``east.codegen.to_python_source``, exact by the round-trip contract. Run after
10
+ the generator, from an environment where ``east`` imports::
11
+
12
+ uv run --project ../east-py python scripts/render-python.py index.json
13
+
14
+ Every entry with an ``ir`` gets its ``python``; entries without one (UI,
15
+ hand-written stubs) are left alone. The file is rewritten in place.
16
+
17
+ A platform call prints as the implementing package's own function and a
18
+ struct or variant type the package names prints by that name (#667) — the
19
+ python reading of what the TypeScript rendering spells through the
20
+ library's handles — for every stock package this environment can import;
21
+ a package that does not import here (an optional dependency missing) is
22
+ skipped with a warning and its calls print as declarations.
23
+ """
24
+
25
+ from __future__ import annotations
26
+
27
+ import json
28
+ import sys
29
+ from pathlib import Path
30
+
31
+ from east.codegen import Providers, to_python_source
32
+ from east.serialization.json import decode_json_for
33
+ from east.types.type_of_type import IRType
34
+
35
+ #: The stock platform packages, in provider order.
36
+ STOCK_PACKAGES = ("east_py_std", "east_py_io", "east_py_datascience")
37
+
38
+
39
+ def main(argv: list[str]) -> int:
40
+ if len(argv) != 2:
41
+ print("usage: render-python.py <index.json>", file=sys.stderr)
42
+ return 2
43
+ path = Path(argv[1])
44
+ data = json.loads(path.read_text(encoding="utf-8"))
45
+ decode = decode_json_for(IRType)
46
+ providers = Providers()
47
+ for package in STOCK_PACKAGES:
48
+ try:
49
+ providers.add_module(package)
50
+ except Exception as e: # noqa: BLE001 — an optional dependency this environment lacks
51
+ print(f"[!] {package} does not import here ({e}); its calls print as declarations",
52
+ file=sys.stderr)
53
+ rendered = 0
54
+ for entry in data["entries"]:
55
+ ir = entry.get("ir")
56
+ if ir is None:
57
+ continue
58
+ name = entry["id"].rsplit(":", 1)[1]
59
+ entry["python"] = to_python_source(decode(ir.encode("utf-8")), name=name, providers=providers)
60
+ rendered += 1
61
+ path.write_text(json.dumps(data, indent=2, ensure_ascii=False) + "\n", encoding="utf-8")
62
+ print(f"[+] Rendered {rendered} example(s) as python in {path}", file=sys.stderr)
63
+ return 0
64
+
65
+
66
+ if __name__ == "__main__":
67
+ sys.exit(main(sys.argv))