eigen-skills 2.0.0 → 2.0.2

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/README.md CHANGED
@@ -139,6 +139,16 @@ mkdir -p .claude/skills/eigen
139
139
  curl -o .claude/skills/eigen/SKILL.md https://raw.githubusercontent.com/zeeshan8281/eigen-agent-skills/main/SKILL.md
140
140
  ```
141
141
 
142
+ ### As an MCP Server (Claude Desktop, Cursor, Windsurf, Claude Code)
143
+
144
+ Install the separate [`eigen-mcp`](https://www.npmjs.com/package/eigen-mcp) package for MCP support — all 21 tools, no SKILL.md files or curl needed:
145
+
146
+ ```bash
147
+ npm install -g eigen-mcp
148
+ ```
149
+
150
+ See the [eigen-mcp README](https://www.npmjs.com/package/eigen-mcp) for config examples for Claude Desktop, Cursor, Windsurf, and Claude Code.
151
+
142
152
  ### For Programmatic Use (JavaScript)
143
153
 
144
154
  ```javascript
package/SKILL.md CHANGED
@@ -14,7 +14,7 @@ Deploy apps to EigenCompute's Trusted Execution Environment (TEE) with one comma
14
14
 
15
15
  ## Setup
16
16
 
17
- **Requires:** `npm install -g @layr-labs/ecloud-cli` (minimum **v0.4.3** — older versions have broken attestation)
17
+ **Requires:** `npm install -g @layr-labs/ecloud-cli@latest` (minimum **v0.4.3** — older versions have broken attestation)
18
18
 
