@elaraai/e3-cloud-claude-plugin 0.0.0-stage → 1.0.90
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.
- package/.build/hooks/pre-read.js +149 -0
- package/.build/hooks/pre-write.js +196 -0
- package/.build/mcp/server.js +23610 -0
- package/.claude-plugin/plugin.json +20 -0
- package/.mcp.json +8 -0
- package/LICENSE.md +682 -0
- package/README.md +88 -2
- package/hooks/hooks.json +27 -0
- package/index.json +749 -0
- package/package.json +30 -4
- package/skills/e3-cloud-cli/SKILL.md +125 -0
- package/skills/e3-cloud-client/SKILL.md +76 -0
- package/skills/e3-cloud-ui/SKILL.md +108 -0
package/README.md
CHANGED
|
@@ -1,3 +1,89 @@
|
|
|
1
|
-
#
|
|
1
|
+
# e3 cloud plugin for Claude Code
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
A Claude Code plugin for building apps on e3 cloud with `@elaraai/e3-cloud-ui`,
|
|
4
|
+
running deployments with the `e3-cloud` CLI, and driving them from code with
|
|
5
|
+
`@elaraai/e3-cloud-client`. It follows East's plugin, and is installed beside
|
|
6
|
+
it: East's plugin covers East, e3 and e3-ui, which an app's pages are written
|
|
7
|
+
in.
|
|
8
|
+
|
|
9
|
+
The plugin is the npm package `@elaraai/e3-cloud-claude-plugin`: its bundles,
|
|
10
|
+
skills and example index, with no dependency. Installing it needs no build.
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
Requires Node.js 22+ on `PATH`. The public catalog
|
|
15
|
+
[elaraai/plugins](https://github.com/elaraai/plugins) is a Claude Code
|
|
16
|
+
marketplace, named `elaraai`, that lists the plugin at the version each release
|
|
17
|
+
publishes.
|
|
18
|
+
|
|
19
|
+
Inside Claude Code:
|
|
20
|
+
```text
|
|
21
|
+
/plugin marketplace add elaraai/plugins
|
|
22
|
+
/plugin install e3-cloud@elaraai
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
From a terminal:
|
|
26
|
+
```bash
|
|
27
|
+
claude plugin marketplace add elaraai/plugins
|
|
28
|
+
claude plugin install e3-cloud@elaraai
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
The catalog declares the plugin's dependency on East's, so `east@elaraai` is
|
|
32
|
+
installed with it. Start a new session. A new release reaches you with
|
|
33
|
+
`claude plugin update e3-cloud@elaraai` (or `/plugin marketplace update
|
|
34
|
+
elaraai`), or without asking once auto-update is on for the marketplace under
|
|
35
|
+
**Marketplaces** in `/plugin`. Pre-releases are the catalog's `beta` branch
|
|
36
|
+
(`elaraai/plugins#beta`, named `elaraai-beta`).
|
|
37
|
+
|
|
38
|
+
## Skills
|
|
39
|
+
|
|
40
|
+
| Skill | Package | Description |
|
|
41
|
+
|-------|---------|-------------|
|
|
42
|
+
| `e3-cloud-ui` | `@elaraai/e3-cloud-ui` | Apps: `Page` (a thunk body), `Page.task`, `Menu`, `App`, `PageLink`, `Nav`, the build and its refusals, the checks, the East types |
|
|
43
|
+
| `e3-cloud-cli` | `@elaraai/e3-cloud-cli` | The CLI: sign-in, users and roles, secrets, schedules, task configs, records, feedback, apps, releases, history and rollback |
|
|
44
|
+
| `e3-cloud-client` | `@elaraai/e3-cloud-client` | Driving a deployment from code |
|
|
45
|
+
|
|
46
|
+
## Example search
|
|
47
|
+
|
|
48
|
+
The plugin's MCP server (`e3-cloud`) serves e3 cloud's example index:
|
|
49
|
+
|
|
50
|
+
- **`search_e3_cloud_examples(query, language, format, limit, package)`**:
|
|
51
|
+
summaries by default (id, description, keywords), `format: "full"` for the
|
|
52
|
+
code.
|
|
53
|
+
- **`get_e3_cloud_example(id, language)`**: one example in full.
|
|
54
|
+
|
|
55
|
+
It holds `@elaraai/e3-cloud-ui`'s page bodies, and hand-written entries for
|
|
56
|
+
`App`, `Page.task`, `buildApp` and `checkApp`, every CLI command, and the
|
|
57
|
+
client's calls. The `PreToolUse(Edit|Write)` hook is the gate: the first write
|
|
58
|
+
of code importing `@elaraai/e3-cloud-ui` or `@elaraai/e3-cloud-client` in a
|
|
59
|
+
session with no search on record (of e3 cloud's index or East's) is told to
|
|
60
|
+
search first; `E3_CLOUD_REQUIRE_SEARCH=deny` makes it a refusal. A `Read`,
|
|
61
|
+
`Grep` or `Glob` of `node_modules/@elaraai/e3-cloud-{ui,cli,client}` is
|
|
62
|
+
reminded that the index is the same code, cheaper.
|
|
63
|
+
|
|
64
|
+
## Version
|
|
65
|
+
|
|
66
|
+
The @elaraai lockstep, as every e3 cloud package's: the release of e3 cloud's
|
|
67
|
+
packages is the release of this plugin.
|
|
68
|
+
|
|
69
|
+
## Developing it
|
|
70
|
+
|
|
71
|
+
In e3 cloud's repository, `pnpm run plugins` (or `make plugins`) bundles the
|
|
72
|
+
plugin and assembles it, as npm publishes it, under
|
|
73
|
+
`packages/e3-cloud-plugin/marketplace/`: a local marketplace named
|
|
74
|
+
`elaraai-e3-cloud`. Uninstall the catalog's `e3-cloud@elaraai` first, since
|
|
75
|
+
both are named `e3-cloud`, then:
|
|
76
|
+
|
|
77
|
+
```bash
|
|
78
|
+
claude plugin marketplace add <checkout>/packages/e3-cloud-plugin/marketplace
|
|
79
|
+
claude plugin install e3-cloud@elaraai-e3-cloud
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
After a rebuild, `claude plugin marketplace update elaraai-e3-cloud` and a new
|
|
83
|
+
session take it up. The shared package's README
|
|
84
|
+
(`packages/e3-cloud-plugin/README.md`) says how to change it.
|
|
85
|
+
|
|
86
|
+
## License
|
|
87
|
+
|
|
88
|
+
Dual-licensed under AGPL-3.0 and a commercial license. See
|
|
89
|
+
[LICENSE.md](LICENSE.md).
|
package/hooks/hooks.json
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
{
|
|
2
|
+
"description": "e3 cloud plugin hooks: the search-before-coding gate for code using @elaraai/e3-cloud-ui or @elaraai/e3-cloud-client, and a reminder on reading their installed packages",
|
|
3
|
+
"hooks": {
|
|
4
|
+
"PreToolUse": [
|
|
5
|
+
{
|
|
6
|
+
"matcher": "Edit|Write",
|
|
7
|
+
"hooks": [
|
|
8
|
+
{
|
|
9
|
+
"type": "command",
|
|
10
|
+
"command": "node \"${CLAUDE_PLUGIN_ROOT}/.build/hooks/pre-write.js\"",
|
|
11
|
+
"timeout": 3
|
|
12
|
+
}
|
|
13
|
+
]
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"matcher": "Read|Grep|Glob",
|
|
17
|
+
"hooks": [
|
|
18
|
+
{
|
|
19
|
+
"type": "command",
|
|
20
|
+
"command": "node \"${CLAUDE_PLUGIN_ROOT}/.build/hooks/pre-read.js\"",
|
|
21
|
+
"timeout": 3
|
|
22
|
+
}
|
|
23
|
+
]
|
|
24
|
+
}
|
|
25
|
+
]
|
|
26
|
+
}
|
|
27
|
+
}
|