19
19
  ```bash
20
20
  ecloud auth login
@@ -0,0 +1,180 @@
1
+ # Eigen Skills & Eigen MCP — Code Walkthrough Script
2
+
3
+ ## Video Details
4
+ - **Target length**: ~10-12 minutes
5
+ - **Tone**: Developer-to-developer, casual but technically precise
6
+ - **Audience**: Devs interested in AI agent tooling, EigenLayer ecosystem
7
+
8
+ ---
9
+
10
+ ## FLOW (at a glance)
11
+
12
+ ```
13
+ 1. Hook & Context (~1 min)
14
+ 2. Project Overview (~1 min)
15
+ 3. Skills Deep Dive (~3 min)
16
+ 4. MCP Deep Dive (~2 min)
17
+ 5. Skills vs MCP — same data, two paths (~1 min)
18
+ 6. Live Demo (~3 min)
19
+ 7. Chat UI & Deployment (~1.5 min)
20
+ 8. Wrap-up (~30s)
21
+ ```
22
+
23
+ ---
24
+
25
+ ## SCRIPT
26
+
27
+ ### 1. Hook & Context (0:00 – 1:00)
28
+
29
+ > "What if any AI agent — Claude Code, Cursor, Windsurf — could query live EigenLayer data just by reading a markdown file?
30
+ >
31
+ > That's what we built. This is `eigen-skills` — an open-source package that gives AI agents the ability to query operators, AVS data, staker positions, rewards, delegation events, TEE compute, and data availability blobs — all from the EigenLayer ecosystem.
32
+ >
33
+ > There are two integration paths: **Agent Skills** for Claude Code and compatible agents, and **MCP** for Claude Desktop, Cursor, and Windsurf. Let me walk you through the code."
34
+
35
+ ---
36
+
37
+ ### 2. Project Overview (1:00 – 2:00)
38
+
39
+ **[SCREEN: terminal, run `ls` or show file tree]**
40
+
41
+ > "Here's the repo structure. At the top level:
42
+ >
43
+ > - `skills/` — six skill modules, one per EigenLayer domain
44
+ > - `eigen-mcp/` — a standalone MCP server package
45
+ > - `index.js` — exports all six API client classes
46
+ > - `server.js` — a chat UI powered by Gemini with tool-use
47
+ > - `Dockerfile` + `entrypoint.sh` — for deploying into EigenCompute TEE
48
+ >
49
+ > The key insight is that **skills and MCP share the same API client layer**. Let me show you."
50
+
51
+ **[SCREEN: open `index.js`]**
52
+
53
+ > "Six classes. `EigenAPI`, `AVSAPI`, `RewardsAPI`, `DelegationAPI`, `EigenCompute`, `EigenDA`. Every integration path — skills, MCP, chat UI — uses these same clients underneath."
54
+
55
+ ---
56
+
57
+ ### 3. Skills Deep Dive (2:00 – 5:00)
58
+
59
+ **[SCREEN: open `skills/` directory]**
60
+
61
+ > "Each skill follows the same pattern: a `SKILL.md` file and a `scripts/` folder with the JS client."
62
+
63
+ **[SCREEN: open `skills/eigen-restaking/SKILL.md`]**
64
+
65
+ > "This is the magic. The `SKILL.md` is a markdown file that an agent reads to understand what it can do. It has:
66
+ >
67
+ > - A description of the skill's purpose
68
+ > - The base URL and auth headers
69
+ > - Complete curl examples for every endpoint
70
+ >
71
+ > When a user asks Claude Code something like 'show me the top EigenLayer operators by TVL', Claude reads this file, picks the right curl command, runs it, and formats the response. No SDK, no dependencies — just curl."
72
+
73
+ **[SCREEN: open `skills/eigen-avs/SKILL.md` briefly]**
74
+
75
+ > "Same pattern for AVS data — services, their operators, their stakers."
76
+
77
+ **[SCREEN: open `skills/eigen-rewards/SKILL.md` briefly]**
78
+
79
+ > "Rewards and APY rankings..."
80
+
81
+ **[SCREEN: open one API client, e.g. `skills/eigen-restaking/scripts/eigen-api.js`]**
82
+
83
+ > "And if you want to use these programmatically in your own Node app, each skill also has a JS client. Standard axios wrapper — constructor takes an API key, methods map to endpoints. Nothing fancy, deliberately simple."
84
+
85
+ **[SCREEN: open `scripts/postinstall.js`]**
86
+
87
+ > "One nice DX touch — when you `npm install eigen-skills`, the postinstall hook copies the unified `SKILL.md` into `~/.claude/skills/eigen/`. Claude Code auto-discovers skills in that directory, so installation is literally one command and you're done."
88
+
89
+ ---
90
+
91
+ ### 4. MCP Deep Dive (5:00 – 7:00)
92
+
93
+ **[SCREEN: open `eigen-mcp/` directory]**
94
+
95
+ > "Now the second integration path — MCP, the Model Context Protocol.
96
+ >
97
+ > MCP is a standard from Anthropic for exposing tools to AI agents over a structured RPC interface. Instead of the agent reading markdown and running curl, the agent calls named tools with typed parameters and gets structured JSON back."
98
+
99
+ **[SCREEN: open `eigen-mcp/mcp.js`]**
100
+
101
+ > "Here's the server. It imports the same six API clients from `eigen-skills`, then registers 21 tools.
102
+ >
103
+ > Each tool has a name, description, and a Zod schema for parameter validation. When Claude Desktop or Cursor calls `get_operators`, the MCP server runs `eigenAPI.getOperators()` and returns the result.
104
+ >
105
+ > Look — the tool implementations are just thin wrappers around the same API clients the skills use. Same data, different delivery mechanism."
106
+
107
+ **[SCREEN: show the tool registration pattern — pick `get_metrics` and `get_operators`]**
108
+
109
+ > "Simple example: `get_metrics` takes no parameters, calls `eigenAPI.getMetrics()`, returns JSON. `get_operators` takes optional skip, take, and search parameters with Zod validation."
110
+
111
+ **[SCREEN: open `eigen-mcp/README.md` — show config snippets]**
112
+
113
+ > "To use it, you register it with your client. For Claude Desktop, add it to `claude_desktop_config.json`. For Cursor or Windsurf, similar JSON config. One line: `npx eigen-mcp`."
114
+
115
+ ---
116
+
117
+ ### 5. Skills vs MCP — Same Data, Two Paths (7:00 – 8:00)
118
+
119
+ **[SCREEN: side-by-side or diagram]**
120
+
121
+ > "So why two paths?
122
+ >
123
+ > **Skills** are the agent-native approach. The agent reads a markdown file, understands the API surface, and runs curl commands. No server process, no extra dependencies. Works great with Claude Code and any agent that supports the skills spec.
124
+ >
125
+ > **MCP** is the protocol-native approach. A server process exposes typed tools over stdio. Better for IDE integrations like Cursor and Windsurf where you want structured tool calling.
126
+ >
127
+ > Both hit the same EigenExplorer API. Both return the same data. It's about meeting agents where they are."
128
+
129
+ ---
130
+
131
+ ### 6. Live Demo (8:00 – 11:00)
132
+
133
+ **[SCREEN: terminal with Claude Code open]**
134
+
135
+ > "Let me show you this working. I've got Claude Code open with eigen-skills installed."
136
+
137
+ **Demo queries (pick 3-4):**
138
+
139
+ 1. **"What's the current EigenLayer TVL?"** — hits `get_metrics`, shows ecosystem stats
140
+ 2. **"Show me the top 5 operators by TVL"** — hits `get_operators`, tabular output
141
+ 3. **"What AVS has the most operators?"** — hits `get_avs_list`, cross-references data
142
+ 4. **"Show me the highest APY strategies"** — hits rewards skill, shows yield data
143
+
144
+ > *(narrate what Claude is doing as it runs — "it's reading the skill file... picking the right endpoint... running the curl... formatting the response")*
145
+
146
+ **[Optional: show the MCP path too in Claude Desktop or Cursor if set up]**
147
+
148
+ ---
149
+
150
+ ### 7. Chat UI & TEE Deployment (11:00 – 12:30)
151
+
152
+ **[SCREEN: open `server.js` briefly]**
153
+
154
+ > "Bonus — there's also a web chat UI. Express server, Socket.io for real-time chat, Gemini as the LLM via OpenRouter. It has the same 21 tools defined inline. You can ask EigenLayer questions in a browser."
155
+
156
+ **[SCREEN: open `ui/index.html` or show the running UI briefly]**
157
+
158
+ **[SCREEN: open `Dockerfile` and `entrypoint.sh`]**
159
+
160
+ > "And the whole thing can be deployed into EigenCompute — Intel TDX trusted execution environments. The entrypoint script sources sealed secrets from the TEE, writes the env file, and starts the server. Your API keys never leave the enclave."
161
+
162
+ ---
163
+
164
+ ### 8. Wrap-up (12:30 – 13:00)
165
+
166
+ > "That's eigen-skills. Six EigenLayer domains, two integration paths, same underlying clients.
167
+ >
168
+ > `npm install eigen-skills` for Claude Code. `npx eigen-mcp` for Claude Desktop and Cursor. Or use the JS clients directly in your own app.
169
+ >
170
+ > Links in the description. Star the repo, open issues, PRs welcome."
171
+
172
+ ---
173
+
174
+ ## Production Notes
175
+
176
+ - **Screen recordings**: Use a clean terminal theme, large font (16-18pt)
177
+ - **Code highlights**: When showing files, zoom into the relevant section — don't scroll through entire files
178
+ - **Transitions**: Cut between terminal and editor, avoid long pauses
179
+ - **B-roll ideas**: EigenExplorer website, EigenLayer docs, Claude Code in action
180
+ - **Thumbnail**: Terminal with EigenLayer logo + "AI Agent Skills" text
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "eigen-skills",
3
- "version": "2.0.0",
3
+ "version": "2.0.2",
4
4
  "description": "Deploy and manage apps on EigenCompute TEE — trusted execution environments with hardware-level isolation, encrypted secrets, and attestation",
5
5
  "main": "index.js",
6
6
  "agents": {
@@ -15,7 +15,7 @@ Deploy, manage, and attest applications running inside EigenCompute TEE (Trusted
15
15
  ## Prerequisites
16
16
 
17
17
  ```bash
18
- npm install -g @layr-labs/ecloud-cli # minimum v0.4.3
18
+ npm install -g @layr-labs/ecloud-cli@latest # minimum v0.4.3
19
19
  ecloud auth login
20
20
  ecloud auth whoami
21
21
  ```